ActionStrategy() и свечи

ActionStrategy() и свечи
Atom
6/13/2011
valenock


Для работы со свечками в ActionStrategy доступны

NewCandle(CandleToken) 
Changed(Candle, ICandleManager) 
Finished(Candle, ICandleManager)

А как получить доступ к _candleManager.CandlesFinished() ? т.е. как вызывать Action каждый раз по окончанию свечи ? Я делаю так:

When(_candleToken.NewCandle()).Do(delegate() 
{ 
     var finishedCandle = _candleManager.GetTimeFrameCandles(Security, _timeFrame, 2).FirstOrDefault(); 
}).MakePeriodical();

Но это явно не джедайский подход, хотелось бы что-то поэлегатнее, в идеале в духе _candleManager.CandlesFinished() - чтобы сразу получать список законченных свечек и работать с ними как-то так:

When(_candleToken.NewCandleFinished()).Do(Action(Candle newCandle); 

Tags:


Thanks:


< 1 2 
Alexander

Avatar
Date: 7/11/2011
Reply


Наверное не запущен стакан :)

Thanks:

Alex Ander

Avatar
Date: 7/11/2011
Reply


Стакан не запущен, но ведь речь идет не про BestBidPriceMore/BestAskPriceMore, а про LastTradePriceMore.

А значение Security.LastTrade.Price меняется синхронно с данными в квике.

Thanks:

Alex Ander

Avatar
Date: 7/12/2011
Reply


Включил экспорт стакана


_trader.RegisterQuotes(_strategy.Security);

Ничего не изменилось, события не вызываются.

Thanks:

Mikhail Sukhov

Avatar
Date: 7/12/2011
Reply


Alex Ander: Включил экспорт стакана

_trader.RegisterQuotes(_strategy.Security);

> 
> Ничего не изменилось, события не вызываются.

ITrader.SecuritiesChanged передает измененный инструмент?
Thanks:

Alex Ander

Avatar
Date: 7/12/2011
Reply



_trader.Connected += () =>
{

  ...

  _trader.SecuritiesChanged += securities =>
  {
     foreach (var sec in securities) MessageBox.Show(sec.Name);
  };

  ...

};

Тоже ни разу не вызывается и ничего не передается.

Thanks:

Mikhail Sukhov

Avatar
Date: 7/12/2011
Reply


Alex Ander: Тоже ни разу не вызывается и ничего не передается.

Потому что Квик транслирует изменения по таблице, а не по инструменту. В таблице что-то визуально изменяется?

Thanks:

Alex Ander

Avatar
Date: 7/12/2011
Reply


Цифры в таблице Квика не меняются. Цвет строки меняется (красный - зеленый) в соответствии с ценой.

Михаил, у меня не вызывается и LastTradePriceMore. Хотя цена последней сделки передается правильно и регулярно. CandlesFinished тоже работает безукоризненно.

Thanks:

Alexander

Avatar
Date: 7/12/2011
Reply


Это особенность квика. SecurityChanged не приходит, т.к. ничего физически в таблице не меняется. В 3.2.5 были изменения немного логики работы, может поможет.

Как вариант - добавить дополнительную колонку с последней ценой инструмента, тогда SecurityChanged приходить будет.

Thanks:
< 1 2 

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

loading
clippy