如何用MQL4语言 编写外汇趋势交易程序

 时间:2026-02-15 18:04:32

1、新建EA程序:打开MQL4编辑器,新建一个EA,起名MyEA,点击下一步进入编程界面

如何用MQL4语言 编写外汇趋势交易程序

如何用MQL4语言 编写外汇趋势交易程序

2、界面上三个函数

OnInit()是初始化函数,当载入EA的时候执行一次;

OnDeinit(const int reason)是当关闭EA的时候执行一次;

void OnTick()函数,是当每个价格到达的时候执行;

3、在开头部分需要填写的外部可设置的参数(包括止盈,止损,交易手数,两个均线的周期 ,一个20日均线,一个5日均线)

extern double TakeProfit = 50;   //止盈点数

extern double StopLoss = 20;     //止损点数

extern double Lots = 0.1;        //交易手数

extern double Poin;              //平台最小报价单位

extern int MAPeriodSlow=20;      //20日移动平均

extern int MAPeriodfast=5;       //5日移动平均

如何用MQL4语言 编写外汇趋势交易程序

4、在OnInit()函数中编写初始化函数,主要是为了统一不同币种最小报价单位

          if (Point == 0.00001) Poin = 0.0001; //6 digits

          else if (Point == 0.001) Poin = 0.01; //3 digits (for Yen based pairs)

          else Poin = Point; //Normal

如何用MQL4语言 编写外汇趋势交易程序

5、在OnDeinit()函数中填写逻辑和交易函数

 double myMAslow,myMAfast,myMAslow1,myMAfast1;

      int i=0;

      myMAslow=iMA(Symbol(),0,MAPeriodSlow,0,MODE_SMA,PRICE_CLOSE,0);

      myMAfast=iMA(Symbol(),0,MAPeriodFast,0,MODE_SMA,PRICE_CLOSE,0);

      

      myMAslow1=iMA(Symbol(),0,MAPeriodSlow,0,MODE_SMA,PRICE_CLOSE,1);

      myMAfast1=iMA(Symbol(),0,MAPeriodFast,0,MODE_SMA,PRICE_CLOSE,1);

      

      //上穿买入 平掉趣吩卖单

      if(myMAfast>myMAslow && myMAfast1<myMAslow1)

      {

         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderType()==OP_SELL) 

            OrderClose(OrderTicket(),OrderLots(),Ask,3,CLR_NONE);

            

         if(OrdersTotal()==0) 

            OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Poin,Ask+TakeProfit*Poin,"TF0_1",0,Green);

      }

      //下穿卖出   平掉番之劣买单

      if(myMAfast<myMAslow && myMAfast1>myMAslow1)

      {      

         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderType()==OP_BUY) 

            OrderClose(OrderTicket(),OrderLots(),Bid,3,CLR_NONE);

            

         if(OrdersTotal()==0) 

            OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+StopLoss*Poin,Bid-TakeProfit*Poin,"TF0_1",0,Red);

      }

如何用MQL4语言 编写外汇趋势交易程序

6、最后回测一下效果,点击测量测试,或者显示中的EA测试选项(或者Ctrl+R键),

选择你的EA,选择测试货币对,点击复盘显示,选择时选诸间周期进行测试,最后点击测试进行复盘测试。

如何用MQL4语言 编写外汇趋势交易程序

如何用MQL4语言 编写外汇趋势交易程序

  • 教你橄榄球中的战术运用
  • 户外单色门头显示屏改内容(网口卡和串口卡篇)
  • 易语言入门第一课之易语言编译器的使用(上)
  • svn如何版本回退
  • 易语言excel程序下新建全局变量
  • 热门搜索
    科普知识手抄报 世界读书日手抄报 防灾减灾的手抄报 欢庆六一手抄报内容 关于元宵节的手抄报 元宵节手抄报图片大全简单又漂亮 小学英语手抄报 防火手抄报简单又漂亮 关于古诗的手抄报 童话故事手抄报