MT5编程实例课程(阿郎)第三讲:均线交叉EA

阅读 :
欢迎访问 外 汇 邦 WWW.WaiHuiBang.com
#property copyright "Simon Yau"

#property link "http://www.xxxxxx.com"

#property version "1.00"

int maFastHandle, maSlowHandle; //定义两个指标操作句柄,用来操作两条均线

double maFast[], maSlow[]; //定义两个数组,用于保存均线的数值

//+------------------------------------------------------------------+

//| Expert initialization function |

//+------------------------------------------------------------------+

int OnInit()

{

//---

//在初始化函数OnInit中,分别指定两个操作句柄所对应的均线指标

maFastHandle = iMA(Symbol(), PERIOD_CURRENT, 5, 0, MODE_SMA, PRICE_CLOSE); //对应5期均线

maSlowHandle = iMA(Symbol(), PERIOD_CURRENT, 10, 0, MODE_SMA, PRICE_CLOSE); //对应10期均线

 

ArraySetAsSeries(maFast, true); //将数组设置为倒序保存,即图表上方向由右向左

ArraySetAsSeries(maSlow, true); //同上

//---

return(0);

}

//+------------------------------------------------------------------+

//| Expert deinitialization function |

//+------------------------------------------------------------------+

//+------------------------------------------------------------------+

//| Expert tick function |

//+------------------------------------------------------------------+

void OnTick()

{

//---

MqlTradeRequest request;

MqlTradeResult result;

 

CopyBuffer(maFastHandle, 0, 0, 3, maFast); //将句柄对应的指标数值复制入数组

CopyBuffer(maSlowHandle, 0, 0, 3, maSlow); //同上

 

if (maFast[1]>maSlow[1] && maFast[2]<=maSlow[2]) //数组获得指标的数值后,就可以进行均线交叉的判定了

{

request.action = TRADE_ACTION_DEAL;

request.symbol = Symbol();

request.volume = 0.1;

request.price = SymbolInfoDouble(Symbol(), SYMBOL_ASK);

request.type = ORDER_TYPE_BUY;

 

OrderSend(request, result); //下单

}

else if (maFast[1]<maSlow[1] && maFast[2]>=maSlow[2])

{

request.action = TRADE_ACTION_DEAL;

request.symbol = Symbol();

request.volume = 0.1;

request.price = SymbolInfoDouble(Symbol(), SYMBOL_BID);

request.type = ORDER_TYPE_SELL;

 

OrderSend(request, result); 

}

作者:阿郎(shawnyau)

欢迎访问 外 汇 邦 WWW.WaiHuiBang.com
本文标题:MT5编程实例课程(阿郎)第三讲:均线交叉EA - MT5平台MQL5编程学习
本文地址:http://www.ea666.cn/fxschool/autotrading/mql5/113860.html

相关文章

  • 什么是算法交易?算法交易的分类

    在量化交易中,根据各个算法交易中算法的主动程度不同,可以把算法交易分为被动型算法交易、主动型算法交易、综合型算法交易三大类。 被动型算法交易被动型算法交易除利用历史数据估计交易模型的关键参数外,不会根据市场...

    MQL5编程学习
  • 外汇市场中最常见的四种外汇算法交易系统

    外汇市场中最常见的四种外汇算法交易系统 ​​​​​​​真正可用于外汇市场中的交易算法只有累积分配算法、达到价格算法、分段订单算法和时间加权平均价格算法四种。...

    MQL5编程学习
  • 外汇智能交易系统,外汇EA是用什么编程语言开发的?

    外汇EA外汇智能交易软件是根据外汇市场的特点设计出来的智能交易系统, 外汇EA可以是一个完整的交易系统,也可以是由多个复杂的交易系统组成的策略。此外,要想研发出一款好的外汇EA,需要有团队在后期不断修改优化。单一的E...

    MQL5编程学习
  • 外汇EA交易是什么?外汇投资者使用外汇EA能赚钱吗?
    外汇EA交易是什么?外汇投资者使用外汇EA能赚钱吗?

    在外汇市场中常常会听到EA交易这个名词,到底EA交易是什么呢? 能依靠EA交易赚钱吗?什么是EA交易?EA本质上是一个电脑程序,是由程序员根据操盘的交易策略和思路编写写成计算机程序,只要在MT4或MT5交易软件上运行该程序,EA就能...

    MQL5编程学习
  • 外汇EA入场主要使用什么交易策略?

    外汇EA如果进行细分,可以分为无数种,但是其入场策略按行情走势无非是以下三种: 1、突破交易:例如行情突破某一上方阻力位置(历史前高),EA自动识别,启动最多;行情突破某一下方支撑位置(历史前低),EA自动识别,启动最空。2、反弹交易...

    MQL5编程学习
你可能感兴趣