ArrayMinumun() 返回最后一个值

Posted

技术标签:

【中文标题】ArrayMinumun() 返回最后一个值【英文标题】:ArrayMinumun () returning last value 【发布时间】:2021-07-12 13:56:31 【问题描述】:

我正在尝试在数组中找到在最后一个关闭订单和 Timecurrent() 之间确定的最小值。 我总是得到缓冲区的最后一个值,而不是数组的最小值。 我试图改变每个参数,但到目前为止没有运气。 请问您能帮帮我吗?

int ArrayCalcMin()
      
      datetime Timeorder=LastOrderTime();
      datetime Timeahora=TimeCurrent();
      datetime Times=Timeahora-Timeorder;
      
                
      int m = TimeMinute(Times);
      int h = TimeHour(Times);
      int d = TimeDay(Times);
      int bars = (((d-1)*24*60)+(h*60)+m)/240;
      int malookback=bars;
     
        
            
      double madaily[30000];
      double dllv;
      
      for(int i = 1; i < malookback; i++)
                  
      
      
      madaily[i] = iCustom(NULL,0,"Scolor8",0,i);
         
      
      dllv = iCustom(NULL,0,"Scolor8",0,
             ArrayMinimum(madaily,WHOLE_ARRAY,0));
     
     Print("Minimum value : ",dllv);
      
      if (dllv < 50)return(1);malookback=0; 
      else return(0);malookback=0;
      
   

提前谢谢你。 韩国 安德烈斯

【问题讨论】:

【参考方案1】:

您对如何使用ArrayMinimum() 感到困惑,而且您肯定过于复杂地查找要查看的栏。试试下面的代码

int ArrayCalcMin()

   double madaily[1], dllv;
   ArrayResize(madaily, iBarShift(NULL, 0, LastOrderTime()));

   for(int i=0; i<iBarShift(NULL, 0, LastOrderTime()); i++) madaily[i]=iCustom(NULL, 0, "Scolor8", 0, i);
   dllv = madaily[ArrayMinimum(madaily, WHOLE_ARRAY, 0)];

   Print("Minimum value : ",dllv);

   if(dllv<50) return(1);
   else return(0);

【讨论】:

以上是关于ArrayMinumun() 返回最后一个值的主要内容,如果未能解决你的问题,请参考以下文章

c# 多播委托的 异常处理 如果有返回值 只返回最后一个返回值

原型 - each() 中的函数 - 只返回最后一个值

python 生成器存储返回的最后一个值

Flask-Socketio 会话返回最后一个值

s-s-rS 多值参数只返回最后一个值

复选框数组返回nodejs中的最后一个检查值,而不是整个数组