编码帮助 - 页 684

 
bilbao:

亲爱的mladen

这个指标有一个小问题

你能修复它吗?

谨致谢意

有时会画错线,类似这张图片

嗨,毕尔巴鄂,是不是不需要重新喷漆了?
 
shiva12:
你好,Bilbao,它是不需要重画的吗?

它只有2马,但只画线

对繁忙的图表来说是完美的。

 
bilbao:

它只有2马,但只画线

对繁忙的图表来说是完美的

所以你的意思是它是一个非重绘的,但是,我看到它有时不更新。
 
mladen:
有一件事可能会阻止:在每一个tick上检查所有符号的范围,这对终端来说是一个负担(不管怎么做),会妨碍终端的正常工作。让它显示一些文本并不困难,但在每个tick上检查所有这些并没有一个 "快速的方法"(即使在使用最小的检查时)。

需要类似的这个。

 
bilbao:

需要类似的这个。

我知道

但你特别要求的是 "所有的符号"。我已经试图告诉你,如果你试图对所有的符号都这样做,会发生什么。对于有限的符号列表,没有这样的问题。现在你决定:是有限的符号列表(可以在CPU负担较小的情况下工作),还是 "所有的符号"(这几乎肯定会使你的终端速度疯狂下降)。

 

因为如果是针对有限的符号列表,就像这样简单。

#property indicator_chart_window
#property indicator_buffers 0

extern string Symbols="EURUSD;EURJPY;GBPUSD;GBPJPY;USDJPY";;

//------------------------------------------------------------------
//
//------------------------------------------------------------------
string aSymbols[];
int init()
{
   Symbols = StringTrimLeft(StringTrimRight(Symbols));
   if (StringSubstr(Symbols,StringLen(Symbols)-1,1) != ";")
                    Symbols = StringConcatenate(Symbols,";");

         //
         //
         //
         //
         //
   
         int s=0,i=StringFind(Symbols,";",s);
         string current;
         while (i > 0)
         {
            current = StringSubstr(Symbols,s,i-s);
               ArrayResize(aSymbols,ArraySize(aSymbols)+1);
                           aSymbols[ArraySize(aSymbols)-1] = current;
                           s = i + 1;
                           i = StringFind(Symbols,";",s);
         }
   return(0);
}
int start()
{
   string comment="";
   for (int i=0; i<ArraySize(aSymbols); i++)
      comment = comment+aSymbols[i]+" "+(string)((iHigh(aSymbols[i],PERIOD_D1,0)-iLow(aSymbols[i],PERIOD_D1,0))/MarketInfo(aSymbols[i],MODE_POINT))+" points\n";
      Comment(comment);
   return(0);
}
 

亲爱的mladen似乎是足够好,如果它是一个非重绘,但不更新和形成额外的线,最初提交的bilbao....

请尝试纠正

附加的文件:
LineMA.mq4  4 kb
 
shiva12:

亲爱的mladen似乎是足够好,如果它是一个非重绘,但不更新和形成额外的线,最初提交的bilbao....

请尝试纠正

这只是一个快速和肮脏的修复
附加的文件:
LineMA.mq4  4 kb
 
mladen:
这只是一个快速和肮脏的修复方法
哦,谢谢你,亲爱的主人
 
mladen:

因为如果是针对有限的符号列表,就像这样简单。

非常感谢 mladen