007真人007真人

2019-07-11 阅读 :
#property copyright "Simon Yau"

#property link "https://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)

本文标题:MT5编程实例课程(阿郎)第三讲:均线交叉EA - MT5平台MQL5编程学习
本文地址:https://www.cnhile.com/fxschool/autotrading/mql5/113860.html

相关文章

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

    #property copyright "Simon Yau"#property link "https://www.xxxxxx.com"#property version "1.00"int maFastHandle, maSlowHandle; //定义两个指标操作句柄,用来操作两条均线double maFast[], maSlow[]; //定义两个...

    2019-07-11 MQL5编程学习
  • MT5编程实例课程(阿郎)第二讲:一键下单

    在第一讲中,我们通过一个简单的例子Lesson1,学习了如何通过MQL5编程在MT5图表上添加按钮、处理按钮点击事件以及弹出对话框等。在第二讲中,我们将会在Lesson1例子的基础上进行改进,开发一个可以在MT5图表上进行一键下单的...

    2019-07-11 MQL5编程学习
  • MT5编程实例课程(阿郎)第一讲:Hello,MT5

    MT5的推出,实在是广大汇友之福!新增的众多强大功能,相信会让大家在交易时如虎添翼。废话不多说,沿袭MTx编程实战开发系列的惯例,先来个小例子,让大家感受一下MT5的强大。 选择菜单上”Tools->MetaQuotes Language Editor”...

    2019-07-11 MQL5编程学习
  • MQL5编程学习之MT5中的调试功能(Debug)应用

    MetaTrader发展到MT5版本后,虽然相比起专业化的开发工具还有一定距离,但终于初具一个现代化软件开发工具的雏形了,这其中在MetaEditor5中提供的Debug功能(调试功能)就是一个巨大的进步。涉足过MT4编程的朋友可能都有过痛苦...

    2019-07-11 MQL5编程学习
  • MQL5变色线的画法(比MQL4更加简单)

    MQL5里有一种特殊指标数组“颜色数组”,他是和画线的指标数组配合使用的。通过对他的简单赋值可以使画出的线变色。 首先要在指标头部定义里指定一条线对应的数组是要使用变色画线方式,指定方法是: #property indicator_...

    2019-07-11 MQL5编程学习
  • MQL5编程MT5程序代码讲解 之 旋转的时间

    //+-----------------------------------------------------+ ytg_Time_exp.mq5 | //Copyright Yuriy Tokman | //yuriytokman@gmail.com | //+-----------------------------------------------------+ #property co...

    2019-07-11 MQL5编程学习
  • 外汇EA程序化交易的"圣杯"真的存在吗?
    外汇EA程序化交易的"圣杯"真的存在吗?

    记得最早接触外汇是2009年在美国留学的时候,虽然之前接触过股票,但是外汇的保证金交易还是感觉非常刺激。刚开始和大多数人一样,有过几天翻几倍的经历。当然也少不了n次爆仓的痛苦经历。自从开始交易外汇就阅读了大量的...

    2019-07-11 MQL5编程学习
  • 编写一个稳定盈利的外汇EA到底难不难?好的外汇EA长什么样?

    在一段时间,我们一直在研究赌博的概率与胜率,包括一些赌场高手的注码策略,对外汇的资金管理很有帮助,除了下单的胜率之外,您还要考虑平仓,您下单之后有浮赢了,能否变成真正的利润,还要取决于您的平仓策略,平仓策略不好,赚钱会变...

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

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

    2019-07-11 MQL5编程学习
  • 外汇EA程序化交易系统设计心得体会

    投机就像山岳一般古老。毋庸费言,外汇零售市场的属性,必然会让国内的大多数外汇交易者,以中短期投机的方式居多,长期价值投资的偏少。而作为波动市场的王者,外汇市场给了手工交易和程序化交易最丰富的可能性,此种优势,其他市...

    2019-07-11 MQL5编程学习
你可能感兴趣