编码帮助 - 页 665

 
      double trendCurr = iCustom(Symbol(),0,"HalfTrend 2",PERIOD_CURRENT,Amplitude,alertsOn,alertsOnCurrent,alertsMessage,alertsNotification,alertsSound,alertsEmail,6,y);
      double trendPrev = iCustom(Symbol(),0,"HalfTrend 2",PERIOD_CURRENT,Amplitude,alertsOn,alertsOnCurrent,alertsMessage,alertsNotification,alertsSound,alertsEmail,6,y); 

我想知道我怎样才能从这个indi调用icustom?

在 "y "中出现了错误。

('y'-未声明的标识符)

附加的文件:
HalfTrend 2.mq4  19 kb
 
stevenpun:

我想知道我怎样才能从这个indi调用icustom?

在 "y "中出现错误。

('y' - 未声明的标识符)

这意味着你没有声明y变量。你必须把它声明出来(就像在你试图调用的代码中。

int y = iBarShift(NULL,TimeFrame,Time[i]);  
 
mladen:

这意味着你没有声明y变量。你必须声明它(就像在你试图调用的代码中一样。

我以前也试过,但出现了'TimeFrame'的错误--未声明的标识符"。

我只是对这段代码感到困惑,我应该把它复制到哪里?

{  int counted_bars=IndicatorCounted();
      if(counted_bars<0) return(-1);
      if(counted_bars>0) counted_bars--;
           int limit=MathMin(Bars-counted_bars,Bars-1);
           if (returnBars) { up[0] = limit+1; return(0); }
            if (TimeFrame!=Period())
            {
               int shift = -1; if (ArrowsOnFirstBar) shift=1;
               limit = MathMax(limit,MathMin(Bars-1,iCustom(NULL,TimeFrame,indicatorFileName,-99,0,0)*TimeFrame/Period()));
               for (int i=limit; i>=0; i--)
               {
                   int y = iBarShift(NULL,TimeFrame,Time[i]);  
                   int x = iBarShift(NULL,TimeFrame,Time[i+shift]); 


 
stevenpun:

我曾经尝试过,但出现了 "TimeFrame'- undeclared identifier "的错误。

我只是对这段代码感到困惑,我应该把它复制到哪里?


你不能只是复制代码的一部分,而没有声明所有的变量

在你的例子中,你也必须声明TimeFrame这个变量

 
mladen:

你不能只复制代码的一部分而不声明所有的变量。

在你的案例中,你也必须声明TimeFrame变量

是的,我已经解决了这个问题,谢谢 :D

现在我正在尝试添加其他的过滤器,如果有任何其他问题希望你能给我一些建议。

 
stevenpun:

是的,我已经解决了这个问题,谢谢 :D

现在我正在尝试添加其他的过滤器,如果有任何其他问题希望你能给我一些建议。

:)

编码愉快 :)

 

嗨,你能帮助我解决这个问题吗?似乎当价格突破一个不知何故的长期区间价格行动时,CCI不能很好地反映势头,只要价格稍有停顿并跟随趋势,CCI就开始发散。例如,在这张图片中,你可以看到在第二条垂直线的末端,CCI具有像价格一样的高势头。价格稍有停顿(第一个方框),但之后CCI开始发散。

我的问题是:为什么会这样?从指标编码的角度来看,什么类型的价格行为可能会导致这种情况?

我使用了3(10.20.40)个周期来显示这个问题,但我知道如果我使用像100这样的周期并增加像-500,+500这样的水平,这个问题就会消失(可能)。


mladen:

:)

快乐编码:)

 
请接受我最诚挚的歉意,我没有注意到它是反编译的,否则我就不会发布它......我想我当时很匆忙。
 
KumoBreake:

嗨,你能帮助我解决这个问题吗?似乎当价格突破某个长期范围的价格行为时,cci不能很好地反映势头,只要价格稍有停顿并跟随趋势,cci就开始发散。例如在这张图片中,你可以看到在第二条垂直线的末端,cci与价格一样具有很高的势头。

我的问题是:为什么会这样?从指标编码的角度来看,什么类型的价格行为可能会导致这种情况?

我使用了3(10.20.40)个周期来显示这个问题,但我知道如果我使用像100这样的周期并增加像-500,+500这样的水平,这个问题就会消失(可能)。


对不起,我不知道。可以肯定的是,我们不能在不调整整个数学模型的情况下过滤掉单个事件,这将意味着,在你描述的情况下,要有一个全新的CCI(如果在这种情况下会重新命名的话)。
 
mladen:
对不起,我不知道。可以肯定的是,我们不能在不调整整个数学模型的情况下过滤掉单个事件,这将意味着,在你描述的情况下,要有一个全新的CCI(如果在这种情况下会重新命名的话)。
我有一些想法,但需要更多的研究,我稍后会给你答复。
原因: