编写一个成功EA的全过程和必须注意的事项

阅读 :
欢迎访问 外 汇 邦 WWW.WaiHuiBang.com
从系统交易的观点看。从上到下形成交易策略思想比起从下到上形成交易策略思想有以下优点:
1. 有利于把握局部的挫折与全局的失败关系。
2. 有利于交易系统的风险控制。
3. 有利于对交易系统 的维护与修改。

由交易系统对市场特性的偏离所造成的对交易系统的修改主要有以下几种情况:
1. 交易系统的参数值需要修改。
2. 交易系统的个别规则需要增删。
3. 投资市场规则变化引起的修正。

交易系统的筛选不是任何股票、外汇和期货合约都可以作为系统交易的对象。作为系统交易对象的股票、外汇和期货合约,必须做如下方面的检验,以决定是否具有可交易性。

1.检查是否具有足够的流动性。
(1)流动性的高低直接关系交易成本的高低,流动性降低会导致交易成本增加。
(2)流动性的高低直接关系交易方法的选择范围。
(3)流动性的高低直接关系风险管理效率高低。

价差市场流动性主要包括以下几个方面的观察:
(1)检查价格运动的连续性。
(2)检查买卖差价的大小。
(3)检查成交量的大小。

2.检查是否具有足够长的交易历史。
(1)期货合约数据长度的检查。
(2)股票数据长度的检查。

3.检查是否有充足的信息源。

4.检查是否有足够多的市场参与者。

(三)交易策略的公式化
交易策略的公式化是指将交易策略思想转化成精确的数学公式或计算机语言公式,使之成为计算机可识别并可检验的公式系统。

交易策略的公式化过程可参照以下基本步骤:
1. 定义交易规则:交易策略的定型化。
2. 定义交易规则变量及参数:交易策略的定量化。
3. 编写计算机程序。

交易系统的检验内容
(一)净利
1. 任何净利为负值的交易系统都不能作为使用的交易系统。
2. 净利额并非越大越好。

(二)最大应力交易和最大亏损交易
最大盈利交易和最大亏损交易,是指已完成交易样本中最大一次的盈利额和最大一次的亏损额。最大盈利与最大亏损给系统研究者和使用者提供了重要的系统质量信息,如果最大盈利与平均盈利差距过大,则应视最大盈利额为偶然事件。
如果最大盈利额占总盈利额中的比重过大,则应怀疑系统的实际盈利能力和稳定性。如果最大亏损额与平均亏损额之间差别过大,则应进一步检查系统的风险控制能力,以确保系统有足够的能力抗拒巨大的突发事件影响。如果系统检查中同时存在个别巨大盈利和个别巨大亏损,研究者可扣除个别巨大盈利并同时保留个别巨大亏损,以观察在该种条件下系统是否仍然盈利。如果系统在重新设定的条件下仍能获利,则系统的信任度可大大提高,反之,如果系统在重新设定的条件下不能诱惑力,则系统不是一个可信任的交易系统。

(三)最大连续盈利次数与最大连续亏损次数
最大连续盈利次数与最大连续亏损次数对有经验的系统操作者是极其重要的信息资源。它为系统炒作者惊醒风险控制提供了极重要的依据。

(四)最大投资本金损失幅度
最大投资本金损失幅度,是指投资本金峰谷间的差额。这一信息对期货投资人尤其重要,因为投资人据此可以控制投资数额以保证足够的交易准备金。

(五)总交易次数
总交易次数指对交易系统评价期内盈亏交易次数的总和。从统计学的观点看,为保证统计检验的有效性,总交易次数应当不少于30次。

(六)盈利次数比率 亏损次数比率
盈利次数比率,是指盈利交易(扣除交易成本之后)次数对总交易次数的比率。亏损次数比率,是指亏损交易(扣除交易成本之后)次数对总交易次数的比率。该比例是反映交易系统所依据的投资理念的主要指标。

(七)平均盈利额对平均亏损额之比
该比率指扣除交易成本后比率。这是一个相对尺度。该比率的适当程度取决于前述盈利次数比率的高低。但是在一般情况下,平均盈利额对平均亏损额之比应当高于1:1.随着交易系统盈利次数比率下降,该比率必须相应提高。
交易系统的检验还可包括其他内容,可由研究者根据需要设置,如盈利离差分析,用以来进一步考察系统对最坏环境的抵抗能力,等等。

 
交易系统设计流程图

 
交易系统工作流程图
欢迎访问 外 汇 邦 WWW.WaiHuiBang.com
本文标题:编写一个成功EA的全过程和必须注意的事项 - MT4平台MQL4编程学习
本文地址:http://www.ea666.cn/fxschool/autotrading/mql4/41467.html

相关文章

  • MT4挂EA如何选择VPS

    近年来,随时EA交易逐渐在零售外汇圈内流行起来,越来越多的汇友开始使用外汇VPS挂EA进行交易。使用外汇VPS可以最大程度地缩减MT4客户终端和MT4服务器之间的延迟。通过使用安全位置的数据中心系统...

    MQL4编程学习
  • VPS对外汇交易有什么用
    VPS对外汇交易有什么用

    VPS的英文全称叫Virtual Private Server,一台物理服务器上创建多个相互隔离的虚拟专用服务器,因为每一个VPS均可独立进行重启并拥有自己的root访问权限、用户、IP地址、内存、过程、文件、应用程序、系统函数库以及配置...

    MQL4编程学习
  • MT4编程初级手册(5):自定义数组

    一、数组是一组同类型变量的集合,可以以一个名称同时存储多个数值,由索引来调用,在实现我们EA的算法时是一个非常重要的工具。 例:int arrai[5]={5,4,3,2,1}; 这是一个数组名为arrai、包含了5个元素的整数型数组(即数...

    MQL4编程学习
  • MQL4数学和三角函数(一)

    MathAbs() – 求绝对值 MathArccos() – 求反余弦 MathArcsin() – 求反正弦 MathArctan() – 求反正切 MathCeil() – 取最小整数 MathCos() – 求余弦 MathExp() –...

    MQL4编程学习
  • 外汇智能交易MQL4语言教程(一)

    什么是智能交易系统?它是一个用特殊的MetaQuotes 语言 4 (MQL 4)编写的自动交易系统(ATS),和特定的图表联系在一起。智能交易系统不仅能通知交易商交易机会,而且还能自动执行交易账户上的交易,直接发送到交易服务器。和...

    MQL4编程学习
你可能感兴趣