Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
В библиотеке MQL5 уже больше 1500 программ. Поделись и ты своей!
repcon
83
repcon 2015.10.19 17:15 

Чем отличается этот код 

extern double lots=0.1;
extern int slippadge=2;
extern int ST=0;
extern int TP=0;
extern int magic=777;
extern string comment="Test 1";
    
bool inside_bar_buy;
double takeprofit, stoploss, urovenlimitaIB_buy;
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
if (High[3]>=Open[2]&&Low[3]<=Close[2]&&High[3]>=Close[2]&&Low[3]<=Open[2])inside_bar_buy=true; else inside_bar_buy=false;
      
      urovenlimitaIB_buy=High[3];
      
      if (Close[1]>High[3]&& inside_bar_buy==true)
      {stoploss = NormalizeDouble (urovenlimitaIB_buy - ST*Point, Digits);
      takeprofit = NormalizeDouble (urovenlimitaIB_buy + TP*Point, Digits);
      OrderSend (Symbol(), OP_BUYLIMIT, lots, urovenlimitaIB_buy, slippadge, stoploss, takeprofit, comment, magic, 0, clrGreen);}
   
  }

 От этого:

extern double lots=0.1;
extern int slippadge=2;
extern int ST=0;
extern int TP=0;
extern int magic=777;
extern string comment="Test 2";

bool inside_bar_sell;
double takeprofit, stoploss, urovenlimitaIB_sell;
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
if (High[3]>=Open[2]&&Low[3]<=Close[2]&&High[3]>=Close[2]&&Low[3]<=Open[2])inside_bar_sell=true; else inside_bar_sell=false;
      
      urovenlimitaIB_sell=Low[3];
      
      if (Close[1]<Low[1]&& inside_bar_sell == true)
      {stoploss = NormalizeDouble (urovenlimitaIB_sell - ST*Point, Digits);
      takeprofit = NormalizeDouble (urovenlimitaIB_sell + TP*Point, Digits);
      OrderSend (Symbol(), OP_SELLLIMIT, lots, urovenlimitaIB_sell, slippadge, stoploss, takeprofit, comment, magic, 0, clrRed);}
   
  }

 По первому коду все прекрасно работает: открываются покупки. По второму, для продаж - абсолютно никакой реакции. В чем проблема?

Victor Nikolaev
Модератор
14040
Victor Nikolaev 2015.10.19 17:20  
Repcon:

Чем отличается этот код 

 От этого:

 По первому коду все прекрасно работает: открываются покупки. По второму, для продаж - абсолютно никакой реакции. В чем проблема?

Потому и не работает.

Похоже Вас ошибки не интересуют, которые можно проанализировать. Обработки ошибок нету (а то ответ бы уже давно получили).

Я только хочу спросить почему стопы и тейки считаются по одной и той же модели в обоих случаях. Может надо знаки поменять. Где был "+" использовать "-" и наоборот 

Aleksey
248
Aleksey 2015.10.19 17:22  
if (Close[1]<Low[1]&& inside_bar_sell == true)
Цена закрытия никак не может быть ниже минимальной цены на одном и том же баре.
repcon
83
repcon 2015.10.19 17:40  
Vinin:

Потому и не работает.

Похоже Вас ошибки не интересуют, которые можно проанализировать. Обработки ошибок нету (а то ответ бы уже давно получили).

Я только хочу спросить почему стопы и тейки считаются по одной и той же модели в обоих случаях. Может надо знаки поменять. Где был "+" использовать "-" и наоборот 

Спасибо. Глупая ошибка. Действительно, надо смотреть на коды ошибок. 

 

PozitiF:
Цена закрытия никак не может быть ниже минимальной цены на одном и том же баре.

 Да, естественно. Описался.

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