俗话说:“是骡子是马,拉出来溜溜”。自己的策略搭建完成后,就需要在历史数据上进行测试,来证明其有效性。在没有计算机之前,这项工作非常繁琐,需要交易者自己搜集价格数据、自主绘图、独立测试。计算机出来之后,策略回测的工作被大大简化。只要你的策略足够清晰,就可以花费有限的资金,让懂编程的第三方将你的策略程序化。外汇市场中,将程序化的策略叫做EA。
策略测试有四个关键环节:数据源、时段选择、回测报告、优化。

1、数据源
日线级别的数据源最容易获得,MT4上就可以下载到足够数量的数据。日线数据能够提供当天行情走势的最高、最低、开盘、收盘价格,其余信息无法提供。如果EA的交易周期在周线及以上,用日线数据进行测试没有太大问题。如果EA的交易周期在日线、小时、分钟级别,日线数据源会导致策略测试失真严重。比如双均线交易系统,某一天开盘没多久,就实现了黄金交叉。按照EA设计思路来说,应当在交叉后即刻进场。但日线数据测试只会在当天K线收盘后进场,因为它没有一天之内的行情发展变化过程。H4级别的数据源要比日线级别数据源更加精确,能够粗略描述当天行情的发展过程。同样的阴线,先涨后跌和先跌后涨的意义是完全不同的。H4能够识别这种不同。如果交易者的EA运行在H4级别及以下,则需要更加精确的数据源。H1、M30、M5,其数据精密程度不断提高,对EA测试的准确性也不断改善。但是,越是低周期的数据源,获取难度越大。周期最低的数据为ticks数据,也就是价格每波动一次所记录的数据,改数据在国内被叫做“分笔成交”。想要获得长周期的ticks数据,比如一年、五年、十年的数据,就需要为此支付一部分费用,从第三方处购买。MT4虽然自带策略回测功能,但只能测试较低数据量的EA。如果你想要测试五年以上的ticks数据,就需要使用功能更加强大的MATLAB软件。当然,MATLAB的EA代码和MT4的代码并不相同,需要专业人士进行转换。
2、时段选择
测试的时段并不是越长越好,因为大部分策略都无法在十年以上的测试时段中稳定盈利,甚至五年的时间就可以让很多策略原形毕露。也不要进行多品种测试,原因是相同的,大部分策略经不起这样的考验。但是,就如标题中所说——过去表现并不保证未来结果。过去亏损的策略,可能在未来就是盈利的;过去盈利的策略,可能在未来就是亏损的。归根结底,市场是发展变化的,走势的基本规律也并非一成不变,它具有明显的阶段性特征。这个月以流畅的多头走势为主,下个月就是一步三回头的上涨,再下个月就是深幅度的回调。一种策略只能适应一种走势类型,当适合它的走势类型出现时,就能实现较高盈利;反之,则亏损连连。将K线走势划分为三类:好、中、坏。好的走势为最适合EA的走势,其它同理。将好的走势找到五种,分别对EA进行ticks级别的测试;找到五种中等走势,对EA进行测试;找到五种坏的走势,对EA进行测试。之所以找五种,是因为即便是统一类型的走势,也存在细节上的千差万别,策略的表现也会不尽相同。好的走势决定了策略的盈利上限;坏的走势决定了策略的亏损上限。当你想要让策略的盈利上限提高时,必然会导致策略的亏损上限同时提高。这就是投资圈常说的:风险与收益对等。
3、回测报告
回测报告并没有那么重要,因为它只代表过去,不代表未来。好的走势类型频繁出现时,回测报告当中的胜率、盈亏比都会变得非常高,似乎这款EA是战无不胜的;坏的走势类型频繁出现时,回测报告的回撤百分比会非常大,看起来这款EA除了能导致巨额亏损外,没有丝毫价值。就像经典的俄罗斯方块游戏,我们无法预测下一个方块会是什么样子的,我们能做的就是看到最新的方块后,做出合理的反应。资金曲线是非常直观的回测指标,通过它可以轻松判断交易策略在测试时段内的所有盈亏情况。人们普遍把45度倾斜向上的资金曲线看做稳定盈利的标志,这大错特错。除了马丁格尔策略之外,没有任何EA能够达到如此理想化的资金曲线。正常的趋势应当是台阶型,在长时间的横向震荡或小幅下降后,迎来一次大额的盈利,将账户资金拉高到一个新的台阶。总的来说,回测报告的好坏,取决于你选用的历史数据时段,选择适合EA的时段,回测报告很靓丽,反之很糟糕。
4、优化
通过测试的EA,可以进入实盘阶段。没有通过测试的EA,就需要进一步的优化。优化是将原来的EA参数进行调整,以使其在历史测试中表现更加优异。任何技术指标都有自己的参数,比如均线,存在五日均线、十日均线、二十日均线等等参数。不同的参数会形成不同的买卖信号,不同的买卖信号适应不同的走势类型,并会产生不同的回测报告。比较智能的回测软件可以将参数从0~无穷大进行逐个测试,然后筛选出盈利最大的参数。这听起来不错,我们可以轻松获得最优参数。实际上,通过穷举法选出的参数,只会在历史数据中表现优异,放到实盘交易中,就会亏损连连。就像标题中提到的,过去表现并不保证未来结果。
优化是好的,过度优化是错的。我们不能未来测试时段上的某种价格走势,而牺牲掉EA的普适性。正确的做法是,进行穷举测试之后,选择收益表现中等偏上的参数作为自己的实盘参数。当然,如果你有自己已经习惯参数,可以不进行优化,直接使用这些参数进行实盘交易。毕竟,任何参数都有其适应的走势类型,说不定未来的行情就适合你习惯的那些参数。
ATFX免责声明
1、以上分析仅代表分析师观点,汇市有风险,投资需谨慎。
2、ATFX不会为直接或间接使用或依赖此资料而可能引致的任何盈亏负责。
إخلاء المسؤولية: الآراء الواردة هنا تعبر فقط عن رأي الكاتب، ولا تمثل الموقف الرسمي لـ Followme. لا تتحمل Followme مسؤولية دقة أو اكتمال أو موثوقية المعلومات المُقدمة، ولا تتحمل مسؤولية أي إجراءات تُتخذ بناءً على المحتوى، ما لم يُنص على ذلك صراحةً كتابيًا.

اترك رسالتك الآن