基于艾略特波浪理论的交易策略 - 页 45

 
if((H[k-1]<H[k])&&(H[k]>H[k+1])&&(H[k]>curHi)) для минимума аналогично.

剩下的就是证明在 "高点 "周围选择足够的区域作为给定样本的 "高点 "是合理的。我认为这个High必须是样本长度的+-30%的半径内的最大点?如果不是这样,就必须增加样本,以便一起确定两件事--极值和样本长度?你对此有什么看法?

如果你只是简单地在一个给定的区间上选择一个极值(即最高的高点(最低的低点)),在三个柱子中选择最高的(最低的),你基本上应该得到你需要的东西。虽然,验证这样一个极值的样本长度是否足够可能是有意义的,也就是说,所有的标准都应该起作用。我将进行试验

弗拉迪斯拉夫,你认为你会根据新的信息纠正默里指标的代码吗?我们正在等待新的版本;o)!


是的,这并不难理顺。然而,如果有必要,我将修复它。

祝你好运,祝你通过趋势。
 
如果我们简单地从给定区间的三个柱子中选择一个极值(即最高的高点(最低的低点)),并选择最高(最低)的柱子,原则上我们应该得到我们需要的东西。


通过对一个二维数组进行排序,可以非常简单地找到你所需要的东西。
阵列中有2列。第1个=高,在第2个中我们写上小节的编号。
排序(在MQL中,它是在第一列上进行的),将最大值放在第一列上,将最小值放在最后一列上(或者反过来)。
和最后一个位置上的最小值(或反之,取决于排序模式)。
从第二栏读出条形号码。

但我不知道这需要多少时间。
 
向这个非常有趣的主题的所有少数活跃成员 问好 :-)
目前,我正试图找出弗拉迪斯拉夫慷慨地给我们的方法,这意味着要搜索所有23页。在搜索的同时,我当然也在研究讨论者选择发布的代码片段。我理解,第1页上的代码。但尽管如此,为了以防万一,我想提请你注意,我认为错误分散计算函数包含一个错误,导致计算与公式不一致,并在运行时造成可能的除以零的错误。
double dispercia_oshibok(double data[], double centr) { int k,size; double disper=0; size=ArraySize(data); for(k=size-1;k>=0;k--) disper=disper+MathPow((data[k]-centr),2) ; if(size>1) disper=disper/(size-2) ; return(disper); }



也许这一行if(size>1)disper=disper/(size-2); 会更正确地写成if(size>1)disper=disper/(size-1); 请确认或反驳我的结论,因为我很遗憾,不找出最小的细节就无法继续前进。:-)预先感谢你。


 
继续阅读--它将回答这个问题。
 
哦...先生们。你所要做的就是说 "如此 "或 "不如此"。:-) 我已经读完了整个主题。可能错过了,所以我再搜索一下。在搜索时,我发现了一个有趣的网站,里面有各种算法 http://alglib.sources.ru/,我希望我不会认为这是一个广告。:-)
 
在我们的案例中,尺寸>=30,公式为分散=分散/(尺寸)。

ZS 这是更好的? :)
 
在我们的例子中,尺寸>=30,公式将是disper=disper/(size)<br / translate="no">。
这样更好吗? :)


一点也不。:-) 现在我需要紧急修复 "屋顶",因为久经沙场的布拉舍夫在 "4.3分散度和标准差的估计 "中计算除数的分散度的公式中出现了N-1。
木头是从哪里来的,罗什?:-)
 
ee。:-)现在我需要紧急修复 "屋顶",因为久经沙场的布拉舍夫在 "4.3.方差和标准差的估计。"中,在除数的方差计算公式中有N-1。<br / translate="no"> 木头是从哪里来的,Rosh ??:-)

事实上,当我们在估计近似误差的方差,而不是数据样本本身时,分母当然应该是N-2。https://c.mql5.com/mql4/forum/2006/06/disp_oshibok.zip
Bulashev甚至在他的书中就这一点举了一个具体的例子。
 
<br / translate="no">实际上,当我们在估计近似误差的方差,而不是数据样本本身时,分母当然应该是N-2。


是的,谢谢。现在明白了。我将更仔细地阅读这篇文章。
在这种情况下,我们最好把条件写成 "if(size>2)",不要诱导命运。代码必须是稳定的 :-)
 
在这种情况下,条件应该写成 "if(size>2)",以避免诱惑命运。代码必须是稳定的 :-)

这就像白天一样简单!:o)))
那份量身定做的剧本是作为瓦拉迪斯拉夫的问题发表的,并没有实际用途。
在我目前的代码中,方差的计算没有调用一个特殊的函数以节省计算时间,并进行了以下检查
if(size-2!=0) disper=disper/(size-2);
总的来说,我认为这种编程上的琐事根本不值得在这个问题上讨论。