//=================================================================================================// Замена расчета среднего на стандартную функцию//=================================================================================================// Старый вариант расчета// for(int j = 0; j < nPeriod; j++)// {// a = a + (iHigh(NULL, 0, i + j) + iLow(NULL, 0, i + j) + iClose(NULL, 0, i + j) * 2) / 4;// } // MaBuffer[i] = a / nPeriod;// a = 0;//=================================================================================================// Новый вариант расчета
MaBuffer[i]=iMA(NULL, 0, nPeriod, 0,MODE_SMA,PRICE_WEIGHTED,i);
//=================================================================================================
以下是该指标的原始start()函数
该函数采用计算平均数的方式。它需要被替换成一个标准功能。
它看起来像这样
附上带有修正的指标变体
现在谈谈指标本身的逻辑(我并不是说提议的版本是理想的)。
我只是更喜欢它
一个很好的例子。但这更多是关于优化而不是逻辑。
还有逻辑,思维的逻辑。
第三种选择是完全放弃指标中的逻辑条件。问题出现了--这是否可能。
让我们试试
为此,让我们添加几个逻辑变量
现在启动函数的全部代码是
如果(counted_bars < 0) 返回(-1)。
这句话是基于什么逻辑出现的?
如果(counted_bars < 0) 返回(-1)。
这句话是基于什么逻辑出现的?
这不是我的线。这是作者的
start()的最佳代码
工作选项的比较分析
最佳选择2。布尔条件不能被丢弃
选项5是基于它的
忘记了剧本的事
忘记了剧本的事
我想对吉普 批评的部分进行补充。
我不明白,既然我们可以这样写,为什么还要在布尔变量上跳舞。