[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 5. - 页 77

 

如何防止指标在一个单独的窗口中显示0.0水平?

指标值和0是否重叠?

 
TVA_11:

如何防止指标在一个单独的窗口中显示0.0水平?

指标值和0是否重叠?


你是如何发现的,让我知道。我也很碍事。
 
TVA_11:

如何防止指标在一个单独的窗口中显示0.0水平?

指标值和0是否重叠?


指定EMPTY_VALUE 而不是0
 

请告知为什么订单无法打开

 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);

  }


首先,只有一个订单可以打开,因为如果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);

  }

这种结构(ma0 > ma1 > ma2)在MQL4中没有提供。它应该被替换为:ma0>ma1 && ma1>ma2。
 
Sepulca:

如果你已经有了至少一个订单,不管在哪里,不管是什么,都不会有新的订单打开。
没有一个订单开放,也不会有一个订单开放
 
To KoOr :OrderSend函数 的符号名称必须是一个字符串