macd编程
① 外汇中macd怎么设置成两条线的
要在外汇交易软件MT4中将MACD指标设置为双线,可以按照以下步骤进行操作:
一、添加双线MACD指标
直接调用自定义双线MACD:
- 打开MT4软件。
- 在菜单栏中选择“插入”,然后选择“技术指标”——“自定义”——“双线MACD技术指标”。这样就可以直接调用已经编好的双线MACD指标。
手动添加并修改参数:
- 如果MT4中没有直接的双线MACD指标,可以通过修改标准的MACD指标参数来近似实现。
- 打开MT4,使用快捷键Ctrl+N调出“导航”窗口。
- 在技术指标列表中找到MACD,将其拖拽到图表界面。
- 修改MACD的参数。例如,将默认的12/26/9参数修改为12/26/1,然后在水平位一栏添加一条取值为“0”的水平线。这虽然不完全等同于双线MACD,但可以在一定程度上模拟其效果。
二、编写并添加双线MACD指标
如果MT4中没有现成的双线MACD指标,可以通过编写指标代码来实现:
编写双线MACD指标代码:
- 这需要一定的编程知识,特别是关于MQL4(MetaQuotes Language 4)的知识。
- 编写完成后,将代码保存为.mq4或.mq5文件。
将指标文件添加到MT4:
- 在电脑桌面上找到MT4的图标,右击选择“属性”,然后点击“打开文件位置”。
- 导航到“MQL4”文件夹,然后选择“Indicators”文件夹。
- 将编写好的双线MACD指标文件粘贴到“Indicators”文件夹中。
重启MT4并应用指标:
- 关闭并重新打开MT4软件。
- 在“插入”菜单中选择“技术指标”——“自定义”,此时应该能够看到新添加的双线MACD指标。
- 选择该指标并将其应用到图表上。
三、注意事项
- 在修改指标参数或添加新指标时,请确保已经充分了解指标的工作原理和参数含义。
- 双线MACD指标可能因编写者的不同而有所差异,因此在使用前最好先进行测试和验证。
- MT4平台本身不提供双线MACD指标,需要用户自行编写或寻找第三方提供的指标文件。
② 在MT4中如何把MACD加一条0轴线,再把红绿柱改成线状。源码如下。
在MT4中,想要在MACD指标上添加一条0轴线,并将红绿柱改为线状显示,可以通过自定义指标源码来实现。具体来说,你可以直接在MACD指标的基础上进行修改。首先,你需要打开MT4的编辑器,然后新建一个自定义指标。在源码中,你可以使用以下代码段来实现上述需求:
1. 添加0轴线:在MACD指标的绘制过程中,添加一个水平线表示0轴线。你可以通过以下代码实现:
int OnInit() {
LineCreate(0, 0, 0, 0, 0); // 创建一个空的线条对象
LineSetStyle(0, STYLE_SOLID, 1); // 设置线条样式
LineSetLevel(0, 0); // 设置线条的水平位置为0
}
2. 修改红绿柱为线状:红绿柱通常表示MACD柱状图,你可以通过绘制一条线来代替柱状图。具体代码如下:
int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const double &spread[]) {
if (prev_calculated < 2) return 0;
double macd[] = MACD(close, 12, 26, 9);
for (int i = 0; i < rates_total; i++) {
if (macd[i] > 0) {
LineSetLevel(0, macd[i]); // 红色线
} else {
LineSetLevel(0, macd[i]); // 绿色线
}
LineSetX1(0, time[i]);
LineSetX2(0, time[i]);
}
}
以上代码中,我们通过`LineCreate`创建了一条线条,并在`OnInit`函数中设置了其样式和位置。在`OnCalculate`函数中,我们根据MACD值的正负来决定线条的颜色,并绘制了相应的线。
需要注意的是,以上代码需要根据你的具体需求进行调整,以确保在不同的时间段和市场条件下能够正确显示。此外,你还需要确保你的MT4环境已经安装了必要的库文件,并且在编写代码时遵循MT4的编程规范。
总之,通过自定义指标源码,你可以在MT4中轻松实现MACD指标的个性化调整,使其更符合你的交易策略和偏好。