Каталог файлов форума

Список вложений в сообщениях, оставленных на этой конференции.

Все файлы форума: 1233

Добавлено: Максим » 31 мар 2021, 15:58

Тема: Re: StopLoss и TakeProfit

Текст сообщения:

Здравствуйте. Нужно, чтобы при открытии позиции, робот выставлял стоп за верхней границей канала (+1 пипс), для шорта, для лонга, соответственно, наоборот, ниже нижней границы+1 пипс, и не трейлил. Делаю вот так, но в тестере показывает по сути трейл-стоп (стопится при первом пробитии канала вверх), а нужно, чтобы он не смещался за ценой вдоль канала, а оставался на первоначальном месте:

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

function Initialize()
{
   StrategyName = "111";
   AddParameter("P_TP", 2.0, "", 1);
   AddParameter("P_chanel_per", 6, "Период 1-канала", 1);
        LongLimit = 1;
   ShortLimit = -1;

}

function OnUpdate()
{

double SL_long=Input1.Close-(Input1.Close-MY.PriceChannel4(Input1, P_chanel_per).GetValue("Lower", 1))-0.01;
double SL_short=Input1.Close+(Input1.Close-MY.PriceChannel4(Input1, P_chanel_per).GetValue("Upper", 1))+0.01;

   /// ПРАВИЛО 1
   if (
   //условие
)
{
      EnterShort();
      BreakingStop(SL_short, P_TP, SignalPriceType.DeltaFromAveragePrice);

   }

   /// ПРАВИЛО 2
   if (
   //условие
)
   {
      EnterLong();
      BreakingStop(SL_long, P_TP, SignalPriceType.DeltaFromAveragePrice);

   }
}

sl.jpg
sl.jpg (129.15 КБ) 189 просмотров