本帖最后由 wp00000008 于 2016-12-29 14:56 编辑
本人将推出一系列的以ea为主题的评估报告,含自主研发的EA和网络上的其他ea,欢迎关注。 1. 评估的重要性
EA的测试结果,反映的是EA在模拟/仿真环境下的执行结果。但遗憾的是测试状况下的行情,与实盘情况有一些差异: (1)mt4测试时点差是固定的,实盘大多数是浮动的。 (2)mt4测试时,交易单是立刻按照指定价格成交的。实盘情况下,交易单的执行需要时间,而且很有可能会滑点,特别是ecn账户。 (3)mt4提供的历史行情最高精度是M1的最高价、最低价、开盘价、收盘价,需要考虑这个对实盘的影响。 (4)实盘情况下开单、平仓、止损都有可能滑点,平仓可能会部分执行。测试情况下则不会。 (5)有些交易方法,在实盘下很难执行或者执行有较大偏差。 (6)EA在历史测试下可引用未来行情,有些流氓EA以此来行骗。 (*)。。。
了解了以上这些之后,就不难理解为什么有些交易系统历史测试成绩很好,但实盘盈利很少甚至亏损,或者只能在限定的实盘条件下才能盈利。
2. 评估的准备条件
(1)点差的选择:按照实际情况设置,尽量大于实盘点差。如eurusd和usdjpy可设置为10,其他直盘设置为20。 (2)交易手数的选择:使用固定手数,或控制手数的变化在一定范围内。这样能方便的计算平均每笔盈利的点数。 (3)止盈止损的选择:止盈止损太小的情况下,执行情况会和实盘有偏差,这个需要注意。
(1)盈亏比Profit factor:为总盈利与总亏损之比。如入金5000,盈利的交易合计共盈利2000,亏损的交易合计亏损1000,则盈亏比为2000/1000=2。 一般来说,盈亏比越大越好,最好大于1.5。但是太大又更是危险,这里就不赘述了。 (2)平均每笔盈利的点数:在使用固定0.1手交易的情况下,可简单的通过盈利金额,除以交易次数,得到平均每笔盈利的点数。 这个指标最好要大于5,但也不是越大越好。平均每笔盈利点数如果过小(如与点差接近),那么意味着该EA的盈利表现,会受限于实际的交易成本。 实际交易中,交易者需要付出的交易成本有:点差,开单滑点,止损滑点,平仓滑点,佣金,利息等。如何在EA编写时有效的控制交易成本,这里就不赘述了。 (3)交易次数:交易者最终的盈利是复利的结果,交易次数越多,复利次数越多,盈利越大,同时系统的可信度越大。 交易次数越多、按时间分布越均匀越好,一般年交易次数超过100次为佳。 (4)其他指标:成功率等,只要在合理范围即可,不用强求。 (5)关于最大回撤:越低越好。不过本指标与风险控制有关,已超出本文的范围。
4. 进一步的信息见《MT4外汇程序化交易系统编程指南》(百度阅读)
|