BuyAtMarket в OsEngine.

BuyAtMarket в OsEngine.

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

public Position BuyAtMarket(decimal volume)

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

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

public Position BuyAtMarket(decimal volume, string signalType)

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

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

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

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

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

12:57
124
FAQ

Комментарии

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