Dukascopy
 
 
Wiki JStore Search Login

Attention! Read the forum rules carefully before posting a topic.

    Try to find an answer in Wiki before asking a question.
    Submit programming questions in this forum only.
    Off topics are strictly forbidden.

Any topics which do not satisfy these rules will be deleted.

Backtesting Issues With getFXSentimentIndex
 Post subject: Backtesting Issues With getFXSentimentIndex Post rating: 0   Post Posted: Fri 23 Nov, 2012, 02:48 

User rating: 3
Joined: Thu 17 Nov, 2011, 04:06
Posts: 39
Location: Canada, Ottawa
With the following code, I am trying to detect the magnitude of changes in the sentiment of the primary and secondary currencies within a pair. The following code, in backtesting (on the four hour time frame) does not demonstrate any change in any sentiment.

Quote:
public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException {
// Filtering Non-Trading Periods
if (!period.equals(Period.FOUR_HOURS)) {
return;
}

// Collecting Previous Bar Data
prevAskBar = history.getBar(instrument, period, OfferSide.ASK, 1);
prevBidBar = history.getBar(instrument, period, OfferSide.BID, 1);

// Calculating Sentiment
primarySentimentChange = dataService.getFXSentimentIndex(instrument.getPrimaryCurrency(), askBar.getTime()).getIndexValue() - dataService.getFXSentimentIndex(instrument.getPrimaryCurrency(), prevAskBar.getTime()).getIndexValue();
console.getOut().println(instrument.name()+" Primary Sentiment Change: "+primarySentimentChange);
secondarySentimentChange = dataService.getFXSentimentIndex(instrument.getSecondaryCurrency(), askBar.getTime()).getIndexValue() - dataService.getFXSentimentIndex(instrument.getSecondaryCurrency(), prevAskBar.getTime()).getIndexValue();
console.getOut().println(instrument.name()+" Secondary Sentiment Change: "+secondarySentimentChange);
}


Output:
Quote:
EURUSD Secondary Sentiment Change: 0.0
EURUSD Primary Sentiment Change: 0.0
USDJPY Secondary Sentiment Change: 0.0
USDJPY Primary Sentiment Change: 0.0


I know that the index updates only every half hour, so I was careful to test differences over a longer period... but I cannot justify why this does not show any changes at all in sentiment over time.

Please advise if there is a bug with the tester or whether it is with my code.

Thank you,

Brad


 
 Post subject: Re: Backtesting Issues With getFXSentimentIndex Post rating: 0   Post Posted: Fri 23 Nov, 2012, 08:34 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
IHistory.getBar with shift=1 yields the same bar as the one you receive in IStrategy.onBar. You can check this simply by adding prevAskBar.toString() and askBar.toString() to your print statement.


 
 Post subject: Re: Backtesting Issues With getFXSentimentIndex Post rating: 0   Post Posted: Fri 23 Nov, 2012, 12:54 

User rating: 3
Joined: Thu 17 Nov, 2011, 04:06
Posts: 39
Location: Canada, Ottawa
This is indeed correct. I have been making a fundamental error in my coding. In the same code, if I were to add an indicator with a shift of 1, would it show me the most current completed bar?


 
 Post subject: Re: Backtesting Issues With getFXSentimentIndex Post rating: 0   Post Posted: Fri 23 Nov, 2012, 13:01 

User rating: 3
Joined: Thu 17 Nov, 2011, 04:06
Posts: 39
Location: Canada, Ottawa
Also, is it normal for the above listed code to (in some cases, not all) produce a NullPointerException during backtesting?

Quote:
primarySentimentChange = dataService.getFXSentimentIndex(instrument.getPrimaryCurrency(), askBar.getTime()).getIndexValue() - dataService.getFXSentimentIndex(instrument.getPrimaryCurrency(), prevAskBar.getTime()).getIndexValue();


 
 Post subject: Re: Backtesting Issues With getFXSentimentIndex Post rating: 0   Post Posted: Fri 23 Nov, 2012, 13:47 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
Please provide both a full example strategy and a precise launch case.


 
 Post subject: Re: Backtesting Issues With getFXSentimentIndex Post rating: 0   Post Posted: Sat 24 Nov, 2012, 00:24 

User rating: 3
Joined: Thu 17 Nov, 2011, 04:06
Posts: 39
Location: Canada, Ottawa
A strategy demonstrating the error is attached.

Attachment:
ErrorDemo.java [2.65 KiB]
Downloaded 359 times


Testing under the 4 hour time frame, with the EUR/USD for the last month, I received the following output:

23:21:35 EURUSD Secondary Sentiment Change: 0.0
23:21:35 EURUSD Primary Sentiment Change: 0.09000000000000341
23:21:33 EURUSD Secondary Sentiment Change: 0.2600000000000051
23:21:33 EURUSD Primary Sentiment Change: -0.1600000000000037
23:21:32 EURUSD Secondary Sentiment Change: 1.4199999999999946
23:21:32 EURUSD Primary Sentiment Change: -0.4799999999999969
23:21:31 EURUSD Secondary Sentiment Change: -0.259999999999998
23:21:31 EURUSD Primary Sentiment Change: 0.35999999999999943
23:21:27 EURUSD Secondary Sentiment Change: -0.17999999999999972
23:21:26 EURUSD Primary Sentiment Change: 0.13000000000000256
23:21:25 EURUSD Secondary Sentiment Change: -0.0799999999999983
23:21:25 EURUSD Primary Sentiment Change: 0.1699999999999946
23:21:23 EURUSD Secondary Sentiment Change: 0.030000000000001137
23:21:23 EURUSD Primary Sentiment Change: -0.6899999999999977
23:21:21 EURUSD Secondary Sentiment Change: 0.17999999999999972
23:21:21 EURUSD Primary Sentiment Change: 1.2700000000000031
23:21:20 EURUSD Secondary Sentiment Change: -0.14000000000000057
23:21:20 EURUSD Primary Sentiment Change: -0.3400000000000034
23:21:18 EURUSD Secondary Sentiment Change: -0.490000000000002
23:21:18 EURUSD Primary Sentiment Change: 0.4200000000000017
23:21:16 EURUSD Secondary Sentiment Change: 0.07000000000000028
23:21:15 EURUSD Primary Sentiment Change: 0.14999999999999858
23:21:14 EURUSD Secondary Sentiment Change: -0.7999999999999972
23:21:13 EURUSD Primary Sentiment Change: 0.4200000000000017
23:21:12 EURUSD Secondary Sentiment Change: 0.23999999999999488
23:21:12 EURUSD Primary Sentiment Change: -0.10000000000000142
23:21:11 EURUSD Secondary Sentiment Change: 0.05000000000000426
23:21:11 EURUSD Primary Sentiment Change: 0.020000000000003126
23:21:11 EURUSD Secondary Sentiment Change: -0.2600000000000051
23:21:10 EURUSD Primary Sentiment Change: 0.28999999999999915
23:21:10 EURUSD Secondary Sentiment Change: -0.03999999999999915
23:21:09 EURUSD Primary Sentiment Change: 0.35999999999999943
23:21:09 EURUSD Secondary Sentiment Change: -0.21000000000000085
23:21:08 EURUSD Primary Sentiment Change: 0.21000000000000085
23:21:08 EURUSD Secondary Sentiment Change: 0.23000000000000398
23:21:08 EURUSD Primary Sentiment Change: -0.07000000000000028
23:21:07 EURUSD Secondary Sentiment Change: 0.0
23:21:07 EURUSD Primary Sentiment Change: 0.0
23:21:06 EURUSD Secondary Sentiment Change: 0.0
23:21:06 EURUSD Primary Sentiment Change: 0.0
23:21:05 EURUSD Secondary Sentiment Change: 0.0
23:21:05 EURUSD Primary Sentiment Change: 0.0
23:21:05 EURUSD Secondary Sentiment Change: 0.0
23:21:04 EURUSD Primary Sentiment Change: 0.0
23:21:04 EURUSD Secondary Sentiment Change: 0.0
23:21:04 EURUSD Primary Sentiment Change: 0.0
23:21:03 EURUSD Secondary Sentiment Change: 0.0
23:21:03 EURUSD Primary Sentiment Change: 0.0
23:21:03 EURUSD Secondary Sentiment Change: 0.0
23:21:02 EURUSD Primary Sentiment Change: 0.0
23:21:02 EURUSD Secondary Sentiment Change: 0.0
23:21:02 EURUSD Primary Sentiment Change: 0.0
23:21:01 EURUSD Secondary Sentiment Change: 0.0
23:21:01 EURUSD Primary Sentiment Change: 0.0
23:21:00 EURUSD Secondary Sentiment Change: 0.0
23:21:00 EURUSD Primary Sentiment Change: 0.0
23:21:00 EURUSD Secondary Sentiment Change: 0.0
23:20:59 EURUSD Primary Sentiment Change: 0.0
23:20:59 EURUSD Secondary Sentiment Change: -0.03999999999999915
23:20:59 EURUSD Primary Sentiment Change: 0.030000000000001137
23:20:58 EURUSD Secondary Sentiment Change: -0.10999999999999943
23:20:58 EURUSD Primary Sentiment Change: -0.23000000000000398
23:20:41 EURUSD Secondary Sentiment Change: -0.14000000000000057
23:20:40 EURUSD Primary Sentiment Change: -0.030000000000001137
23:20:40 EURUSD Secondary Sentiment Change: -0.37000000000000455
23:20:39 EURUSD Primary Sentiment Change: 0.3999999999999986
23:20:36 EURUSD Secondary Sentiment Change: -0.01999999999999602
23:20:36 EURUSD Primary Sentiment Change: 0.010000000000005116
23:20:34 EURUSD Secondary Sentiment Change: 0.04999999999999716
23:20:34 EURUSD Primary Sentiment Change: -0.060000000000002274
23:20:33 EURUSD Secondary Sentiment Change: -0.3200000000000003
23:20:32 EURUSD Primary Sentiment Change: 0.36999999999999744
23:20:31 EURUSD Secondary Sentiment Change: -0.30999999999999517
23:20:30 EURUSD Primary Sentiment Change: -0.04999999999999716
23:20:28 EURUSD Secondary Sentiment Change: 0.6099999999999994
23:20:28 EURUSD Primary Sentiment Change: -0.03999999999999915
23:20:25 EURUSD Secondary Sentiment Change: 0.28999999999999915
23:20:25 EURUSD Primary Sentiment Change: 0.03999999999999915
23:20:23 EURUSD Secondary Sentiment Change: -0.2600000000000051
23:20:23 EURUSD Primary Sentiment Change: -0.3299999999999983
23:20:22 EURUSD Secondary Sentiment Change: 0.0
23:20:22 EURUSD Primary Sentiment Change: 0.030000000000001137
23:20:21 EURUSD Secondary Sentiment Change: -0.23999999999999488
23:20:21 EURUSD Primary Sentiment Change: -0.060000000000002274
23:20:20 EURUSD Secondary Sentiment Change: 0.05999999999999517
23:20:20 EURUSD Primary Sentiment Change: 0.10000000000000142
23:20:19 EURUSD Secondary Sentiment Change: 0.1600000000000037
23:20:19 EURUSD Primary Sentiment Change: 0.19999999999999574
23:20:14 EURUSD Secondary Sentiment Change: -0.9299999999999997
23:20:14 EURUSD Primary Sentiment Change: 0.3300000000000054
23:20:11 EURUSD Secondary Sentiment Change: 0.00999999999999801
23:20:11 EURUSD Primary Sentiment Change: 0.25
23:20:09 EURUSD Secondary Sentiment Change: -0.10000000000000142
23:20:09 EURUSD Primary Sentiment Change: 0.1599999999999966
23:20:09 EURUSD Secondary Sentiment Change: -0.3200000000000003
23:20:08 EURUSD Primary Sentiment Change: -0.25
23:20:06 EURUSD Secondary Sentiment Change: -0.04999999999999716
23:20:06 EURUSD Primary Sentiment Change: -0.21000000000000085
23:20:04 EURUSD Secondary Sentiment Change: 0.03999999999999915
23:20:03 EURUSD Primary Sentiment Change: 0.12000000000000455
23:20:02 EURUSD Secondary Sentiment Change: -0.21000000000000085
23:20:02 EURUSD Primary Sentiment Change: -0.09000000000000341
23:20:01 EURUSD Secondary Sentiment Change: -0.14000000000000057
23:20:00 EURUSD Primary Sentiment Change: 0.17999999999999972
23:20:00 EURUSD Secondary Sentiment Change: -0.05999999999999517
23:19:59 EURUSD Primary Sentiment Change: 0.04999999999999716
23:19:59 EURUSD Secondary Sentiment Change: -0.23000000000000398
23:19:58 EURUSD Primary Sentiment Change: -0.8199999999999932
23:19:55 EURUSD Secondary Sentiment Change: -0.00999999999999801
23:19:55 EURUSD Primary Sentiment Change: -0.04000000000000625
23:19:54 EURUSD Secondary Sentiment Change: -0.28000000000000114
23:19:54 EURUSD Primary Sentiment Change: 0.13000000000000256
23:19:51 EURUSD Secondary Sentiment Change: 1.1199999999999974
23:19:51 EURUSD Primary Sentiment Change: -1.1899999999999977
23:19:50 EURUSD Secondary Sentiment Change: -0.519999999999996
23:19:50 EURUSD Primary Sentiment Change: 0.19999999999999574
23:19:49 EURUSD Secondary Sentiment Change: 0.030000000000001137
23:19:49 EURUSD Primary Sentiment Change: 0.0
23:19:48 EURUSD Secondary Sentiment Change: -0.030000000000001137
23:19:48 EURUSD Primary Sentiment Change: -0.04999999999999716
23:19:47 EURUSD Secondary Sentiment Change: 0.0
23:19:47 EURUSD Primary Sentiment Change: 0.0
23:19:47 EURUSD Secondary Sentiment Change: 0.0
23:19:46 EURUSD Primary Sentiment Change: 0.0
23:19:46 EURUSD Secondary Sentiment Change: 0.0
23:19:46 EURUSD Primary Sentiment Change: 0.0
23:19:45 EURUSD Secondary Sentiment Change: 0.0
23:19:45 EURUSD Primary Sentiment Change: 0.0
23:19:45 EURUSD Secondary Sentiment Change: 0.0
23:19:44 EURUSD Primary Sentiment Change: 0.0
23:19:44 EURUSD Secondary Sentiment Change: 0.0
23:19:43 EURUSD Primary Sentiment Change: 0.0
23:19:43 EURUSD Secondary Sentiment Change: 0.0
23:19:43 EURUSD Primary Sentiment Change: 0.0
23:19:42 EURUSD Secondary Sentiment Change: 0.0
23:19:42 EURUSD Primary Sentiment Change: 0.0
23:19:42 EURUSD Secondary Sentiment Change: 0.0
23:19:41 EURUSD Primary Sentiment Change: 0.0
[color=#FF0000]23:19:40 Strategy tester: java.lang.NullPointerException @ jforex.ErrorDemo.onBar(ErrorDemo.java:65)
23:19:40 Strategy tester: java.lang.NullPointerException @ jforex.ErrorDemo.onBar(ErrorDemo.java:65)[/color]
23:19:39 EURUSD Secondary Sentiment Change: -0.39000000000000057
23:19:39 EURUSD Primary Sentiment Change: -0.03999999999999915
23:19:39 EURUSD Secondary Sentiment Change: -0.1600000000000037
23:19:38 EURUSD Primary Sentiment Change: -0.44000000000000483
23:19:16 EURUSD Secondary Sentiment Change: -0.35999999999999943
23:19:16 EURUSD Primary Sentiment Change: 0.8400000000000034
23:19:12 EURUSD Secondary Sentiment Change: -0.17999999999999972
23:19:12 EURUSD Primary Sentiment Change: 0.3100000000000023
23:19:10 EURUSD Secondary Sentiment Change: -0.25
23:19:10 EURUSD Primary Sentiment Change: -0.0800000000000054
23:19:09 EURUSD Secondary Sentiment Change: -0.030000000000001137
23:19:09 EURUSD Primary Sentiment Change: 0.010000000000005116
23:19:07 EURUSD Secondary Sentiment Change: 0.010000000000005116
23:19:07 EURUSD Primary Sentiment Change: -0.010000000000005116
23:19:05 EURUSD Secondary Sentiment Change: -0.3400000000000034
23:19:05 EURUSD Primary Sentiment Change: 0.1600000000000037
23:19:05 EURUSD Secondary Sentiment Change: 0.10000000000000142
23:19:04 EURUSD Primary Sentiment Change: 0.03999999999999915
23:19:02 EURUSD Secondary Sentiment Change: -0.4200000000000017
23:19:02 EURUSD Primary Sentiment Change: 0.240000000000002
23:19:01 EURUSD Secondary Sentiment Change: 0.0
23:19:00 EURUSD Primary Sentiment Change: 0.05999999999999517
23:19:00 EURUSD Secondary Sentiment Change: -0.01999999999999602
23:18:59 EURUSD Primary Sentiment Change: 0.0
23:18:56 EURUSD Secondary Sentiment Change: -0.09000000000000341
23:18:56 EURUSD Primary Sentiment Change: -0.18999999999999773
23:18:54 EURUSD Secondary Sentiment Change: -0.04999999999999716
23:18:53 EURUSD Primary Sentiment Change: 0.09000000000000341
23:18:53 EURUSD Secondary Sentiment Change: 0.12999999999999545
23:18:52 EURUSD Primary Sentiment Change: -0.2700000000000031
23:18:52 EURUSD Secondary Sentiment Change: 1.3900000000000006
23:18:51 EURUSD Primary Sentiment Change: -0.21999999999999886
23:18:50 EURUSD Secondary Sentiment Change: 0.05000000000000426
23:18:50 EURUSD Primary Sentiment Change: -0.060000000000002274
23:18:49 EURUSD Secondary Sentiment Change: 0.30999999999999517
23:18:49 EURUSD Primary Sentiment Change: 0.030000000000001137
23:18:48 EURUSD Secondary Sentiment Change: 0.36000000000000654
23:18:48 EURUSD Primary Sentiment Change: -0.259999999999998
23:18:38 EURUSD Secondary Sentiment Change: 0.05999999999999517
23:18:38 EURUSD Primary Sentiment Change: 0.0899999999999963
23:18:34 EURUSD Secondary Sentiment Change: -0.17999999999999972
23:18:34 EURUSD Primary Sentiment Change: 0.07000000000000028
23:18:30 EURUSD Secondary Sentiment Change: 0.5399999999999991
23:18:30 EURUSD Primary Sentiment Change: -0.6899999999999977
23:18:26 EURUSD Secondary Sentiment Change: -0.7800000000000011
23:18:26 EURUSD Primary Sentiment Change: 1.0
23:18:24 EURUSD Secondary Sentiment Change: -0.05999999999999517
23:18:23 EURUSD Primary Sentiment Change: 0.04999999999999716
23:18:19 EURUSD Secondary Sentiment Change: -0.2600000000000051
23:18:18 EURUSD Primary Sentiment Change: -0.3499999999999943
23:18:15 EURUSD Secondary Sentiment Change: 0.05000000000000426
23:18:14 EURUSD Primary Sentiment Change: -0.10000000000000142
23:18:14 EURUSD Secondary Sentiment Change: 0.259999999999998
23:18:14 EURUSD Primary Sentiment Change: -0.020000000000003126
23:18:10 EURUSD Secondary Sentiment Change: 0.03999999999999915
23:18:09 EURUSD Primary Sentiment Change: 0.10999999999999943
23:18:06 EURUSD Secondary Sentiment Change: 0.07000000000000028
23:18:06 EURUSD Primary Sentiment Change: -0.1599999999999966
23:18:06 EURUSD Secondary Sentiment Change: -0.18999999999999773
23:18:05 EURUSD Primary Sentiment Change: 0.3500000000000014
23:18:05 EURUSD Secondary Sentiment Change: 0.04999999999999716
23:18:04 EURUSD Primary Sentiment Change: -0.060000000000002274
23:18:04 EURUSD Secondary Sentiment Change: 0.0
23:18:03 EURUSD Primary Sentiment Change: 0.0
23:18:03 EURUSD Secondary Sentiment Change: 0.0
23:18:03 EURUSD Primary Sentiment Change: 0.0
23:18:02 EURUSD Secondary Sentiment Change: 0.0
23:18:02 EURUSD Primary Sentiment Change: 0.0
23:18:01 EURUSD Secondary Sentiment Change: 0.0
23:18:01 EURUSD Primary Sentiment Change: 0.0
23:18:01 EURUSD Secondary Sentiment Change: 0.0
23:18:00 EURUSD Primary Sentiment Change: 0.0
23:18:00 EURUSD Secondary Sentiment Change: 0.0
23:18:00 EURUSD Primary Sentiment Change: 0.0
23:17:59 EURUSD Secondary Sentiment Change: 0.0
23:17:59 EURUSD Primary Sentiment Change: 0.0
23:17:59 EURUSD Secondary Sentiment Change: 0.0
23:17:58 EURUSD Primary Sentiment Change: 0.0
23:17:58 EURUSD Secondary Sentiment Change: 0.0
23:17:57 EURUSD Primary Sentiment Change: 0.0
23:17:57 EURUSD Secondary Sentiment Change: 0.0
23:17:57 EURUSD Primary Sentiment Change: 0.0
23:17:56 EURUSD Secondary Sentiment Change: 0.0
23:17:56 EURUSD Primary Sentiment Change: 0.0
23:17:56 EURUSD Secondary Sentiment Change: -0.46000000000000085
23:17:55 EURUSD Primary Sentiment Change: -0.17999999999999972
23:17:55 EURUSD Secondary Sentiment Change: -0.25
23:17:55 EURUSD Primary Sentiment Change: -0.05000000000000426
23:17:16 EURUSD Secondary Sentiment Change: 0.3100000000000023
23:17:16 EURUSD Primary Sentiment Change: -0.22999999999999687
23:17:15 EURUSD Secondary Sentiment Change: -0.0899999999999963
23:17:15 EURUSD Primary Sentiment Change: -0.11999999999999744
23:17:10 EURUSD Secondary Sentiment Change: -0.1600000000000037
23:17:10 EURUSD Primary Sentiment Change: 0.3299999999999983
23:17:07 EURUSD Secondary Sentiment Change: -0.1700000000000017
23:17:07 EURUSD Primary Sentiment Change: 0.060000000000002274
23:17:04 EURUSD Secondary Sentiment Change: 0.19000000000000483
23:17:04 EURUSD Primary Sentiment Change: -0.23000000000000398
23:17:00 EURUSD Secondary Sentiment Change: -0.3200000000000003
23:17:00 EURUSD Primary Sentiment Change: 0.17999999999999972
23:16:59 EURUSD Secondary Sentiment Change: 0.5499999999999972
23:16:59 EURUSD Primary Sentiment Change: -0.4200000000000017
23:16:56 EURUSD Secondary Sentiment Change: 0.3299999999999983
23:16:55 EURUSD Primary Sentiment Change: -0.21999999999999886
23:16:55 EURUSD Secondary Sentiment Change: -0.09999999999999432
23:16:55 EURUSD Primary Sentiment Change: -0.21000000000000085
23:16:54 EURUSD Secondary Sentiment Change: 0.10999999999999943
23:16:53 EURUSD Primary Sentiment Change: -0.03999999999999915
23:16:52 EURUSD Secondary Sentiment Change: -0.13000000000000256
23:16:52 EURUSD Primary Sentiment Change: -0.6999999999999957
23:16:51 EURUSD Secondary Sentiment Change: -0.04999999999999716
23:16:51 EURUSD Primary Sentiment Change: 0.5399999999999991
23:16:47 EURUSD Secondary Sentiment Change: 0.269999999999996
23:16:47 EURUSD Primary Sentiment Change: -0.07000000000000028
23:16:45 EURUSD Secondary Sentiment Change: 0.3299999999999983
23:16:45 EURUSD Primary Sentiment Change: -0.5500000000000043
23:16:43 EURUSD Secondary Sentiment Change: -0.03999999999999915
23:16:42 EURUSD Primary Sentiment Change: 0.4299999999999997
23:16:39 EURUSD Secondary Sentiment Change: 0.5900000000000034
23:16:39 EURUSD Primary Sentiment Change: 0.22000000000000597
23:16:38 EURUSD Secondary Sentiment Change: -0.4200000000000017
23:16:38 EURUSD Primary Sentiment Change: -0.14000000000000057
23:16:37 EURUSD Secondary Sentiment Change: 0.060000000000002274
23:16:37 EURUSD Primary Sentiment Change: -0.6000000000000014
23:16:33 EURUSD Secondary Sentiment Change: -0.5
23:16:32 EURUSD Primary Sentiment Change: 1.3800000000000026
23:16:31 EURUSD Secondary Sentiment Change: 0.35999999999999943
23:16:30 EURUSD Primary Sentiment Change: 0.0799999999999983
[color=#FF0000]23:16:29 Strategy tester: java.lang.NullPointerException @ jforex.ErrorDemo.onBar(ErrorDemo.java:65)
23:16:27 Strategy tester: java.lang.NullPointerException @ jforex.ErrorDemo.onBar(ErrorDemo.java:65)[/color]
23:16:26 EURUSD Secondary Sentiment Change: -0.8000000000000043
23:16:26 EURUSD Primary Sentiment Change: -0.5900000000000034
23:16:25 EURUSD Secondary Sentiment Change: 0.25
23:16:25 EURUSD Primary Sentiment Change: -0.19999999999999574
23:16:24 EURUSD Secondary Sentiment Change: 0.13000000000000256
23:16:24 EURUSD Primary Sentiment Change: 0.5700000000000003
23:16:24 EURUSD Secondary Sentiment Change: -0.7700000000000031
23:16:23 EURUSD Primary Sentiment Change: 0.3200000000000003
23:16:22 EURUSD Secondary Sentiment Change: -0.35999999999999943
23:16:22 EURUSD Primary Sentiment Change: 0.269999999999996
23:16:21 EURUSD Secondary Sentiment Change: -0.0799999999999983
23:16:21 EURUSD Primary Sentiment Change: 0.1600000000000037
23:16:20 EURUSD Secondary Sentiment Change: 0.28999999999999915
23:16:20 EURUSD Primary Sentiment Change: -1.4299999999999997
23:16:19 EURUSD Secondary Sentiment Change: 0.0
23:16:19 EURUSD Primary Sentiment Change: 0.0
23:16:19 EURUSD Secondary Sentiment Change: 0.0
23:16:18 EURUSD Primary Sentiment Change: 0.0
23:16:18 EURUSD Secondary Sentiment Change: 0.0
23:16:17 EURUSD Primary Sentiment Change: 0.0
23:16:17 EURUSD Secondary Sentiment Change: 0.0
23:16:17 EURUSD Primary Sentiment Change: 0.0
23:16:16 EURUSD Secondary Sentiment Change: 0.0
23:16:16 EURUSD Primary Sentiment Change: 0.0
23:16:16 EURUSD Secondary Sentiment Change: 0.0
23:16:15 EURUSD Primary Sentiment Change: 0.0
23:16:15 EURUSD Secondary Sentiment Change: 0.0
23:16:15 EURUSD Primary Sentiment Change: 0.0
23:16:14 EURUSD Secondary Sentiment Change: 0.0
23:16:14 EURUSD Primary Sentiment Change: 0.0
23:16:13 EURUSD Secondary Sentiment Change: 0.0
23:16:13 EURUSD Primary Sentiment Change: 0.0
23:16:13 EURUSD Secondary Sentiment Change: 0.0
23:16:12 EURUSD Primary Sentiment Change: 0.0
23:16:12 EURUSD Secondary Sentiment Change: 0.0
23:16:12 EURUSD Primary Sentiment Change: 0.0
23:16:11 EURUSD Secondary Sentiment Change: -0.3999999999999986
23:16:11 EURUSD Primary Sentiment Change: 0.44999999999999574
23:16:10 EURUSD Secondary Sentiment Change: -0.9200000000000017
23:16:10 EURUSD Primary Sentiment Change: 1.9400000000000048
23:15:48 EURUSD Secondary Sentiment Change: -0.01999999999999602
23:15:48 EURUSD Primary Sentiment Change: -0.6300000000000026
23:15:46 EURUSD Secondary Sentiment Change: 0.09999999999999432
23:15:46 EURUSD Primary Sentiment Change: 0.10000000000000142
23:15:44 EURUSD Secondary Sentiment Change: -0.19999999999999574
23:15:43 EURUSD Primary Sentiment Change: -0.07000000000000028
23:15:41 EURUSD Secondary Sentiment Change: 0.3200000000000003
23:15:40 EURUSD Primary Sentiment Change: 0.259999999999998
23:15:39 EURUSD Secondary Sentiment Change: -0.21000000000000085
23:15:38 EURUSD Primary Sentiment Change: -0.28999999999999915
23:15:37 EURUSD Secondary Sentiment Change: -0.13000000000000256
23:15:37 EURUSD Primary Sentiment Change: -0.7299999999999969
23:15:36 EURUSD Secondary Sentiment Change: 0.5799999999999983
23:15:35 EURUSD Primary Sentiment Change: 1.2399999999999949
23:15:34 EURUSD Secondary Sentiment Change: 0.740000000000002
23:15:34 EURUSD Primary Sentiment Change: 2.260000000000005
23:15:31 EURUSD Secondary Sentiment Change: 2.240000000000002
23:15:31 EURUSD Primary Sentiment Change: -0.4000000000000057
23:15:29 EURUSD Secondary Sentiment Change: -0.00999999999999801
23:15:28 EURUSD Primary Sentiment Change: 0.3400000000000034
23:15:27 EURUSD Secondary Sentiment Change: 0.36999999999999744
23:15:26 EURUSD Primary Sentiment Change: -1.3800000000000026
23:15:25 EURUSD Secondary Sentiment Change: -0.14000000000000057
23:15:24 EURUSD Primary Sentiment Change: 0.0
23:15:23 EURUSD Secondary Sentiment Change: -0.7000000000000028
23:15:23 EURUSD Primary Sentiment Change: -1.3999999999999986
23:15:22 EURUSD Secondary Sentiment Change: -0.04999999999999716
23:15:22 EURUSD Primary Sentiment Change: -0.29999999999999716
23:15:19 EURUSD Secondary Sentiment Change: -0.6000000000000014
23:15:19 EURUSD Primary Sentiment Change: 0.7199999999999989
23:15:17 EURUSD Secondary Sentiment Change: 0.2700000000000031
23:15:17 EURUSD Primary Sentiment Change: 0.10000000000000142
23:15:14 EURUSD Secondary Sentiment Change: -0.1700000000000017
23:15:14 EURUSD Primary Sentiment Change: -1.7800000000000011
23:15:13 EURUSD Secondary Sentiment Change: -0.7100000000000009
23:15:12 EURUSD Primary Sentiment Change: 0.6799999999999997
23:15:11 EURUSD Secondary Sentiment Change: -0.22999999999999687
23:15:11 EURUSD Primary Sentiment Change: -0.7199999999999989
23:15:09 EURUSD Secondary Sentiment Change: 0.25
23:15:09 EURUSD Primary Sentiment Change: -0.44000000000000483
23:15:07 EURUSD Secondary Sentiment Change: -1.2899999999999991
23:15:07 EURUSD Primary Sentiment Change: 1.5800000000000054
23:15:05 EURUSD Secondary Sentiment Change: 0.5700000000000003
23:15:04 EURUSD Primary Sentiment Change: -1.3800000000000026
23:15:03 EURUSD Secondary Sentiment Change: -2.8699999999999974
23:15:03 EURUSD Primary Sentiment Change: 1.5
23:15:02 EURUSD Secondary Sentiment Change: -0.05000000000001137
23:15:02 EURUSD Primary Sentiment Change: 0.00999999999999801
23:15:02 EURUSD Secondary Sentiment Change: 0.0
23:15:01 EURUSD Primary Sentiment Change: -0.240000000000002
23:15:01 EURUSD Secondary Sentiment Change: 0.7900000000000063
23:15:00 EURUSD Primary Sentiment Change: -0.8299999999999983
23:14:59 EURUSD Secondary Sentiment Change: 0.1599999999999966
23:14:59 EURUSD Primary Sentiment Change: -0.9200000000000017
23:14:58 EURUSD Secondary Sentiment Change: -0.14000000000000057
23:14:58 EURUSD Primary Sentiment Change: -0.1699999999999946
23:14:56 EURUSD Secondary Sentiment Change: -0.14999999999999147
23:14:55 EURUSD Primary Sentiment Change: 0.7999999999999972


During this period, there were four errors encountered with all other bars producing the correct output. Given the simplicity of this demonstration and the randomness of the errors encountered, I would presume this is a platform issue as opposed to a coding issue.


 
 Post subject: Re: Backtesting Issues With getFXSentimentIndex Post rating: 0   Post Posted: Tue 04 Dec, 2012, 09:03 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
Your strategy is not quite correct.
IDataService.getFXSentimentIndex(...) API says that it returns "the last updated sentiment index or null if there is no such". Therefore a line 65 of ErrorDemo.java strategy is potentially dangerous.
(dataService.getFXSentimentIndex(instrument.getPrimaryCurrency(), askBar.getTime()) can return null. So dataService.getFXSentimentIndex(instrument.getPrimaryCurrency(), askBar.getTime()).getIndexValue() can throw NullPointerException. We have attached improved ErrorDemoImproved.java strategy which carefully treats these situations.
In addition, we have improved the logic of receive FXSentiment Indices to avoid the problem with inconsistent index's value with FXSentimentIndex Indicator values.


Attachments:
ErrorDemoImproved.java [4.81 KiB]
Downloaded 342 times
DISCLAIMER: Dukascopy Bank SA's waiver of responsability - Documents, data or information available on this webpage may be posted by third parties without Dukascopy Bank SA being obliged to make any control on their content. Anyone accessing this webpage and downloading or otherwise making use of any document, data or information found on this webpage shall do it on his/her own risks without any recourse against Dukascopy Bank SA in relation thereto or for any consequences arising to him/her or any third party from the use and/or reliance on any document, data or information found on this webpage.
 

Jump to:  

cron
  © 1998-2025 Dukascopy® Bank SA
On-line Currency forex trading with Swiss Forex Broker - ECN Forex Brokerage,
Managed Forex Accounts, introducing forex brokers, Currency Forex Data Feed and News
Currency Forex Trading Platform provided on-line by Dukascopy.com