首页 > EA > EA入门

【外汇EA】(自动交易系统)EA是什么?及他的工作原理

小明学外汇EA入门 2019-09-08 13:45:35 交流微信号:FX263cn 外汇EA   自动交易系统

 
运行流程:启动EA后,程序的INTI()开始执行一次,-->然后 START()循环执行--->最后退出EA时deinit()执行一次
 
2.mql4中与交易相关的交易函数:
 
开仓函数:
 
int OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, void comment, void magic, void expiration, void arrow_color)
 
这个功能主要应用于开仓位置和挂单交易.
 
参量:
 
symbol - 交易货币对。
 
cmd - 购买方式。
 
volume - 购买手数。
 
price - 收盘价格。
 
slippage - 最大允许滑点数。
 
stoploss - 止损水平。
 
takeprofit - 赢利水平。
 
comment - 注解文本。
 
magic - 定单指定码。可以作为用户指定识别码使用。
 
expiration - 定单有效时间(只限挂单)。
 
arrow_color - 图表上箭头颜色。如果参量丢失或存在CLR_NONE价格值不会在图表中画出
 
平仓函数:
 
bool OrderClose( int ticket, double lots, double price, int slippage, void Color)
 
对定单进行平仓操作。如果函数成功,返回的值是真实的。如果函数失败,返回的值是假的。获得详细错误信息,请查看GetLastError()函数。
 
参量:
 
ticket - 定单编号。
 
lots - 手数。
 
price - 收盘价格。
 
slippage - 最高划点数。
 
Color - 图表中标记颜色。如果参量丢失,CLR_NONE值将不会在图表中画出。
 
定单修改函数:
 
bool OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, void arrow_color)
 
对于先前的开仓或挂单进行特性修改。如果函数成功,返回的值为 TRUE。如果函数失败,返回的值为FALSE。获得详细的错误信息,查看 GetLastError()函数。
 
参量:
 
ticket - 定单编号。
 
price - 收盘价格
 
stoploss - 新止损水平。
 
takeprofit - 新赢利水平。
 
expiration - 挂单有效时间。
 
arrow_color - 在图表中允许对止损/赢利颜色进行修改。如果参量丢失或存在CLR_NONE 值,在图表中将不会显示。
 
四、源码的交易流程分析
 
下面的源码是一个基于移动平均线的智能交易系统的代码,整个程序非常简洁但EA的功能又非常齐全,实现了完全由电脑自动下单和平仓,整个程序只用了一个START() 函数来实现。
 
程序代码分析
 
参看代码中的相关注释
 
  //+------------------------------------------------------------------+ 
  //---- input parameters 
  extern double TakeProfit = 20; 
  extern double StopLoss = 30; 
  extern double Lots = 2; 
  extern double TrailingStop = 50; 
  extern int ShortEma = 5; 
  extern int LongEma = 60; 
  //+------------------------------------------------------------------+ 
  //| expert initialization function | 
  //+------------------------------------------------------------------+ 
  int init() 
  { 
  //---- 
  //---- 
  return (0); 
  } 
  //+------------------------------------------------------------------+ 
  //| expert deinitialization function | 
  //+------------------------------------------------------------------+ 
  int deinit() 
  { 
  //---- 
  //---- 
  return (0); 
  } 
  //+------------------------------------------------------------------+ 
  //| expert start function | 
  //+------------------------------------------------------------------+ 
  int start() 
  { 
  int cnt, ticket, total; 
  double SEma, LEma; 
  //---- 
  if (Bars < 100) 
  { 
  Print("bars less than 100"); 
  return (0); 
  } 
  //---- 
  if (TakeProfit < 10) 

【版权声明】

本文仅代表作者观点,不代表本站立场。Fx263.com对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证,且不构成任何投资建议,请读者仅作参考,并自行承担全部风险与责任。Fx263.com作为信息内容发布平台,页面展示内容的目的在于传播更多信息,不代表Fx263.com立场;本站会员及自媒体人所发的稿件所载明的信息与本网无关,如文章涉及版权,请联系本站处理。

【风险提示】

请通过正规渠道参与外汇保证金交易。目前通过网络平台提供、参与外汇保证金交易均属非法。请提高意识,谨防损失!外汇、贵金属和差价合约(OTC场外交易)是杠杆产品,存在较高的风险,可能会导致亏损您的投资本金,请理性投资。

 

Fx263.com - 全球财经中文网

官方交流微信号:FX263cn注明来意

重要声明 | 本站内容不适用于中国大陆地区访客。

Powered By Fx263.com - 版权所有

大中华地区全球财经中文网

本站内容仅供参考盈亏自负

FX263网 - 全球财经中文网