MetaTrader 4 的 ID Lite Info MA 指标详解

Mike 2016.02.01 17:57 19 0 0
附件

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

这个指标可以简单地显示柱子的 开盘最高最低收盘 标记,以及它们之间的差异(例如,从高到低的蜡烛/柱尺寸显示)。

在 MetaTrader 5 的 代码库 中也有相同的指标。

对于 MA 标记(或柱)值及相邻值之间的差异,指标表中的颜色会自动变化。不同的颜色表示值的增大、减小和/或相等。指标没有提供移动平均值(柱或偏移量)之间差异的颜色变化。数值的计算和修改会在新柱到达时、指标参数变化时,或者时间框架或图表符号发生变化时进行。

如果每个表格行的九个值太多或太少,你可以通过修改以下代码行中的 9 为大于等于2的正数,来更改单元格数量和显示的数据量:

#define ARRAY_SIZE_X     9

附加信息:

  • 该指标表有一个“秘密”:如果在图表上暂时不需要它,可以通过点击表头下方的横条来隐藏。
注意:表头显示了指标显示 MA 值的柱编号。在指标参数中,你可以将起始柱编号更改为任何正的非零值。

不包括零柱的原因是,不需要持续显示当前(零)柱的不断变化的数据。如果你需要显示当前正在形成的柱的数据(结果),则需要实现稍微不同的代码结构。

这里附带的代码在消耗计算资源方面相对节省,同时由于多重条件检查和代码中指定的限制,不会在每个 tick 上计算和重新计算 MA 和差异的值。

实际上,当前(零)柱的限制仅适用于表中的值。因此,如果需要,你可以在代码中添加行,例如,当当前价格突破表中某些值时触发通知(警报等),这些值以前设置为单独的全局变量。当表中的某些“新”值小于/大于或等于某些“旧”值时,也可以触发通知。同时,你还可以用其他所需的计算替换现有的 MA 或柱标记计算。
  • 你可以随时通过将光标悬停在表格单元格上来查看每个移动平均线的参数(在输入参数中设置或保持默认)。
注意:只有在图表属性中开启“显示对象描述”选项时,参数值的工具提示才会显示。
  • 你可以设置以每个移动平均线或柱标记为基准的所需正负偏移量(以点为单位)来显示数据。
注意:要使指标显示相邻柱的 开盘最高最低收盘 及它们之间的差异,而不是 MA 计算结果,你需要在输入参数中设置以下 MA 值:
使用这组参数,指标将直接通过柱标记计算值,而不调用 iMA 函数。
  • 如果你需要将 MA 值四舍五入到特定的小数位,请在输入参数中设置所需的小数位数。
  • 你也可以在输入参数中关闭指标线的显示。
注意:线条颜色取决于第一个计算的柱值的方向,这在下面的行中设置:“偏移(第一个值的柱):”。指标线在图表中绘制的深度比表中 MA 值的数量多一个柱(这使得我们可以看到表中最后一个柱与哪个标记进行对比)。
  • 在输入参数中,除了 MA 设置外,你还可以更改表的 X 和 Y 轴偏移、单元格大小、字体大小、颜色,并将表置于前面(默认情况下,表渲染在背景中,以避免遮挡柱子)。

版本 1.81(2015年8月5日):

对代码进行了调整,没有增加或减少指标的能力。进行调整以提高与 MetaTrader 5 中相同指标代码的相似性(同时提高代码的正确性和节省其操作资源)。

版本 1.86(2015年9月25日):

  • 移动平均线周期的最大值限制在代码中从 500 增加到 3000 柱。由于该限制由用户设置,你可以根据需要将此值更改为其他正整数。这在函数体中设置:
bool CheckInput(int period,string text)
  • 对代码进行了小的外观和安全优化编辑。
列表
评论 0