ID Lite Info MA:MetaTrader 5的移动平均指标解析

Mike 2015.07.30 21:47 28 0 0
附件

默认情况下,这款指标会在当前时间框架内显示两种不同移动平均线(MA)的九个值,包含前一个连续MA值之间的差异以及MA之间的点差。你可以设置数据的显示方式,包括正负偏移和/或四舍五入到所需的小数位数。需要注意的是,零(当前)柱的值不支持显示。

与其在 MetaTrader 4的版本相似,这个指标不仅可以显示连续值之间的差异,还可以显示点数的距离,而无需扩展源代码:

  • 可以显示柱子之间的,或与某一特定移动平均值之间的差异,同时考虑正负偏移和/或减少或“扩展”的小数位数;
  • 可以显示与...(等等);
  • 可以显示与...(等等);
  • 可以显示与...(等等);
  • 可以显示两条移动平均线之间的差异,考虑或不考虑正负偏移和/或小数位数的变化。

如下图所示,在3位小数的图表上,值被四舍五入到2位小数,也可以“扩展”到4位小数。

除此之外,该指标与其在 MetaTrader 4的版本完全相同:

在指标表中,MA(或柱子)标记和相邻连续值之间的差异的颜色会自动变化。当值变化为更大、更小和/或相等时,会应用不同的颜色。变色表示的两个移动平均线之间的差异(及/或柱子或偏移)在第五行表格中不支持。

计算和改变表格值的条件为:

  • 当新柱出现时;
  • 当用户改变指标的输入参数时;
  • 当用户改变图表的时间框架或符号时。

如果每个表格行的九个值在X轴上太多或太少,要改变单元格的数量以及计算和显示的数据量,需要将代码中的9改为大于等于2的正整数:

#define ARRAY_SIZE_X     9

附加信息:

  • 该指标表有一个与其MetaTrader 4版本相同的“秘密”:你可以通过点击表头下方的横向条来暂时隐藏它。
注意: 表头显示的是指标所显示的值的柱子编号。在指标参数中,你可以将起始柱编号更改为任何正非零值。
不显示零柱的原因是因为我编写该指标是为了个人需求,并不需要不断显示当前(零)柱的变化数据。然而,如果你需要显示当前正在形成的柱的每个tick变化的数据(结果),你需要实现稍微不同的代码结构。


实际上,对当前(零)柱的限制仅适用于表格中的值。因此,如果需要,你可以在代码中添加行,例如,实施当当前价格突破表中某些值时触发通知(警报等)。你还可以在表中某些“新”值小于/大于或等于某些“旧”值时触发通知。此外,你可以用其他所需的计算替换现有的MA或柱标记计算。

  • 你可以随时通过将光标悬停在表格单元格上来查看每条移动平均线的参数(在输入参数中设置或保持默认)。
注意: 仅当图表属性中启用了“显示对象描述”选项时,工具提示才会显示参数值。
  • 你可以设置显示每条移动平均线或柱标记的点数的所需正负偏移数据。
注意: 要使指标显示相邻柱的和/或和/或和/或及其之间的差异,而不是MA计算,你需要在输入参数中设置以下MA值: 使用这一组参数,指标将直接通过柱标记计算,而不获取iMA句柄。
  • 如果你需要将MA或柱值四舍五入或“扩展”到特定的小数位数,请在小数位数输入参数中设置所需值(小数位数)。
  • 你还可以在输入参数中关闭指标线的显示。
注意: 线条的颜色依赖于第一个计算柱值的方向,该值在第一个值的偏移:行中设置。绘制的线条向图表深度延伸的长度比表格中的MA值数量多出1柱(这使得可以看到表格中最后一根柱子与之比较的标记)。
  • 在输入参数中,你还可以改变表格的X和Y轴偏移、单元格大小、字体大小、颜色,并将表格置于前面(默认情况下,它在背景中呈现,以避免遮挡柱子)。

指标线、标记及高低价格之间的差异,四舍五入到2位小数的3位小数图表

图1. 指标线、标记及高低价格之间的差异,四舍五入到2位小数的3位小数图表


两条移动平均线之间的标记及差异,扩展到4位小数的3位小数图表

图2. 两条移动平均线之间的标记及差异,扩展到4位小数的3位小数图表


注意: 如果你在图表上添加了此指标,并且没有设置偏移和/或四舍五入的ID Lite Info MA输入参数,但该指标的线条与标准MA(相同参数)不匹配,则请不要急于得出计算准确性的结论。

打开数据窗口,检查标准移动平均线显示的小数位数(例如,它可能在3位小数图表上使用4位小数)。

在我看来,这种情况是正常且方便的,因为移动平均线是通过平均值计算的。例如:(1.2052 + 1.2057 + 1.2073)/3 = 1.2060667。因此,经过四舍五入或扩展的小数值增加了可能的使用场景。

如果线条应该完全匹配(其他参数相同),你可以在ID Lite Info MA输入参数的小数位数下拉列表中选择更大的小数位数。


内置移动平均线和ID Lite Info MA在3位小数图表上的显示

图3. 内置移动平均线和ID Lite Info MA(小数位数=当前图表)在3位小数图表上的显示

版本 1.11,日期:25.09.2015:

  • 将移动平均周期的最大值从500提高到3000柱。由于这个限制可以任意设置,你可以将其更改为任何其他正整数。它在函数中设置:
bool CheckInput(int period,string text)
  • 代码的小修小补和优化。
列表
评论 0