//+------------------------------------------------------------------+ //| 12.mq4 | //| Copyright 2025, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2025, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" #property strict //+-
我将帮你将这个交易策略转换为MQL4代码。以下是实现该策略的完整代码: ```mql4 //+------------------------------------------------------------------+ //| 12.mq4 | //| Copyright 2025, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2025, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" #property strict // 输入参数 input double LotSize = 0.01; // 交易手数 input int StopLoss = 100; // 止损点数 input int BollingerPeriod = 20; // 布林带周期 input double BollingerDeviation = 2;// 布林带标准差 input int ZigZagDepth = 12; // ZigZag深度 input int ZigZagDeviation = 5; // ZigZag偏差 input int ZigZagBackstep = 3; // ZigZag回退 input int FastEMA = 12; // MACD快线周期 input int SlowEMA = 26; // MACD慢线周期 input int SignalA = 9; // MACD信号线周期 int ticket = 0; // 订单编号 //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { // 检查是否有持仓 if(OrdersTotal() == 0) { // 获取指标值 double upperBand = iBands(NULL, 0, BollingerPeriod, BollingerDeviation, 0, PRICE_CLOSE, MODE_UPPER, 0); double lowerBand = iBands(NULL, 0, BollingerPeriod, BollingerDeviation, 0, PRICE_CLOSE, MODE_LOWER, 0); double zigzag1 = iCustom(NULL, 0, "ZigZag", ZigZagDepth, ZigZagDeviation, ZigZagBackstep, 0, 1); double zigzag2 = iCustom(NULL, 0, "ZigZag", ZigZagDepth, ZigZagDeviation, ZigZagBackstep, 0, 2); double macd = iMACD(NULL, 0, FastEMA, SlowEMA, SignalA, PRICE_CLOSE, MODE_MAIN, 0); // 检查买入条件 if(zigzag1 != 0 && zigzag2 != 0 && zigzag1 < lowerBand && zigzag2 > lowerBand && macd > -10 && macd < 5) { // 开买单 ticket = OrderSend(Symbol(), OP_BUY, LotSize, Ask, 3, Bid - StopLoss*Point, 0, "", 0, 0, clrGreen); } } else { // 检查平仓条件 double upperBand = iBands(NULL, 0, BollingerPeriod, BollingerDeviation, 0, PRICE_CLOSE, MODE_UPPER, 0); double zigzag1 = iCustom(NULL, 0, "ZigZag", ZigZagDepth, ZigZagDeviation, ZigZagBackstep, 0, 1); double zigzag2 = iCustom(NULL, 0, "ZigZag", ZigZagDepth, ZigZagDeviation, ZigZagBackstep, 0, 2); double macd = iMACD(NULL, 0, FastEMA, SlowEMA, SignalA, PRICE_CLOSE, MODE_MAIN, 0); if(zigzag1 != 0 && zigzag2 != 0 && zigzag1 > upperBand && zigzag2 < upperBand && macd > 20) { // 平仓 OrderClose(ticket, LotSize, Bid, 3, clrRed); } } } //+------------------------------------------------------------------+ ``` 代码说明: 1. 定义了输入参数,包括交易手数、止损点数、布林带和ZigZag指标参数等。 2. 在OnTick()函数中: - 检查是否有持仓 - 如果没有持仓,检查买入条件: * ZigZag指标线穿过布林带下轨线 * MACD值在-10和5之间 - 如果满足条件,以指定手数开买单 - 如果有持仓,检查平仓条件: * ZigZag指标线穿过布林带上轨线 * MACD值大于20 - 如果满足条件,平掉当前持仓 3. 使用了iBands()、iCustom()和iMACD()函数获取指标值。 注意:在实际使用前,建议在策略测试器中测试该EA,并根据实际市场情况调整参数。 [2025-04-22 16:27:33 | AI问答 | 1140点数解答]
- [DeepSeek] //+------------------------------------------------------------------+ //| 12.mq4 | //| Copyright 2025, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2025, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" #property strict //+-(1140点数解答 | 2025-04-22 16:27:33)167
- [字节豆包] //+------------------------------------------------------------------+ //| 12.mq4 | //| Copyright 2025, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2025, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" #property strict //+-(376点数解答 | 2025-04-22 16:30:23)176
- [字节豆包] //+------------------------------------------------------------------+ //| 12.mq4 | //| Copyright 2025, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2025, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" #property strict //+-(542点数解答 | 2025-04-22 19:11:15)183
- [字节豆包] //+------------------------------------------------------------------+ //| 12.mq4 | //| Copyright 2025, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2025, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" #property strict //+-(415点数解答 | 2025-04-22 19:15:40)224
- [DeepSeek] //+------------------------------------------------------------------+ //| ZigZagBollingerEA.mq4 | //| Copyright 2024, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2024, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #pro(504点数解答 | 2025-04-23 10:56:16)167
- [DeepSeek] //+------------------------------------------------------------------+ //| ZigZagBollingerEA.mq4 | //| Copyright 2024, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2024, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #pro(446点数解答 | 2025-04-23 10:57:55)159
- [字节豆包] 按照本框架整理代码策略用于外汇EA自动交易//+------------------------------------------------------------------+ //| 12.mq4 | //| Copyright 2025, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property strict //+------------------------------------------------------------------+ //| Expert initialization function | //+-------------------- 买入条件:阴阳烛的最低价同时低于周期为2的平均线周期和为20的布林带下轨线,并且随机指标(Stochastic)的值小于5,MACD值小于5,下买单,每根阴阳烛触发次数小于3,设置固定的止损值为30,固定止盈800。阴阳(405点数解答 | 2025-04-24 11:26:01)170
- [DeepSeek] 按照本框架整理代码策略用于外汇EA自动交易//+------------------------------------------------------------------+ //| 12.mq4 | //| Copyright 2025, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property strict //+------------------------------------------------------------------+ //| Expert initialization function | //+-------------------- 买入条件:阴阳烛的最低价同时低于周期为2的平均线周期和为20的布林带下轨线,并且随机指标(Stochastic)的值小于5,MACD值小于5,下买单,每根阴阳烛触发次数小于3,设置固定的止损值为30,固定止盈800。阴阳(1184点数解答 | 2025-04-24 11:27:55)164
- [字节豆包] 7-1 单向链表的创建与输出 分数 100 作者 王群芳 单位 合肥师范学院 本题目要求补充两个函数,实现如下功能: 输入若干个正整数,以-1结束,采取向链表中添加节点的方式来建立一个单链表,并输出这个单链表。 向链表尾部添加节点函数: Link AppendNode(Link head,int data); 其中Link结构定义如下: typedef struct link { int data; struct link *next; }*Link; head:链表头指针,如果head为NULL,则会新建头节点 data:要添加的节点数据值 函数返回值:添加节点后的链表头指针 输出链表函数: void DisplyNode(Link head); head :链表头指针 主函数样例: #include <stdio.h> #include <stdlib.h> typedef struct link { int data; struct link *next; }*Link; Link AppendNode(Link head,int d(351点数解答 | 2025-12-19 20:53:08)30
- [字节豆包] 7-1 单向链表的创建与输出 分数 100 作者 王群芳 单位 合肥师范学院 本题目要求补充两个函数,实现如下功能: 输入若干个正整数,以-1结束,采取向链表中添加节点的方式来建立一个单链表,并输出这个单链表。 向链表尾部添加节点函数: Link AppendNode(Link head,int data); 其中Link结构定义如下: typedef struct link { int data; struct link *next; }*Link; head:链表头指针,如果head为NULL,则会新建头节点 data:要添加的节点数据值 函数返回值:添加节点后的链表头指针 输出链表函数: void DisplyNode(Link head); head :链表头指针 主函数样例: #include <stdio.h> #include <stdlib.h> typedef struct link { int data; struct link *next; }*Link; Link AppendNode(Link head,int d(354点数解答 | 2025-12-19 22:00:13)52
- [DeepSeek] “可以成为千一的恋人吗”HTML源码,双击html文件可以本地运行,打开HTML页面,上面显示可以或者不要,越是拒绝,可以的按钮就会越来越大,直到点击可以为止 (这是界面图片,记得需要一个完整的框架你可以自行截图这个图片的适合比例) https://s3.bmp.ovh/imgs/2025/07/26/1d40e20226747686.jpg 真的不可以嘛?๑ᵒᯅᵒ๑ (这是第二张图片的切换) https://s3.bmp.ovh/imgs/2025/07/26/5422e5281214f40c.jpg 不要嘛,再想一想千一可以当乖乖的狗~ (第三张的图片) https://s3.bmp.ovh/imgs/2025/07/26/132a2d971d0b9a5b.jpg 不行,你必须当千一的恋人<(`^´)> (第四张的图片) https://s3.bmp.ovh/imgs/2025/07/26/77ed0e5e589807fb.jpg 千一真的真的超爱你的!٩(๛ ˘ ³˘)۶♥ (第五张的图片) https://s3.bmp.ovh/imgs/2025/07/26/215a4(1411点数解答 | 2025-07-26 08:37:17)173
- [字节豆包] ssd_send(0x11,ff,03,98,81,03); //gip_1 ssd_send(0x11,01,01,00); ssd_send(0x11,02,01,00); ssd_send(0x11,03,01,53); ssd_send(0x11,04,01,13); ssd_send(0x11,05,01,00); ssd_send(0x11,06,01,04); ssd_send(0x11,07,01,00); ssd_send(0x11,08,01,00); ssd_send(0x11,09,01,22); ssd_send(0x11,0a,01,22); ssd_send(0x11,0b,01,00); ssd_send(0x11,0c,01,01); ssd_send(0x11,0d,01,00); ssd_send(0x11,0e,01,00); ssd_send(0x11,0f,01,25);(64点数解答 | 2024-11-06 16:52:19)357