利用Visual Start重绘指标测试方法

Mike 2008.05.06 18:00 53 0 0
附件

作者:亚历山大·帕克

在这里,我将分享一种通过 FxmFishZigZagNonLagZigZagAFIRMATREND_alexcud 等指标测试重绘的方法。

你可以借助这个方法来研究这些指标的行为表现。

许多指标在每次新柱出现时都会在图表中重绘,这会给我们在视觉上评估指标的动态特性带来一些困难。

我所提出的代码允许你通过移动图形对象将最后一个柱(右侧)与指标相连。最方便的方式是使用一条垂直线。

操作步骤:

  • 将代码插入指标源代码中,找到计算周期并将其中的“0”替换为变量“start”。
  • 如果指标中有数组归零的循环,请不要替换该值。
  • 在图表中放置一条垂直线,并将其命名为“start”。
  • 手动移动这条线,等待指标重新计算。
  • 从过去向未来移动是最佳选择,因为并非所有指标都会“扫”到右侧的柱。

因此,我们首先放置名为“start”的垂直线,然后再添加指标。

指标的重新计算有两种情况:

  • 当一个新的报价到来时,会自动重新计算;
  • 如果没有(意外的)交易报价,则可以手动通过更改任何指标属性来重新计算。为此,你需要每次打开其属性窗口并更改任意颜色,因为更改颜色比更改数字更方便。

按照上述说明操作并不太方便。如果我们的图表中有多个指标,当没有报价到来时,我们需要逐个更改每个指标的属性。

然而,在开发此方法时,发现一个悖论:只有在某个没有线计算的指标在一个单独窗口中调用函数 IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)) 时,所有指标才会被强制重新计算。

一个有趣的事实是,当你更改这样一个“空”指标的属性时,所有其他指标都会在所有窗口中被强制重新计算。

巧合的是,TREND_alexcud 成为了那个启动指标。

因此,我编写了一个额外的启动指标 Visual_start_All

同时测试一组指标的说明:

要重新计算所有指标,改变 TREND_alexcud 或者 Visual_start_All 的属性。

以下是为 Visual_start 修改的文件,它们在下面的图中也展示了:

  • FxmFish
  • NonLagZigZag - 黄色
  • 标准 ZigZag - 红色线
  • AFIRMA - 两色,蓝色和红色
  • TREND_alexcud

希望这个方法能帮助你更好地理解和使用这些指标!

列表
评论 0