新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1528

 
MakarFX:

当没有信号时,第一个指标的值是EMPTY_VALUE

做到以下几点

写 != EMPTY_VALUE不是更容易吗?
 
Alexey Viktorov:
写 != EMPTY_VALUE不是更容易吗?
如果该函数返回0呢?
 
Artyom Trishkin:
如果该函数返回0呢?

什么功能?在那里可以看到指标缓冲区的数值。如果设置了一个不可显示的值0.0,那么检查一下>0.0

关于交易、自动交易系统和策略测试的论坛

新手在MQL4和MQL5中的任何问题,对算法和代码的帮助和讨论

jarikn, 2021.07.04 14:04

但这是没有信号时缓冲区里的东西。我认为>0是不行的。



 
Alexey Viktorov:

不应使用停顿。与其使用止损,不如把挂单放在相反的方向上。

正是如此 :)谢谢你的主意
 
Alexey Viktorov:

什么功能?在那里可以看到指标缓冲区的数值。如果提供了一个非显示值0.0,则检查是否>0.0


iCustom()错误时返回什么?
 
小组
void OnTick()
  {
  

    int ns=0,nb=0;
    int nss[100],nbb[100];
    double BuyLIVEL[1000], SellLIVEL[1000];
    
   double prise;
if(NewBar_M1()==true){   
for(int i=10000; i>0; i--){
  
  
double zig_s=iCustom(NULL,0,"ZigZag",Depth,Deviation,Backstep,1,i);  
double zig_b=iCustom(NULL,0,"ZigZag",Depth,Deviation,Backstep,2,i);   
         
if(zig_s>0.0){ns++; nss[ns]=ns; SellLIVEL[ns]=zig_s; comments(Time[i],zig_s+170*Point,ns);}
if(zig_b>0.0){nb++; nbb[nb]=nb; BuyLIVEL[nb]=zig_b; commentb(Time[i],zig_b-70*Point,nb);}


string rez;
 for(int b=0; b<nss[ns]; b++){
    rez+="ns "+nss[b]+" sel urovni  "+SellLIVEL[b]+"\n";
Comment(rez);
}

  }}
   
  }
//+------------------------------------------------------------------+
void comments(datetime y2,double y3,string y4){
   string name="1";
   ObjectDelete(name);
   bool obcrt= ObjectCreate(0,name+(string)y4, OBJ_TEXT, 0, y2,y3);
    ObjectSetInteger(0,name+(string)y4,OBJPROP_COLOR,clrBlack);
    ObjectSetString(0,name+(string)y4,OBJPROP_TEXT,y4); 
    ObjectSetString(0,name+(string)y4,OBJPROP_FONT,"Arial"); 
    ObjectSetInteger(0,name+(string)y4,OBJPROP_FONTSIZE,12); 
      }
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж|
void commentb(datetime y2,double y3,string y4){
   string nama="2";
   ObjectDelete(nama);
   bool obcrt= ObjectCreate(0,nama+(string)y4, OBJ_TEXT, 0, y2,y3);
    ObjectSetInteger(0,nama+(string)y4,OBJPROP_COLOR,clrBlack);
    ObjectSetString(0,nama+(string)y4,OBJPROP_TEXT,y4); 
    ObjectSetString(0,nama+(string)y4,OBJPROP_FONT,"Arial"); 
    ObjectSetInteger(0,nama+(string)y4,OBJPROP_FONTSIZE,12); 
      }
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж|
bool NewBar_M1() {
   static int Ba;
   if(Ba != iBars(NULL,PERIOD_CURRENT)){ 
   Ba = iBars(NULL,PERIOD_CURRENT); return (true); } else {return (false);} } 
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж

帮助我理解 "之 "字形水平的必要性 上方阻力下方支撑 我得到的是abar codabr

 
顾问需要阵列中的支持 和阻力水平;较低的水平应该是支持,较高和较高的水平是阻力,以便顾问可以审查较高和较低的水平,并将其改写为一个新的水平
 
Artyom Trishkin:
当发生错误时,iCustom()会返回什么?

返回的值

指定的自定义指标的数字值自定义指标必须被编译(文件扩展名为EX4),并位于terminal_directory/MQL4//Indicators中。

没有关于错误的信息。很明显,没有提供这些东西。

 
Alexey Viktorov:

没有提到错误。很明显,他们没有被规定。

哦,好吧。我已经很多年没有看这四个人的资料了,因为我不需要。

 
Artyom Trishkin:

好的,那么。我已经很多年没有看这四个人的资料了,因为我不需要。

是的,我也查了一下来回答你。

原因: