CloseAtProfit в OsEngine.

CloseAtProfit в OsEngine.

Метод CloseAtProfit по аналогии со стопом фиксирует профит позиции. Соответственно логика срабатывания тейк-профита выполняется в терминале. Можно сказать, это условная заявка, которая превращается в реальный ордер только при выполнении заданных условий.

public void CloseAtProfit(Position position, decimal priceActivation, decimal priceOrder, string signalType)
  1. position – позиция, для которой нужно установить стоп-лосс;
  2. priceActivation – цена, при достижении которой на биржу будет выслан реальный ордер;
  3. priceOrder – цена для исполняющего ордера;
  4. signalType – тип сигнала на закрытие позиции;

Рассмотрим на примере. Добавим тейк-профит к нашей позиции.

  1. Подписываемся на событие успешного открытия позиции.
  2. В обработчике этого события рассчитываем цену активации ордера и цену для самой заявки.
  3. Устанавливаем тейк-профит для позиции, вызывая метод CloseAtProfit.
  4. По истечению заданного времени, закрываем позицию по рынку.

Важно! 1

Установить тейк-профит можно только после открытия позиции, то есть, когда ее открытый объем будет больше нуля. Для этих целей как нельзя лучше подходит событие PositionOpeningSuccesEvent. Оно сигнализирует роботу о том, что по открывающему ордеру прошла как минимум одна сделка. В обработчике этого события мы и установим тейк-профит.

public void CloseAtProfit(Position position, decimal priceActivation, decimal priceOrder)

Вторая версия метода выполняет те же действия, но не принимает сигнал для закрытия.

Важно! 2

При исполнении данного типа приказа, приказ CloseAtStop отменяется, если таковой был выставлен для позиции.

17:35
237
FAQ

Комментарии

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