Страница 1 из 1

TrailingStopLoss. Отмена/Изменение

Добавлено: 11 янв 2019, 11:50
k.4nt
Добрый день.

Надо:
Изменять/убирать и ставить заново TrailingStopLoss.
Есть значения, получаемые от индикаторов. На основе них необходимо менять % TrailingStopLoss.

Что делал:
- Задавал переменную для значения TrailingStopLoss и её крутил как мне нужно. Не сработало. Значения переменной менял через "Конструктор" в окне "ЕСЛИ". При соблюдении условий она менялась.
- CancelTrailingStopLoss(); аналогично CancelStopLoss();. Нет такой переменной. По попробовать стоило.
- В "Конструкторе" в поле "ТО" нет параметра "Отменить TrailingStopLoss". Есть "Отменить Стоп". Который тут не срабатывает.

Суть вопроса:
Подскажите направление куда копать и как мне отменять или ставить заново или менять TrailingStopLoss. Можно обойтись "Стопами", но, скажем, за час цена уползёт выше/нижу и там ещё поболтается как ей хочется. Так себе вариант.
Вариант изменения TrailingStopLoss раз в Таймфрейм меня вполне устраивает.
Пока использую визуальную среду. Если нужно- полезу в код.
Спасибо.

Re: TrailingStopLoss. Отмена/Изменение

Добавлено: 11 янв 2019, 12:03
oxi
Да все работает. Вот пример.
Покупаем. Выставляем трейлинг на следующем шаге отменяем - он снимается.


Код: Выделить всё

function OnUpdate()
{
var pos = CurrentPosition();
   if ( pos == 0 && StopFlag == 1)
      Stop();

   if ( pos > 0 )
   {
      CancelStopLoss();
   }
         
   if ( Input1.Close[0] > Input1.Close[1] && pos <= 0 && StopFlag == 0)
   {
                 EnterLong();
      TrailingStopLoss(0.2, SignalPriceType.DeltaInPercentFromAveragePrice);
      StopFlag = 1;
   }
}

Re: TrailingStopLoss. Отмена/Изменение

Добавлено: 11 янв 2019, 12:14
oxi
Важно: Трейлинг не возможно протестировать на истории. Только в реальном роботе.

Re: TrailingStopLoss. Отмена/Изменение

Добавлено: 11 янв 2019, 16:26
k.4nt
oxi писал(а):Да все работает. Вот пример.


Да, Вы правы. Всё проверил и у меня получилось. Благодарю.