[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 77

 

                Как сделать, чтобы индикатор в отдельном окне не выводил обозначение уровня 0.0

происходит наложение значения индикатор и 0?

 
TVA_11:

                Как сделать, чтобы индикатор в отдельном окне не выводил обозначение уровня 0.0

происходит наложение значения индикатор и 0?


Как узнаете - скажите. Мне тоже мешает.
 
TVA_11:

                Как сделать, чтобы индикатор в отдельном окне не выводил обозначение уровня 0.0

происходит наложение значения индикатор и 0?


Вместо 0 присваивать EMPTY_VALUE
 

Подскажите  пожалуйста почему не открываются ордера

 extern int sl=60;

extern int tp=180;

 double ma0,ma1,ma2;

 

int start()

  {

  ma0=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,0);

  ma1=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,1);

  ma2=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,2);

 if(OrdersTotal()==0 && Hour( ) ==0 && Minute( ) ==0 && ma0 > ma1)

  OrderSend(NULL,OP_SELL,0.1,Bid,3,Ask+sl*Point,Ask-tp*Point,"",332,0,Blue);

  }

 
KoOr:

Подскажите  пожалуйста почему не открываются ордера

 extern int sl=60;

extern int tp=180;

 double ma0,ma1,ma2;

 

int start()

  {

  ma0=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,0);

  ma1=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,1);

  ma2=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,2);

 if(OrdersTotal()==0 && Hour( ) ==0 && Minute( ) ==0 && ma0 > ma1)

  OrderSend(NULL,OP_SELL,0.1,Bid,3,Ask+sl*Point,Ask-tp*Point,"",332,0,Blue);

  }


Ну во первых может открыться только один ордер т.к if OrderTotal()==0 и только ровно в 00:00 по серверному времени.
 

Убрав время открытия, но по прежнему ордера не откриваются

 extern int sl=60;

 extern int tp=180;

 double ma0,ma1,ma2;

 

int start()

  {

  ma0=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,0);

  ma1=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,1);

  ma2=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,2);

 if(OrdersTotal()==0 && ma0 > ma1 > ma2)

  OrderSend(NULL,OP_SELL,0.1,Bid,3,Ask+sl*Point,Ask-tp*Point,"",332,0,Blue);

  }

 
KoOr:

Убрав время открытия, но по прежнему ордера не откриваются

 extern int sl=60;

 extern int tp=180;

 double ma0,ma1,ma2;

 

int start()

  {

  ma0=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,0);

  ma1=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,1);

  ma2=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,2);

 if(OrdersTotal()==0 && ma0-ma1>0 && ma1-ma2>0)

  OrderSend(NULL,OP_SELL,0.1,Bid,3,Ask+sl*Point,Ask-tp*Point,"",332,0,Blue);

  }



Если у Вас уже есть неважно где, неважно какой хотя бы один уже открытый ордер, то новый не откроется.
 
KoOr:

Убрав время открытия, но по прежнему ордера не откриваются

 extern int sl=60;

 extern int tp=180;

 double ma0,ma1,ma2;

 

int start()

  {

  ma0=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,0);

  ma1=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,1);

  ma2=iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,2);

 if(OrdersTotal()==0 && ma0 > ma1 > ma2)

  OrderSend(NULL,OP_SELL,0.1,Bid,3,Ask+sl*Point,Ask-tp*Point,"",332,0,Blue);

  }

В MQL4 такая конструкция(ma0 > ma1 > ma2) не предусмотрена. Нужно её заменить на: ma0>ma1 && ma1>ma2.
 
Sepulca:

Если у Вас уже есть неважно где, неважно какой хотя бы один уже открытый ордер, то новый не откроется.
Нету не одного открытого и не один не открывается
 
To KoOr : symbol name for OrderSend function must be a string
Причина обращения: