Корректная настройка исторического коннектора

Корректная настройка исторического коннектора
Atom
2/4/2019
Дмитрий_


Добрый день.

Как заставить коннектор HistoryEmulationConnector

1) Реагировать на изменение стакана, используя исторический ордер лог?
CreateDepthFromOrdersLog = true не помогает. Подсказку про MarketDataMessage не понимаю как применить.
Capture.PNG
2) Реагировать на новые сделки, используя исторический ордер лог?
CreateTradesFromOrdersLog = true не помогает. Аналогично с подсказкой про MarketDataMessage.
3) Реагировать на новые сделки, используя исторический стакан заявок?
Capture.PNG 14 KB (681)


Support

Avatar
Date: 2/4/2019
Reply


Добрый день

Вы можете подписаться на стакан через метод https://doc.stocksharp.r...RegisterMarketDepth.htm указав в нем режим Build.
Thanks:

Дмитрий_

Avatar
Date: 2/5/2019
Reply


Support
Добрый день

Вы можете подписаться на стакан через метод https://doc.stocksharp.r...RegisterMarketDepth.htm указав в нем режим Build.


Для стакана срабатывают правила WhenMarketDepthChanged и WhenNewTrade, если прописать _connector.RegisterMarketDepth(security) и иметь историю по стакану.

Возможно неточно выразился.
У меня история ордер лога.
Прописано
_connector.RegisterOrderLog(security);
_connector.RegisterMarketDepth(security) (пробовал и _connector.RegisterMarketDepth(security, buildMode: MarketDataBuildModes.Build))

Для ордер лога срабатывает только правило WhenNewOrderLogItem, но не срабатывают правила WhenMarketDepthChanged и WhenNewTrade.

1) Получается - историю ордер лога нужно конвертнуть в историю стакана для срабатывания правил WhenMarketDepthChanged и WhenNewTrade?
2) Имея только ордер лог, правила WhenMarketDepthChanged и WhenNewTrade недосягаемы?
Thanks:

Support

Avatar
Date: 2/5/2019
Reply


Пришлите пожалуйста ваш код.
Thanks:

Дмитрий_

Avatar
Date: 2/5/2019
Reply


Коннектор


_connector.NewSecurity += Connector_NewSecurity;


_connector.LookupSecuritiesResult += _connector_LookupSecuritiesResult;


В PairTradingStrategy OnStarted()
Thanks:

Дмитрий_

Avatar
Date: 2/7/2019
Reply


Support
Пришлите пожалуйста ваш код.

Добрый день.
Код отправил на почту.
Thanks:

Support

Avatar
Date: 2/7/2019
Reply


Добрый день

Мы протестировали вами ранее присланный ОЛ на нашем примере SampleHistoryTesting и без каких либо модификаций он показал и стаканы и тиковые сделки (из которых были построены свечи для стратегии). Поэтому для исторического коннектора указание режима build не требуется.
Thanks:

Дмитрий_

Avatar
Date: 2/7/2019
Reply


Support
Добрый день

Мы протестировали вами ранее присланный ОЛ на нашем примере SampleHistoryTesting и без каких либо модификаций он показал и стаканы и тиковые сделки (из которых были построены свечи для стратегии). Поэтому для исторического коннектора указание режима build не требуется.


В проект SampleHistoryTestingGitHub добавил на строки 506 и 507


И данные события сработали:
Connector_MarketDepthChanged - 2 раза
Connector_NewTrade - 1 раз

Как такое может быть?

Видео приложено. запись_1.webm


запись_1.webm 7 MB (466)
Thanks:

Support

Avatar
Date: 2/14/2019
Reply


Добрый день,

Попробуйте, пожалуйста, данный код

Code
connector.NewOrderLogItem += t => Debug.WriteLine(t);


В случае тестирования на вашем ОЛ событие вызывается постоянно, и через него OrderLogItem.Order.Time можно понять текущее время на истории.
Thanks:


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

loading
clippy