2019独角兽企业重金招聘Python工程师标准>>>

一、交易策略

入场原则:

做多入场:30分钟图上10周期EMA向上交叉20周期EMA 做空入场:30分钟图上10周期EMA向下交叉20周期EMA

出场原则:

做多出场:30分钟图上10周期EMA向下交叉20周期EMA 做空出场:30分钟图上10周期EMA向上交叉20周期EMA![]

二、EA源码

//+------------------------------------------------------------------+
//|                                                 myEA20180104.mq4 |
//|                                             Copyright 2017,CuiYi |
//|                                                1010333562@qq.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017,CuiYi"
#property link      "1010333562@qq.com"
#property version   "1.00"
#property strict
#define MAGICMA 19880305extern double Lots=1;int CalculateCurrentOrder(string symbol){int buys=0,sells=0;for(int i=0;i<OrdersTotal();i=i+1){if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)  break;if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MAGICMA){if(OrderType()==OP_BUY)    buys++;if(OrderType()==OP_SELL) sells++;}}if(buys>0)   return(buys);else       return(-sells);}void CheckForOpen(){double ma1,ma2,ma3,ma4;int res;ma1=iMA(NULL,30,10,6,MODE_EMA,PRICE_CLOSE,0);ma2=iMA(NULL,30,20,6,MODE_EMA,PRICE_CLOSE,0);ma3=iMA(NULL,30,10,6,MODE_EMA,PRICE_CLOSE,1);ma4=iMA(NULL,30,20,6,MODE_EMA,PRICE_CLOSE,1);if(ma1>ma2 && ma3<ma4){res=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0,"",MAGICMA,0,Blue);return;}if(ma1<ma2 && ma3>ma4){res=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0,"",MAGICMA,0,Red);return;}}void CheckForClose(){double ma1,ma2,ma3,ma4;ma1=iMA(NULL,30,10,6,MODE_EMA,PRICE_CLOSE,0);ma2=iMA(NULL,30,20,6,MODE_EMA,PRICE_CLOSE,0);ma3=iMA(NULL,30,10,6,MODE_EMA,PRICE_CLOSE,1);ma4=iMA(NULL,30,20,6,MODE_EMA,PRICE_CLOSE,1);for(int i=0;i<OrdersTotal();i++){if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;if(OrderMagicNumber()!=MAGICMA || OrderSymbol()!=Symbol()) continue;if(OrderType()==OP_BUY){if(ma1<ma2 && ma3>ma4) OrderClose(OrderTicket(),Lots,Bid,3,White);break;}if(OrderType()==OP_SELL){if(ma1>ma2 && ma3<ma4)   OrderClose(OrderTicket(),Lots,Bid,3,White);break;}}}    void start(){if(Bars<100 || IsTradeAllowed()==false) return;if(CalculateCurrentOrder(Symbol())==0) CheckForOpen();else CheckForClose();}

三、系统回测

1.EUR/USD

回测时间:2017/01/01 - 2018/01/01

时间周期:M30

净值图:

回测报告:

20180204更新:

//+------------------------------------------------------------------+
//|                                            5&15min双均线交易.mq4 |
//|                                             Copyright 2018,CuiYi |
//|                                                1010333562@qq.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018,CuiYi"
#property link      "1010333562@qq.com"
#property version   "1.00"
#property strict
#define MAGICMA 19880305extern double Lots=0.08;int CalculateCurrentOrder(string symbol){int buys=0,sells=0;for(int i=0;i<OrdersTotal();i=i+1){if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)   break;if(OrderSymbol()==Symbol() && OrderMagicNumber()==MAGICMA){if(OrderType()==OP_BUY)  buys++;if(OrderType()==OP_SELL) sells++;}}if(buys>0)   return(buys);else       return(-sells);}void CheckForOpen(){double ma1,ma2,ma3,ma4;int res;ma1=iMA(NULL,30,9,1,MODE_EMA,PRICE_CLOSE,1);ma2=iMA(NULL,30,18,1,MODE_EMA,PRICE_CLOSE,1);ma3=iMA(NULL,15,9,1,MODE_EMA,PRICE_CLOSE,1);ma4=iMA(NULL,15,18,1,MODE_EMA,PRICE_CLOSE,1);if(ma1>ma2 && ma3>ma4){res=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0,"",MAGICMA,0,Blue);return;}if(ma1<ma2 && ma3<ma4){res=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0,"",MAGICMA,0,Red);return;}}void CheckForClose(){double ma1,ma2,ma3,ma4;ma1=iMA(NULL,30,9,1,MODE_EMA,PRICE_CLOSE,1);ma2=iMA(NULL,30,18,1,MODE_EMA,PRICE_CLOSE,1);ma3=iMA(NULL,15,9,1,MODE_EMA,PRICE_CLOSE,1);ma4=iMA(NULL,15,18,1,MODE_EMA,PRICE_CLOSE,1);for(int i=0;i<OrdersTotal();i++){if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)    break;if(OrderMagicNumber()==MAGICMA || OrderSymbol()==Symbol()){if(OrderType()==OP_BUY){if(ma3<ma4)   {if(!OrderClose(OrderTicket(),Lots,Bid,3,White))Print("OrderClose error ",GetLastError());}break;}if(OrderType()==OP_SELL){if(ma3>ma4){if(OrderClose(OrderTicket(),Lots,Ask,3,White))Print("OrderClose error ",GetLastError());}break;}}}}void start(){if(Bars<100 || IsTradeAllowed()==false) return;if(CalculateCurrentOrder(Symbol())==0) CheckForOpen();else CheckForClose();}

20180205更新:

//+------------------------------------------------------------------+
//|                                                15min均线交易.mq4 |
//|                                             Copyright 2018,CuiYi |
//|                                                1010333562@qq.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018,CuiYi"
#property link      "1010333562@qq.com"
#property version   "1.00"
#property strict
#define MAGICMA 19880305extern double Lots=0.08;int CalculateCurrentOrder(string symbol){int buys=0,sells=0;for(int i=0;i<OrdersTotal();i=i+1){if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)   break;if(OrderSymbol()==Symbol() && OrderMagicNumber()==MAGICMA){if(OrderType()==OP_BUY)  buys++;if(OrderType()==OP_SELL) sells++;}}if(buys>0)   return(buys);else       return(-sells);}void CheckForOpen(){double ma1,ma2;int res;ma1=iMA(NULL,15,9,1,MODE_EMA,PRICE_CLOSE,1);ma2=iMA(NULL,15,18,1,MODE_EMA,PRICE_CLOSE,1);if(ma1>ma2){res=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0,"",MAGICMA,0,Blue);return;}if(ma1<ma2){res=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0,"",MAGICMA,0,Red);return;}}void CheckForClose(){double ma3,ma4;ma3=iMA(NULL,15,9,1,MODE_EMA,PRICE_CLOSE,1);ma4=iMA(NULL,15,18,1,MODE_EMA,PRICE_CLOSE,1);for(int i=0;i<OrdersTotal();i++){if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)  break;if(OrderMagicNumber()==MAGICMA || OrderSymbol()==Symbol()){if(OrderType()==OP_BUY){if(ma3<ma4)   {if(!OrderClose(OrderTicket(),Lots,Bid,3,White))Print("OrderClose error ",GetLastError());}break;}if(OrderType()==OP_SELL){if(ma3>ma4){if(OrderClose(OrderTicket(),Lots,Ask,3,White))Print("OrderClose error ",GetLastError());}break;}}}}void start(){if(Bars<100 || IsTradeAllowed()==false) return;if(CalculateCurrentOrder(Symbol())==0) CheckForOpen();else CheckForClose();}

转载于:https://my.oschina.net/u/3093769/blog/1602346

MQL4:双均线交易系统相关推荐

  1. 写一个双均线交易系统

    写一个双均线交易系统需要完成以下步骤: 数据获取:从金融市场获取股票价格数据. 数据预处理:对获取的数据进行清理.格式化等处理. 计算均线:使用算术平均数等方法计算出短期均线和长期均线. 生成交易信号 ...

  2. MQL4: 双重时间框架双均线交易系统

    2019独角兽企业重金招聘Python工程师标准>>> 一.交易策略 二.EA源码 //+---------------------------------------------- ...

  3. 双均线通道过滤交易系统

    本策略简介 传统的双均线交易系统是通过快速均线与慢速均线的交叉来捕捉趋势:当快速均线上穿慢速均线的时候,出现买入信号,指示有一波上涨趋势:当快速均线下穿慢速均线的时候,出现卖出信号,指示有一波下跌趋势 ...

  4. 四均线交易系统(Four Set of MA Crossover System)

    四均线交易系统 名词术语 期货 头寸:承诺买卖合约的最初部位 多头:买进合约者 空头:卖出合约者 均线多头排列:看涨 均线空头排列:看跌 K线图(蜡烛图) Bar 入场 多头入场 空头入场 出场 多头 ...

  5. 开源量化框架Catalyst中文教程(3)——双均线策略

    GitHub:https://github.com/enigmampc/catalyst 官方文档:https://enigma.co/catalyst/index.html 参考视频:网易云课堂&l ...

  6. 2017双11交易系统TMF2.0技术揭秘,实现全链路管理

    摘要: 本文是<2017双11交易系统TMF2.0技术揭秘>演讲整理,主要讲解了基于TMF2.0框架改造的交易平台,通过业务管理域与运行域分离.业务与业务的隔离架构,大幅度提高了业务在可扩 ...

  7. python 量化交易_Python量化交易,tushare与talib学习示例演示,双均线(DMA)买卖策略...

    本篇文章为tushare与talib的学习示例,通过双均线策略演示如何使用talib与tushare.下面我们对代码进行详细解析. 引入3个包,分别是talib,tushare和pandas impo ...

  8. PyQt5_pyqtgraph双均线组合工具

    目录 双线组合概念 双线组合交易原则 交易原则翻译为代码逻辑 策略代码实现 运行工具代码 执行 验证策略思想 优化策略 数据 双线组合概念 双线组合又称两条均线组合,是由一条时间周期较短的均线和一条时 ...

  9. Python双均线策略回测(2021-10-12)

    Python双均线策略回测 1.择时策略简介 根据百度百科的解释,择时交易是指利用某种方法来判断大势的走势情况,是上涨还是下跌或者是盘整.如果判断是上涨,则买入持有:如果判断是下跌,则卖出清仓,如果是 ...

最新文章

  1. [转]php-mobile-detect
  2. 内存256KB设备也能人脸检测,微软提出用RNN代替CNN | NeurIPS 2020
  3. hp-ux mysql_HP-UX 安装MySQL
  4. i3处理器能运行python吗_老cpu(10年前的core i3 不支持avx指令集)安装tensorflow2.0...
  5. Ubuntu 使用微信开发者工具
  6. Python + Selenium 爬取网易云课堂课时标题及时长
  7. Windows10下自定义桌面快捷方式图标--以Spyder为例
  8. 87.3 laravel中常见问题以及解决方案
  9. 计算机专业的英文简历范文带翻译,计算机软件专业英文简历范文 英文简历范文带翻译...
  10. java jbutton 背景颜色_java – 在Windows上设置JButton背景颜色
  11. 网页代码扒ppt_在网页中在线浏览ppt文档
  12. 软件工程课程周学习进度报告——第三周
  13. Spark资源调度机制源码分析--基于spreadOutApps及非spreadOutApps两种资源调度算法
  14. 我的智能充电桩开发笔记(二):系统硬件电路设计概述
  15. Visual Studio 2019调试HTK代码
  16. 005-WebBuilder使用结构元素进行网页布局
  17. MPC5744P-PIT模块(周期中断定时器)
  18. 有感于河南移动网站速度慢----堂堂的河南移动居然
  19. GitHub上传自己的项目及项目更新
  20. Web前端 | HTML嵌入JS代码的三种方式

热门文章

  1. css常用中文字体的英文名称写法
  2. 不谋全局者,不足谋一域-预布局-PCB系列教程1-11
  3. 4s店维修保养记录服务器,4s店维修保养记录怎么查?免费查询汽车维修保养记录方法...
  4. 程序猿关注的微信公众号和网站--小结
  5. 网络分流器|网络分流器|100G分流器不仅仅是带宽升级
  6. 一个Servlet同一时刻只有一个实例。 当多个请求发送到同一个Servlet,服务器会为每个请求创建一个新线程来处理。
  7. 【Win10】SVN客户端的账号密码存放在哪里
  8. Linux command(sar)
  9. 云服务器网站搬家,云服务器之间的搬家
  10. html5画布时钟cnsd,canvas动画时钟