MT4自定义指标通常由四个核心部分构成:
(1)文件头部
(2)参数、变量和数组的定义
(3)初始化函数init()
(4)主函数start()

一、文件头部,也称为预处理程序
预处理程序以“#”开头,行尾不需要添加语句结束符“;”
常用的预处理程序有:
1、#property indicator_chart_window
该语句用于将指标显示在主图中,例如均线、SRA等类型的指标会用到。
2、#property indicator_separate_window
该语句用于将指标显示在副图中,如MACD、RSI、威廉等指标会用到。
3、#property indicator_buffers 3
用于设定显示3根指标线。
4、#property indicator_color1 Red
用于设定第1根指标线的颜色为红色。
5、#property indicator_width1 1
用于设定第1根指标线的粗细为1。
6、#property indicator_level1 0.00
用于在0.00值位置绘制一条水平虚线。
二、参数、变量和数组的定义
全局性的参数、变量和数组在此处定义,而局部变量则可以在start()函数内部定义。
三、初始化函数init()
init()函数在自定义指标加载时运行一次,其主要功能是进行“设置”。如果指标需要绘制线条,则通常会使用到此函数。
四、主函数start()
当数据发生变动时,start()函数会被触发,数据每变动一次,该函数就会执行一次。自定义指标的编程工作主要依托于此函数完成。
start()函数的主要作用是获取数值并为指标线赋值,同时报警功能也可以在此函数内实现。
此外,还有一个反初始化函数deinit()。
deinit()在自定义指标被卸载时运行一次,可用于清除指标加载时由init()所做的初始化操作。
资深外汇分析师
由多名资深外汇分析师组成的专业团队,拥有平均15年以上的市场分析经验,擅长技术分析和基本面分析相结合的交易策略。