Dukascopy Support Board http://www.dukascopy.com/swiss/english/forex/jforex/forum/ |
|
getOfflineTimeDomain call returns null http://www.dukascopy.com/swiss/english/forex/jforex/forum/viewtopic.php?f=16&t=57411 |
Page 1 of 1 |
Author: | danividal [ Wed 12 Aug, 2020, 03:56 ] |
Post subject: | getOfflineTimeDomain call returns null |
Hi I run the example delivered by the API support team in other subjects in this forum in order to test the getOfflineTimeDomain call and I always get "null" as a response. The old, deprecated call to this method works ok with previous API versions. What has changed? Currently running API 3.6.14 Test code: import java.util.*; import com.dukascopy.api.*; public class Offline_Test_Strategy implements IStrategy { private IEngine engine; private IConsole console; private IHistory history; private IContext context; private IIndicators indicators; private IUserInterface userInterface; @Configurable("Instrument") public Instrument myInstrument = Instrument.EURUSD; @Configurable("Period") public Period myPeriod = Period.ONE_MIN; private ITimeDomain curWeekend; public void onStart(IContext context) throws JFException { this.engine = context.getEngine(); this.console = context.getConsole(); this.history = context.getHistory(); this.context = context; this.indicators = context.getIndicators(); this.userInterface = context.getUserInterface(); curWeekend = context.getDataService().getOfflineTimeDomain(myInstrument); console.getOut().println("Current weekend: " + curWeekend); } public void onAccount(IAccount account) throws JFException { } public void onMessage(IMessage message) throws JFException { } public void onStop() throws JFException { } public void onTick(Instrument instrument, ITick tick) throws JFException { } public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException { if (!instrument.equals(myInstrument) || !period.equals(myPeriod)) { return; } if (askBar.getTime() >= curWeekend.getStart() && askBar.getTime() < curWeekend.getEnd()) { console.getOut().println("Skip weekend bar: " + askBar); return; } if (askBar.getTime() >= curWeekend.getEnd()) { curWeekend = context.getDataService().getOfflineTimeDomain(myInstrument); console.getOut().println("Current weekend: " + curWeekend); } console.getOut().println("Processing bar: " + askBar); } } |
Author: | API Support [ Wed 09 Sep, 2020, 10:09 ] |
Post subject: | Re: getOfflineTimeDomain call returns null |
Greetings. Strategy must subscribe on instrument to load trading breaks schedule. context.setSubscribedInstruments(Collections.singleton(myInstrument), true); curWeekend = context.getDataService().getOfflineTimeDomain(myInstrument); Regards. |
Page 1 of 1 |