© 本贴为 yuwentao4761 原创/首发,严禁抄袭!
最后由 yuwentao4761 于 2024-9-19 12:45 编辑
在MQL4中存在三种预定义名称函数:
init() 在载入时调用,可以用此函数在开始自定义指标或者自动交易之前做初始化操作。
start() 是基本函数。对于智能交易,在下一个替克进入之后被调用。对于客户指标,在指标添加到图表之后,客户端开始(如果指标添加到图表)并且下一个替克进入之后,函数被调用。对于脚本,在脚本被添加到图表之后立即执行并初始化。如果在模板中不存在start()函数,模板 (智能交易,脚本或客户指标) 不能开启。
deinit() 当数据变动时触发,对于自定义指标或者自动交易的编程主要依靠此函数进行
预定义函数需要一些参量。不过,当这些参量被客户端调用时,外部没有参量提供。 start(), init()和 deinit()函数从模板的任何一点按照常规调用,等于其他函数。
不建议从init()函数调用 start()函数或是执行交易业务,作为图表数据,市场开价格。模板的初始化会出现残缺。这时,init() 和 deinit() 函数必须尽可能结束运行。在调用start()函数之前,尝试重新全面开启运行。
- #property copyright "[CopyRight2022]小鱼儿"
- #property link "www.webchm.com"
- #property version "3.00"
- #property strict
- //+------------------------------------------------------------------+
- //| Custom indicator initialization function |
- //+------------------------------------------------------------------+
- int init()
- {
- //---- indicators
- return(0);
- }
- //+------------------------------------------------------------------+
- //| Custom EA function |
- //+------------------------------------------------------------------+
- int start()
- {
-
- return(rates_total);
- }
- //+------------------------------------------------------------------+
- //| Custom indicator deinitialization function |
- //+------------------------------------------------------------------+
- int deinit()
- {
-
- return(0);
- }
复制代码
|
|