да так очевидно) Просто думал это можно сделать через Trader без явного преобразования (без привязки стратегии к типу терминала). Но видимо это нелогично.
Дает ошибку: Не удалось привести тип объекта "StockSharp.Algo.Testing.RealTimeEmulationTrader`1[StockSharp.Quik.QuikTrader]" к типу "StockSharp.Quik.QuikTrader".
Serg:
да так очевидно) Просто думал это можно сделать через Trader без явного преобразования (без привязки стратегии к типу терминала). Но видимо это нелогично.
> Дает ошибку: Не удалось привести тип объекта "StockSharp.Algo.Testing.RealTimeEmulationTrader`1[StockSharp.Quik.QuikTrader]" к типу "StockSharp.Quik.QuikTrader".
у RealTimeEmulationTrader есть поле Trader - это как раз и будет QuikTrader.
Видимо это все немного не то чего я ожидал(
Подскажите, если Trader открыл стакан и запустил экспорт по дде, но потом каким то образом этот стакан был кем-то закрыт. Как в таком случае проверить открыт ли стакан в квике и запущен ли по нему экспорт?
Serg:
Видимо это все немного не то чего я ожидал(
Подскажите, если Trader открыл стакан и запустил экспорт по дде, но потом каким то образом этот стакан был кем-то закрыт. Как в таком случае проверить открыт ли стакан в квике и запущен ли по нему экспорт?
Спросить у кого-то закрывал он стакан или нет
Ну QuikTrader.Terminal.IsDdeStarted(Security) что возвращает в этом случае?
Serg:
На самом деле у меня почему-то стаканы не всегда открываются. Происходит это не часто но все же.
Сейчас я сделал задержку после Trader.RegisterQuotes(Security) в 500мс, вроде проблема более не наблюдалась.
Спасибо за ваш совет. Буду экспериментировать далее)
We use cookies to ensure the best experience on our website. By continuing to use our site, you agree to the use of cookies.
Comments (10)
Login or Create account, Log in or register to leave a comment
Terminal.IsDdeStarted(Security)
А из стратегии его вызвать можно?
QuikTrader.Terminal.IsDdeStarted(Security) очевидно что можно
да так очевидно) Просто думал это можно сделать через Trader без явного преобразования (без привязки стратегии к типу терминала). Но видимо это нелогично.
Спасибо за ответ.
+++
А Trader преобразовать в QuikTreader нельзя?
Дает ошибку: Не удалось привести тип объекта "StockSharp.Algo.Testing.RealTimeEmulationTrader`1[StockSharp.Quik.QuikTrader]" к типу "StockSharp.Quik.QuikTrader".
StockSharp.Quik.QuikTrader qt = (StockSharp.Quik.QuikTrader)Trader;
Видимо это все немного не то чего я ожидал( Подскажите, если Trader открыл стакан и запустил экспорт по дде, но потом каким то образом этот стакан был кем-то закрыт. Как в таком случае проверить открыт ли стакан в квике и запущен ли по нему экспорт?
Спросить у кого-то закрывал он стакан или нет
Ну QuikTrader.Terminal.IsDdeStarted(Security) что возвращает в этом случае?
Если экспорт стартовал то IsDdeStarted(Security) всегда true. То есть он не проверяет "это" вновь а берет старую инфу как я понял.
Я бы спросил) но кто он, тот кто их закрывает)) На самом деле у меня почему-то стаканы не всегда открываются. Происходит это не часто но все же.
Так зачем вы закрываете я не пойму? Вы успешно стартанули экспорт - потом вдруг вам взбрело в голову закрыть стакан?
Проверьте что открыта таблица - Terminal.IsTableOpened, затем проверьте что запущен экспорт - так, как я сказал выше.
Сейчас я сделал задержку после Trader.RegisterQuotes(Security) в 500мс, вроде проблема более не наблюдалась. Спасибо за ваш совет. Буду экспериментировать далее)