Есть TimeFrameStrategy. Хочется, чтобы как в WealthLab'е обработка входящей информации происходила после формирования соответствующей таймфрейму свечи. Но, если запускать стратегию в любой момент времени, то, она начинает обрабатывать информацию исходя и этого времени. Т. е., если запустили в 12:45:30, то следующая итерация пойдет с 12:46:30(для минуток). А хочется, чтобы, следующая итерация началась именно в 12:46:00 и последующие стартовали соответственно в 12:47:00, 12:48:00 итд. Подскажите, пожалуйста, как это реализовать?
Kommentare (6)
Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen
CandleSeries.WhenFinished
Извиняюсь, за тупой вопрос. Но ткните, пожалуйста, куда надо вставлять эту строчку в итеративной модели?
В метод OnProcess или OnStarted?
Как я уже упоминал, хочется, чтобы активация события "Интервал" в итоге происходила ровно в соответствии с таймфреймом. То есть, получается, нужно один раз попасть на окончание свечи и дальше повторять итерацию с постоянным заданным таймфреймом.
А зачем нужна таймфрейм стратегия, если свечки и так формируются с заданным периодом?
Просто, итеративная модель на данный момент проще воспринимается. Особенно после Wealth Lab'a.
Так как мне решить проблему?
Используйте Strategy, как базовый класс для своей стратегии, вместо TimeFrameStrategy.
В OnStartedдобавляется правило CandleSeries.WhenFinished.
Когда свечка завершается, выполняется какое то действие. Это и будет "итеративный вариант". В примерах есть SmaStrategy, посмотрите как там сделано.
Спасибо esper и Moadip. Вероятно, позже перейду к событийной модели.
Мне она, честно говоря, не очень нравится также из-за того, что событие окончания свечки приходит с задержкой 4-8 секунд. Это нормально? Или у меня какой-то глюк. Работаю через Квик.