SellAtMarketToPosition в OsEngine.

SellAtMarketToPosition в OsEngine.
public void SellAtMarketToPosition(Position position, decimal volume)

В отличии от предыдущего, метод SellAtMarketToPosition модифицирует позицию путем добавления рыночной заявки на продажу в список открывающих ордеров. Принимает следующие параметры:

  1. position – позиция, которую необходимо модифицировать;
  2. volume – объем для нового рыночного ордера;

Данный метод хорошо подойдет для наращивания объема короткой позиции. Обрисуем следующую задачу: в трендовой стратегии мы хотим набрать позицию двумя частями. Если цена отклонилась от скользящей на заданный процент, продаем первую часть, если продолжила падение и пересекла границу двойного отклонения от текущего значения SMA, продаем вторую часть.

Давайте сделаем это:

  1. Если цена опустилась ниже уровня одного отклонения, продаем по рынку первую часть.
  2. Вычисляем второй уровень для отклонения.
  3. Если цена упала ниже второго уровня, а также если робот еще не набрал нужный объем (условно 100 лотов), заходим в тело условной конструкции.
  4. Вызываем метод SellAtMarketToPosition с целью продать оставшуюся часть.

И так же в журнале видим два рыночных открывающих ордера в позиции:

public void SellAtMarketToPosition(Position position, decimal volume, string signalType)

Вторая версия метода выполняет те же самые действия и принимает дополнительный параметр signalType.

15:57
96
FAQ

Комментарии

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