SellAtMarket в OsEngine.

SellAtMarket в OsEngine.

В классе BotTabSimple имеется две перегрузки метода SellAtMarket.

public Position SellAtMarket(decimal volume)

Публичный метод отправляет в коннектор сигнал на продажу по рыночной цене, в качестве единственного параметра принимает объем для операции. Создает и возвращает новую позицию с состоянием PositionStateType.Opening. В коде использование метода выглядит так:

Второй вариант принимает дополнительный параметр в виде строки с указанием сигнала для открытия позиции. Сигнатура метода:

public Position SellAtMarket(decimal volume, string signalType)

Параметр signalType может содержать любое значение, задаваемое в алгоритме стратегии. Использование сигнала на вход удобно для разделения позиций в рамках одного робота.

Модифицируем наш пример: 

  1. Создаем переменную типа string и в зависимости от текущего времени рынка инициализируем ее соответствующим значением.
  2. Открываем позицию по рынку, передавая в метод название сигнала.
  3. Обращаемся к полю SignalTypeOpen на экземпляре созданной позиции, для получения его значения и выводим в лог информационное сообщение о том, какой сигнал был задействован.

Как итог мы можем видеть названия сигналов в таблицах позиций в интерфейсе программы:

Стоит заметить, что оба метода эмулируют рыночную заявку при помощи лимитной, если коннектор не поддерживает исполнение по рынку.

14:56
117
FAQ

Комментарии

Нет комментариев. Ваш будет первым!