- OnStart
- OnInit
- OnDeinit
- OnTick
- OnCalculate
- OnTimer
- OnTrade
- OnTradeTransaction
- OnBookEvent
- OnChartEvent
- OnTester
- OnTesterInit
- OnTesterDeinit
- OnTesterPass
OnDeinit
当Deinit事件发生时在指标和EA中调用这个函数。它被用于去初始化运行中的MQL5程序。
void OnDeinit(
|
参数
reason
[in] 去初始化原因代码。
返回值
无返回值
注意
在以下情况下,为EA和指标生成Deinit事件:
- 由于mql5程序附加的交易品种或图表周期发生变化而重新初始化之前;
- 由于输入变化而重新初始化之前;
- 卸载mql5程序之前。
reason参数可能有以下值:
常量 |
值 |
描述 |
---|---|---|
REASON_PROGRAM |
0 |
EA已停止调用ExpertRemove()函数的工作 |
REASON_REMOVE |
1 |
程序从图表移除 |
REASON_RECOMPILE |
2 |
程序重新编译 |
REASON_CHARTCHANGE |
3 |
交易品种或图表周期被改变 |
REASON_CHARTCLOSE |
4 |
图表已关闭 |
REASON_PARAMETERS |
5 |
由用户更改的输入参数 |
REASON_ACCOUNT |
6 |
由于账户设置的变化,另一个账户已被激活或已被重新连接到交易服务器 |
REASON_TEMPLATE |
7 |
应用另一个图表模板 |
REASON_INITFAILED |
8 |
OnInit()处理程序返回一个非零值 |
REASON_CLOSE |
9 |
程序端已关闭 |
EA去初始化原因代码可通过UninitializeReason()函数接收或者从预定义_UninitReason变量接收。
EA的OnInit()和OnDeinit()示例函数
input int fake_parameter=3; // 无用的参数
|
另见