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

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


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

Изучаю библиотеку на примере 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-минутки обрабатываются нормально.

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


Теги:


Спасибо:


dimmon

Фотография
Дата: 15.03.2011
Ответить


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

Спасибо:

Mikhail Sukhov

Фотография
Дата: 16.03.2011
Ответить


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

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

Спасибо:

dimmon

Фотография
Дата: 16.03.2011
Ответить


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

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

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

P.S.

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

Спасибо:

Greene-nsk

Фотография
Дата: 16.03.2011
Ответить


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

Спасибо: dimmon

Mikhail Sukhov

Фотография
Дата: 16.03.2011
Ответить


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

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

Спасибо: dimmon

dimmon

Фотография
Дата: 16.03.2011
Ответить


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

Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy