Регистрация свечей разных таймфреймов в стратегии


Регистрация свечей разных таймфреймов в стратегии
Atom Reply
3/15/2011


Доброго времени суток!

Изучаю библиотеку на примере SampleSamartSma. На данный момент необходимо модифицировать стратегию, чтобы учитывались и 5минутные свечи и тиковые.

В MainWindow.xaml.cs регистрирую оба таймфрейма:
Код

//Регистрирую основной таймфрейм
_candleManager.RegisterTimeFrameCandles(_lkoh, _timeFrame);
//Регистрирую тиковый таймфрейм
_candleManager.RegisterTimeFrameCandles(_lkoh, TimeSpan.FromTicks(1));


в классе самой стратегии (за основу взят RSI) пишу следующее:
Код

var tickCandle = m_candleManager.GetLastTimeFrameCandle(base.Security, TimeSpan.FromTicks(1));
if (tickCandle == null)
{
return StrategyProcessResults.Continue;
}


Однакоже tickCandle всегда Null, хотя сделки проходят, на графике свечки меняются. 5-минутки обрабатываются нормально.

Что сделано не так? Что я упустил?

Tags:


Thanks:




6 Answers
dimmon

Avatar
Date: 3/15/2011
Reply


Никто не сталкивался с похожей проблемой?
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 3/15/2011
Reply


dimmon Перейти
Никто не сталкивался с похожей проблемой?


Если вы пример изменили, выложите исходники измененные сюда. Это существенно упростит поиск.
Thanks:

dimmon

Avatar
Date: 3/16/2011
Reply


Mikhail Sukhov Перейти
Если вы пример изменили, выложите исходники измененные сюда. Это существенно упростит поиск.


Выкладываю исходники здесь - RsiBot

Бьюсь уже несколько дней над тем, как получать и тиковые и 5-минутные свечи в одной стратегии. Надеюсь на помощь.

P.S.

Михаил, спешу поблагодарить Вас за создание такой колосальной библиотеки :) Труд проделан героический ;)
Topic starter
Thanks:

Greene-nsk

Avatar
Date: 3/16/2011
Reply


Помню у меня были проблемы, когда в одном candleManager регистрировал несколько бумаг и таймфреймов. Не знаю, бага это или фича.
В результате сделал на каждую пару бумага-таймфрейм по отдельному candleManager и все работает. Я собираю их в лист и когда какая-нибудь таймфрейм-бумага нужна, зову:
candleManager = CandleManagersList.First(cm => cm.IsTimeFrameCandlesRegistered(security, securityTimeFrame));
Thanks: dimmon

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 3/16/2011
Reply


dimmon Перейти

Бьюсь уже несколько дней над тем, как получать и тиковые и 5-минутные свечи в одной стратегии. Надеюсь на помощь.


Ошибку нашел. У меня, все как написал ниже Greene-nsk.
Thanks: dimmon

dimmon

Avatar
Date: 3/16/2011
Reply


Спасибо, воспользовался Вашими советами. Отработало :)
Topic starter
Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy