← Back

Управление временем работы

Касаемо времени, существует следующие возможности:

BaseTrader.MarketTime - биржевое время, исключительно для информации, насколько я понимаю. BaseTrader.ReconnectionSettings.WorkingTime - структура из трех диапазонов. Собственно вопросы:

  1. ReconnectionSettings.WorkingTime - это только для ReconnectionSettings, или это влияет и на обычный Connection?

  2. Нет ли примера аккуратной работы с конструкторами времени? Например, мне не нравится начало торгов в {10:00:00}, я хочу {10:00:02}. imho как то не очень удачно конструировать объект с нуля.

  3. Каким образом реализовано внутри? Правильно ли я понимаю, что после установки Recon...WorkingTime.Timers[0].Max = TimeSpan(13:59) BaseTrader прекращает торги в 13:59 и начинает в 14:03? Если да, то генерируются ли события типа connect/reconnect, либо молча прекращаются торги на время паузы?

  4. Каким образом реализовать разные диапазоны для разных стратегий? Например, одна из стратегий должна работать с 10:01 до упора, а вторая - с 10:40, уже после открытия ММВБ? Инструменты одни и те же, поэтому удобно лить котировки в едином потоке, не создавая нового робота под новую стратегию. Насколько я понял, простого решения нет, и придется делать собственную надстройку и самому контролировать время включения той или иной стратегии?

Опасаюсь, что слишком много таймеров и проверок времени (внутри StockSharp и в самом роботе) не добавляют красоты проекту.

Спасибо.

Comments (2)

Login or Create account, Log in or register to leave a comment

Mikhail Sukhov
Mikhail Sukhov
  1. Насчет ReConnectionSettings.WorkingTime указывает на то, когда производить подключения (в случае разрыва).
  2. В стратегии нужно использовать метод TraderHelper.IsWorkingTime куда передавайте как раз ваши временные ограничения.
igork
igork Author

Спасибо. Попробую.