解释MQL4循环标识符wHistory.mq4(自定义技术指标)

时间:2015-08-11 12:28:45

标签: indicator algorithmic-trading mql4 metatrader4 mt4

作为MQL4新手,我有一些问题,如果有人可以详细回答,我会非常高兴。

a)有人可以解释一下循环标识符(MT4指标,例如找到的here)是如何工作的?!

b)计算哪个值来决定是否给出信号?

c)如果此蜡烛不是当前蜡烛,那么给定蜡烛的信号是否也会消失(重新绘制)?

非常感谢提前!

1 个答案:

答案 0 :(得分:0)

a)它是如何运作的,丹尼尔?

请注意, MQL4 指标具有特殊执行模式,这与 EA交易类型{{ 1}} - 代码

也就是说,您将能够在上下文中读取代码如何“逐步”计算(以增量为单位,以便在正确添加或修改指标时不阻止主要执行流程)。此功能对于指标是独一无二的,因此如果您从某种高级交易理念进行逆向工程或设计自己的指标,则必须小心谨慎。

可以说明, MQL4 的哪一部分存在问题。如果你想进行详细的解码工作,请不要犹豫是否发布代码块。

无论如何,请务必仔细阅读 630 SLOC-s ,以了解技术指标代码中的 MQL4 Help 处理(OnTick() in “old” - start() )。该过程对处理延迟非常敏感,因为所有技术指标在 “new” - MQL4执行引擎中共享一个共同线程(MT4终端 Build 6xx +

b)计算哪个值来决定信号检测?

信号来自 MQL4

周围的代码
MQL4-source line 400 .. 480

c)是,请检查评论

作为对 if ( alertsOption == 0 ) { ... } } if ( alertsOption == 1 ) { // buy if ( <{Major|Minor}>CycleBuy[SignalIndex] == -1 && <{Major|Minor}>BottomAlertTime < Time[SignalIndex] ) { ... } } if ( alertsOption == 2 ) { // sell if ( <{Major|Minor}>CycleBuy[SignalIndex] == 1 && <{Major|Minor}>BottomAlertTime < Time[SignalIndex] ) { ... } ... } 的评论明确表示,有重新绘制和即将发生的算法尝试处理此类情况。