droba
Droba

 
Уровень 9

  Торгую в компаниях:


Группа "Стол заказов MQL"

Рейтинг 2146



РЕКОМЕНДУЮ



Прошу написать советник.

Прошу написать советник с модификацией ордеров по ТП в отрицательной зоне.
Описание на скрине.
TZ_PROBOY.jpg (339 Kb)
TZ_PROBOY1.jpg (296 Kb)
  • 0
  • Просмотров: 2334
  • 20 мая 2021, 18:41
  • droba
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Индикатор Candle and Volume
Следующая запись в группе  
Доработка помощника
18 мая 2021
21 мая 2021

Брокер для ваших роботов, 15 лет на рынке

Комментарии (27)

+
0


avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 20 мая 2021, 21:43
+
0
непонятно
avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 20 мая 2021, 21:46
+
0
непонятно по пунктам:

1. ордера открываем на каждой свече?
2. открываем только бай селл?
avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 20 мая 2021, 22:01
+
0
1. Можно на каждой свече.
2. Да только два ордера Buy и SELL без доливок.
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 21 мая 2021, 07:32
+
0

Если свеча бычья значит открываем BUY. Если свеча медвежья значит открываем SELL.
В рынке одновременно могут находиться только два разнонаправленных ордера Buy и SELL.

//+------------------------------------------------------------------+
double signal()
{
double sig=3;
if(Close[1]>Open[1] && Bid>=High[1] && Bid<High[1]+60*Point)
{
sig=0;
}
if(Close[1]<Open[1] && Ask<=Low[1] && Ask>Low[1]-60*Point)
{
sig=1;
}
return(sig);
}
Редактирован: 21 мая 2021, 05:50
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 21 мая 2021, 05:44
+
0
Bid>=High[1] && Bid<High[1]+60*Point


Я только последнее сообщение глянул и дальше не смотрел…

Зачитываю, что там сказано: Если Цена Покупки больше предыдущего максимума, но при этом она же ниже этого максимума на 6 пунктов…

Чего? Это как можно сразу быть в Амстердаме и Нью-Йорке?
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 21 мая 2021, 10:21
+
0
Да не кипиши ты. Я так думаю, что, скорее всего, парень просто опечатался, поторопился.
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 21 мая 2021, 11:05
+
0
Там похоже пробует выловить движение ложного пробоя каждый раз, при этом нету страховочного ордера на разворот.
По сути было бы правильней Два робота в Одном. То есть ловим пробой, но если пробой не состоялся, выставляем страховку Бай-стоп или Селл-стоп с увеличенным лотом. По сути я бы только стоповые-ордера оставил. То есть если появляется пробой в любую сторону, то ищем куда поставить стоп.

Но заказа такого робота не было. Будем ждать когда клиент созреет. *spokuha* *drinks* *friends* 
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 21 мая 2021, 11:32
+
0
То есть ловим пробой, но если пробой не состоялся...

Да неее… Ну это ж слишком примитивно. Мне не нравится.
Кроме того, мне кажется, что, как с точки зрения кода много удобней рулить сразу рыночными ордерами, так и с точки зрения торговли мало в каких идеях оправданы отлоги.
Но это только моя субьективная имха.
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 21 мая 2021, 14:33
+
0
Вы программист?
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 21 мая 2021, 11:47
+
0
Да, я программист. Моя последняя работа тут.
Но я не стану обсуждать условия в чужом топике.
К тому же Вы сможете дождаться, когда Андрей напишет советника по Вашим условиям.
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 21 мая 2021, 12:34
+
0
сегодня буду смотреть
avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 21 мая 2021, 18:02
+
0
ОК!
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 21 мая 2021, 19:17
+
0
сделал. только непонятно для чего это?




//+------------------------------------------------------------------+
//|                                                    BuySell60.mq4 |
//|                                              Copyright 2021, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lot        = 1;        // лот позы
extern double KTake      = 0.3;      // умножение тейка
extern int ATR           = 14;       // ATR
extern int Slip          = 30;       // реквот
extern int Magic         = 123;      // магик

double atr=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int CountTrades(int type)
  {
   int count=0;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==type)
               count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Mode()
  {
   bool m=1;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==0)
              {
               m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderOpenPrice()-atr*KTake,0,Yellow);
              }
            if(OrderType()==1)
              {
               m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderOpenPrice()+atr*KTake,0,Yellow);
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   int r=0;
   atr=iATR(NULL,0,ATR,0);

   if(CountTrades(0)<1 && Close[1]>Open[1])
     {
      Mode();
      r=OrderSend(NULL,0,Lot,NormalizeDouble(Ask,_Digits),Slip,0,NormalizeDouble(Bid+atr,_Digits),"",Magic,0,Blue);
     }

   if(CountTrades(1)<1 && Close[1]<Open[1])
     {
      Mode();
      r=OrderSend(NULL,1,Lot,NormalizeDouble(Bid,_Digits),Slip,0,NormalizeDouble(Ask-atr,_Digits),"",Magic,0,Red);
     }

   Comment("\n ATR: ",NormalizeDouble(atr,_Digits));
  }
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+

avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 21 мая 2021, 19:19
+
0

В итоге получили шесть профитов Sell ордеров, а модификация Buy прошла один раз от первого профита Sell.
А в идеале ТР Байки должен тралиться после каждого ТП ордера Sell и на развороте Байка бы закрылась с минусов в итоге от серии сделок получили 70% прибыли ну минус своп. Смысл такой в начале взяли потом отдали процент от прибыли.
У меня в принципе так же работает модификация вот поэтому и обратился за помощью. Но я не программист.
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 21 мая 2021, 22:08
+
0
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 21 мая 2021, 22:09
+
0
Слежу за темой, интересно, что может получиться. Оперативно Андрей. Но подозреваю это не то, что хотел автор. Если его комментов не последует, в понедельник оформлю ТЗ от себя так, как я понял автора.
avatar

  18  GAWroch Сообщений: 84 - Вячеслав

  • 21 мая 2021, 19:38
+
0
выше то что я понял :) 
avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 21 мая 2021, 19:40
+
0
Вячеслав, а Вы как поняли?
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 21 мая 2021, 22:39
+
0
Примерно так. Двигаем ТР при каждом закрытии противоположного ордера по профиту.
avatar

  18  GAWroch Сообщений: 84 - Вячеслав

  • 22 мая 2021, 05:57
+
0
вам надо было побольше скринов работы эксперта нарисовать в тз, чтобы не было никаких разночтений
avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 21 мая 2021, 23:11
+
+1
вот вариант по этой картинке 2:




//+------------------------------------------------------------------+
//|                                                    BuySell60.mq4 |
//|                                              Copyright 2021, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lot        = 1;        // лот позы
extern double KTake      = 0.6;      // умножение тейка
extern int ATR           = 14;       // ATR
extern int Slip          = 30;       // реквот
extern int Magic         = 123;      // магик

double atr=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int CountTrades(int type)
  {
   int count=0;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==type)
               count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Mode()
  {
   bool m=1;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==0)
              {
               m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderOpenPrice()-(OrderOpenPrice()-Bid)*KTake,0,Yellow);
              }
            if(OrderType()==1)
              {
               m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderOpenPrice()+(Bid-OrderOpenPrice())*KTake,0,Yellow);
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   int r=0;
   atr=iATR(NULL,0,ATR,0);

   if(CountTrades(0)<1 && Close[1]>Open[1])
     {
      Mode();
      r=OrderSend(NULL,0,Lot,NormalizeDouble(Ask,_Digits),Slip,0,NormalizeDouble(Bid+atr,_Digits),"",Magic,0,Blue);
     }

   if(CountTrades(1)<1 && Close[1]<Open[1])
     {
      Mode();
      r=OrderSend(NULL,1,Lot,NormalizeDouble(Bid,_Digits),Slip,0,NormalizeDouble(Ask-atr,_Digits),"",Magic,0,Red);
     }

   Comment("\n ATR: ",NormalizeDouble(atr,_Digits));
  }
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+



avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 22 мая 2021, 09:45
+
0
Андрей, на скрине отрыты два ордера Buy и Sell не один по ТП не закрылся откуда у Sell тейкпрофит смодифицировался, т.е. в дальнейшем Sell закроется с минусом, а ведь мог закрыться с плюсом.
Противоположный ордер модифицируем только после положительного ТП. Смысл стратегии вначале взяли потом отдали процент от полученной прибыли.
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 23 мая 2021, 21:27
+
+1
Андрей извини, что поковырялся в твоем коде. В общем такая хрень получилась. Тейк вроде «тралит» в минус, но пункты изменения привязаны к «StopLoss», а это не верно. Они должны зависеть от величины последнего профита, если я правильно понял пожелания автора. Возможно Андрей сделает? И да, за основу взят сов «HighLow4».
<code>
//+------------------------------------------------------------------+
//|                                                    HighLowXZ.mq4 |
//|                                              Copyright 2021, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lots       = 0.1;      // лот
extern double MaxLot     = 5;        // максимальный лот
extern int StopLoss      = 222;      // лось
extern int TakeProfit    = 333;      // язь
extern int Count         = 2;        // число поз
extern int Delta         = 20;       // дополнение к стопу
extern int Slip          = 30;       // реквот
extern int Magic         = 123;      // магик

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   Comment("");
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
  }
//+------------------------------------------------------------------+
//|                   Одна  сделка за свечу                          |
//+------------------------------------------------------------------+
bool OneCandleDeal()
  {
   if(OrderSelect(OrdersTotal()-1,SELECT_BY_POS,MODE_TRADES))
     {
      if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
        {
         if(OrderOpenTime()>Time[0] && OrderOpenTime()<Time[0]+PeriodSeconds())
           {
            return(false);
           }
        }
     }
   return(true);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int CountTrades(int type)
  {
   int count=0;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==type)
               count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|         Подсчет профита по типу ордеров                          |
//+------------------------------------------------------------------+
double AllProfit(int ot=-1)
  {
   double pr=0;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==0 && (ot==0 || ot==-1))
              {
               pr+=OrderProfit()+OrderCommission()+OrderSwap();
              }

            if(OrderType()==1 && (ot==1 || ot==-1))
              {
               pr+=OrderProfit()+OrderCommission()+OrderSwap();
              }
           }
        }
     }
   return(pr);
  }
//------------------------------------------------------------------------

//+------------------------------------------------------------------+
//|            Автор функции подсчета профита последней              |
//|          группы закрытых ордеров"Vitalie Postolache"             |
//+------------------------------------------------------------------+
double lastloss()
  {
   double lastlos=0,op=0;
   int cnt=0;
   datetime time=0;
   for(int i=OrdersHistoryTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
        {
         if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic && OrderType()<2)
           {
            if(cnt==0 && OrderCloseTime()!=0)
               time=OrderCloseTime();
            if(OrderCloseTime()+PeriodSeconds()<time)
               break;
            op=NormalizeDouble(OrderProfit()+OrderSwap()+OrderCommission(),2);
            lastlos+=op;
            cnt++;
           }
        }
     }
   return(lastlos);
  }

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void ModeB()
  {
   bool m=1;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==0)
              {
               if(OrderOpenPrice()< OrderTakeProfit())
                  m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderOpenPrice()-NormalizeDouble(StopLoss*_Point,_Digits),0,Yellow);
              }
              {
               if(OrderOpenPrice()> OrderTakeProfit())
                  m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderTakeProfit()-NormalizeDouble(StopLoss*_Point,_Digits),0,Yellow);
              }
           }
        }
     }
  }
//--------------------------------------------------------------------------------------------------
void ModeS()
  {
   bool m=1;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==1)
              {
               if(OrderOpenPrice()> OrderTakeProfit())
                  m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderOpenPrice()+NormalizeDouble(StopLoss*_Point,_Digits),0,Yellow);
              }
              {
               if(OrderOpenPrice()< OrderTakeProfit())
                  m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderTakeProfit()+NormalizeDouble(StopLoss*_Point,_Digits),0,Yellow);
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   int r=0;
   if(Bid>=High[1])
     {
      if(CountTrades(0)<Count)
        {
         if(OneCandleDeal())
           {
            r=OrderSend(NULL,0,Lots,NormalizeDouble(Ask,_Digits),Slip,0,NormalizeDouble(Bid+TakeProfit*_Point,_Digits),"",Magic,0,Blue);
            if(lastloss()>0)
               ModeS();
           }
        }
     }
   if(Bid<=Low[1])
     {
      if(CountTrades(1)<Count)
        {
         if(OneCandleDeal())
           {
            r=OrderSend(NULL,1,Lots,NormalizeDouble(Bid,_Digits),Slip,0,NormalizeDouble(Ask-TakeProfit*_Point,_Digits),"",Magic,0,Red);
            if(lastloss()>0)
               ModeB();
           }
        }
     }

   Comment("\n Buy: ",CountTrades(0),
           "\n Sell: ",CountTrades(1),
           " \n",
           "\n Крайний профит:                       ",lastloss());
  }
//+------------------------------------------------------------------+

</code>

Редактирован: 22 мая 2021, 10:10
avatar

  18  GAWroch Сообщений: 84 - Вячеслав

  • 22 мая 2021, 10:06
+
0
Вячеслав, Ваш вариант ближе к цели. Единственно хотелось бы модифировать процент от полученного профита и для Buy свой процент, и для Sell свой процент. Это необходимо в случае просадки.
avatar

  9  droba Автор Сообщений: 239 - Droba

  • 23 мая 2021, 22:08
+
+1
на скрине отрыты два ордера Buy и Sell не один по ТП не закрылся откуда у Sell тейкпрофит смодифицировался, т.е. в дальнейшем Sell закроется с минусом


поправил этот момент и добавил раздельный тейк на бай и селл:


extern double Lot        = 1;        // лот позы
extern double BTake      = 0.6;      // умножение тейка buy
extern double STake      = 0.6;      // умножение тейка sell
extern int ATR           = 14;       // ATR
extern int Slip          = 30;       // реквот
extern int Magic         = 123;      // магик





//+------------------------------------------------------------------+
//|                                                    BuySell60.mq4 |
//|                                              Copyright 2021, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lot        = 1;        // лот позы
extern double BTake      = 0.6;      // умножение тейка buy
extern double STake      = 0.6;      // умножение тейка sell
extern int ATR           = 14;       // ATR
extern int Slip          = 30;       // реквот
extern int Magic         = 123;      // магик

double atr=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int CountTrades(int type)
  {
   int count=0;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==type)
               count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Mode(double take)
  {
   bool m=1;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==0)
              {
               m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderOpenPrice()-(OrderOpenPrice()-Bid)*take,0,Yellow);
              }
            if(OrderType()==1)
              {
               m=OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderOpenPrice()+(Bid-OrderOpenPrice())*take,0,Yellow);
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+
//| Результат последней сделки                                       |
//+------------------------------------------------------------------+
int LastDealResult()
  {
   int result=0;
   if(OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY))
     {
      if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
        {
         if(OrderProfit()>0)
           {
            result=1;//tp
           }
         if(OrderProfit()<0)
           {
            result=2;//sl
           }
        }
     }
   return(result);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   int r=0;
   atr=iATR(NULL,0,ATR,0);

   if(CountTrades(0)<1 && Close[1]>Open[1])
     {
      if(LastDealResult()==1)
         Mode(BTake);
      r=OrderSend(NULL,0,Lot,NormalizeDouble(Ask,_Digits),Slip,0,NormalizeDouble(Bid+atr,_Digits),"",Magic,0,Blue);
     }

   if(CountTrades(1)<1 && Close[1]<Open[1])
     {
      if(LastDealResult()==1)
         Mode(STake);
      r=OrderSend(NULL,1,Lot,NormalizeDouble(Bid,_Digits),Slip,0,NormalizeDouble(Ask-atr,_Digits),"",Magic,0,Red);
     }

   Comment("\n ATR: ",NormalizeDouble(atr,_Digits));
  }
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+



avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 24 мая 2021, 20:17
+
0
Я писал выше как на мой взгляд правильней, но я наблюдаю за тем как клиенты зреют *war* 
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 25 мая 2021, 16:54

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий