Если стратегия, например, аварийно прекратила работу (обрыв связи, перезагрузка и т.д.), но при этом успела выставить заявки, то при следующем включении - это уже будут заявки шлюза а не стратегии.
Как сделать все заявки шлюза (обычные и стоп) заявками стратегии?
评论 (7)
登录 或 创建账户, 登录或注册以发表评论
Я у себя в такой ситуации ищу потом через шлюз. заявками стратегии не пользуюсь. ведь потом уже не понять, к чему относится этот стоп
т.е. фактически перерегистрировать заявки
http://stocksharp.com/doc/html/M_StockSharp_Algo_Strategies_Strategy_ProcessNewOrders.htm
Я пробовал это раньше, но у меня почему-то не работает. Версия библиотеки 4.0.10
Итог - Переменная stops содержит 0 элементов, CancelActiveOrders() не снимает стопы, которые висели в квике на момент включения робота (т.е. стопы шлюза не назначились стратегии) Или я неверно понял назначение метода?
Запускаем стратегию. Висит какой-то стоп. И как же стратегия узнает, что это её стоп ?
переопределите ProcessNewOrders (возвращая свой массив объединённый с массивом из base.ProcessNewOrders)
и не вызывайте его сами, он вызывается из OnStarting для стопов и обычных заявок