ZigZag信号灯指标 - MetaTrader 4交易者必备工具

Mike 2019.12.23 00:37 9 0 0
附件

大家好,今天我们来聊聊ZigZag信号灯指标,这个工具在MetaTrader 4平台上非常实用。

这个指标会在每个ZigZag转折点上标记一个信号灯(我们通常称之为信号灯),并支持四种不同的ZigZag评估长度。这意味着ZigZag不会在图表上直接绘制线条,而只是标记出转折点的位置。

这个算法相对简单,源自于“!!!-MT4 SEMAFOR”中的一个帖子,实现方法包括“DetectNewSwing”、“LoadIndiBuffers”和“SetSwingBarValues”。原版在策略测试器中无法运行(我认为它只能在历史数据上正确显示标记),而我们这个版本在策略测试器中表现良好。

我相信这个实现的算法基本上忠于原版,标记的位置也与原版相符,尽管可能存在一些小瑕疵。如果需要的话,还可以在这些函数中实现更复杂的算法。

标记的显示方式如下:

  • 一级标记:用小白点表示
  • 二级标记:在白点周围添加红色圆圈
  • 三级标记:在白点和红圈周围添加黄色圆圈
  • 四级标记:在所有标记周围添加绿色圆圈


用户可以自定义长度,默认设置如下:

  • extern int Level_1_Length = 21; // ZigZag 1检测长度
  • extern int Level_2_Length = 40; // ZigZag 2检测长度
  • extern int Level_3_Length = 60; // ZigZag 3检测长度
  • extern int Level_4_Length = 72; // ZigZag 4检测长度

此外,我们还添加了两个控制按钮,一个用于开关显示标记的价格值,另一个用于清除或重新显示所有指标标记。只需点击这两个文本对象即可在开和关之间切换。


我认为我在代码的结构和注释上做得还不错,方便对代码感兴趣的朋友了解。

列表
评论 0