创建一个简单的交易系统

创建一个简单的交易系统

在这一部分,我们将按顺序讲述一个简单但有效的交易系统的发展过程及测试。开始是开立一个适当大小的户头,接着进入选择交易的投资组合,建立风险控制及建立系统本身等阶段。我们会解释整个过程中我们所做的每个决定的原因。我们信任简单的系统和简单的测试步骤,所以我们不会使用复杂的最优化处理技巧。我们想要强调这部分的目标是要展示建立及测试一个系统的步骤。产生的系统不一定就是我们推荐的系统。我们没有说该系统将来定会盈利。

交易系统的目标

我们的第一个要求是系统应该是机械的,易于维持,对交易商的胃口。易于维持是指交易商不必整天粘着报价机器,事实上,如果他们愿意,还可以完全摒弃现时报价。易于维持还指每天所有必要的计算可以在几分钟内搞定(使用正确的软件),每天所有的指令只需输入一次,最好是在开盘前输入。系统周转率(我们所说的“步调”)必须足够低,这样业余的交易商才会觉得舒服,并且能够控制系统。

要预测所有投资方案的回报率显然很困难(期货交易系统想都不要想),但是收益的机会必须与风险的程度相当。我们希望看到我们的测试显示出的年回报率至少在20%到30%之间。同样重要的是,我们希望盈利交易百分比至少为40%,平均盈利与平均亏损比率至少为2:1,这样破产的统计概率就几乎为零。我们希望将最大的潜在的由峰到谷回跌限制在40%左右。如果这个回跌听起来太高,去查查一些成功的商品交易顾问的记录吧。尽管他们是专业人士,账户也比一般的交易商大得多,但你会发现他们中很少的人能够避免40%到45%的回跌。鉴于业余交易商成功率较低,并且我们的户头大小有限,40%是个很现实的数字。

户头大小

选择期货交易户头的大小显然取决于个体交易商资金的多寡和恐商(惊恐商数,类比于智商、情商),但是也存在界限,低于这个界限,就难以有效地操作。相对小的户头,指金额低于25000美元的户头,成功的概率比大户头低得多,这是我们的经验,并且有大量的实际调查做支撑。考虑到这一点,我们选择的户头金额大小为25000美元。即便是这个数目,重大的回跌也难以避免。在其他条件相同的情况下,户头越大,越容易使回跌百分比保持在很低的程度。

投资组合

选择要交易的投资组合永远是一个主观的任务。我们希望确保我们的投资是多样性的,并且所处的市场不要变化不断,否则就不可能控制风险。我们在创建系统时,想的是我们每天在20分钟内可以把它维持好,日交易除外。如果我们一夜之间持仓了,并且不能以25000美元交易股指,就会遇到麻烦,所以我们有效地将它们消除了。我们不想陷入这样一种境地,即一个糟糕的市场日会抹去我们大部分的账额。另外,保守起见,我们想要将最大收益定为户头价值的30%。如果我们是在做股指交易,我们做不到这一点。我们只能监测许多市场,做随之而来的在我们的利润范围内的第一笔交易,但如果我们这么做了,我们就不是在做我们测试过的系统交易。

我们将交易通常的固定的五种市场投资组合,每个都属于一个独立的市场群组。在货币市场中,我们将交易德国马克;在贵金属市场中,交易黄金;在利率市场中,交易长期国债;在农产品市场中,交易大豆;在石油市场,交易原油。我们不打算选择食品和化纤类,因为如果加入这一类的一个市场后,总盈利将超过一万美元(以目前的利率算),并且在所有的综合市场中,我们认为这类市场最易造成突然的巨大损失。

软件和数据

我们测试用的是Computrac/SNAP和欧米伽研究的系统编写Plus软件。对于这个应用,我们使用的是系统编写Plus软件,部分是由于存在一个非常方便的叫做投资组合分析的软件,它是由汤姆·贝利编写的。投资组合分析软件把由系统编写Plus软件创作的独立文件夹存储后,会将它们组合起来,显示出一组市场的测试结果,而不是一次只显示一个市场的测试结果。同时它会计算日、月、季度或年净资产额,所以你可以看到系统或投资组合在你所交易的所有市场范围内的变化效果。它可以使你直接测试投资组合的回跌和回报率,不用通过估算或建立价差表,逐一输入每个市场的结果来获得一份综合报告。 一个纯粹的亏损交易的市场对投资组合的影响甚大,所显示的回报与其他相关市场呈负相关,这种情况经常发生。如果这一市场(或这些市场)盈利了,而其他的市场亏损了,其作用是会软化总回吐,平滑净资产额曲线。因此,倘若测试的结果是我们选择的一两个市场竟是纯亏损的,我们也不必沮丧,只要净资产额曲线是平滑的,总体结果还理想就行了。

测试中将会用到六年半期间每天的数据,始于1984年1月1日,止于1990年6月29日。数据是以连续的合约形式整理的。我们实在不能再往回退几年,依旧测试整个投资组合,因为原油交易直到1983年末才开始。我们对1986、1988及1989这三年尤为感兴趣,这三年对顺势系统而言,特别艰难。如果我们的交易系统能经受住这几年的考验,其可信度就更高了。

曲线拟合和最优化处理

我们之前已非常详细地讨论了这个话题,但由于一定程度的曲线拟合无法避免,它就值得再提。我们会做一定程度的曲线拟合,使得各种技术研究、技术研究的数值及止损值成为我们有实际交易经验的项目。交易给你一种感觉,即有些东西用其他的任何方式都难以得到。我们有丰富的测试经验,有趣的是,在大多数情况中(不是所有情况),我们的经验支撑了实际交易中得出的观察。

我们不会做最优化处理。我们是要测试系统,如果它不起作用,我们就会做修改。我们不会测试数不胜数的研究值组合及风险级别,试图找到最优解决办法。我们在每个市场上都会用完全相同的研究值和止损,进一步确保做尽可能少的曲线拟合。如果系统在我们选择的大部分市场奏效,亏损的市场净资产额回吐的现象减少了,那么我们的工作就是令人满意的。别忘了,我们要靠市场和钱生活,我们做这个测试不是不顾现实地去满足电脑不知足的完美需求。

风险控制

没有一个成功的交易系统是没充分地控制风险。出于对测试目的的考虑,我们用两种方法来定义风险:初始风险,即入市点与保护性止损点之间的差距;资产风险,即投入市场的净资产额与跟踪止损价位之间的差额。这两类风险还可以进一步分为单笔交易中的初始风险和资产风险,以及跨投资组合同时交易的初始风险和资产风险。

初始风险由保护性止损控制。在我们的交易中,我们努力将十万美元的户头的风险控制在1.5%以内,这意味着止损为1500美元。由于我们与更大的户头是在相同的市场交易,并且我们以我们的经验,在这些市场,止损再小些的话,就会造成大量的亏损交易,所以我们坚持这个数目的止损。如果盈利交易百分比达不到我们的希望,我们可能会考虑尝试不同的止损价。记住退市策略测试的结论:止损价越小,盈利交易百分比越低,这是一条一般的规则。

净资产额风险是由跟踪止损控制的。跟踪止损的方法有多种,但我们更喜欢用一个简单的恒定数额来跟踪。这种技巧对我们有些不利,但我们喜欢它,因为采用这种方法,你就可以量化投资组合风险——即开放净资产额与跟踪止损价之间的差额的总和。如果投资组合风险过大,则净资产额的摆动将令人无法承受。商品交易顾问和他们的客户对这种现象很熟悉。在几个月期间,利润在一组头寸中积聚,然后市场反转,就突然产生了猛烈的净资产额亏损。即便是之前从未有过亏损交易,这种情况也有可能发生。一位商品交易顾问的客户很容易发现他或她陷入为已消失的收益偿付刺激性费用,甚至是税费的境地。控制这类风险的唯一方法是采取跟踪止损。我们将跟踪1500美元的止损,如果我们没有用跟踪止损,我们会用保本止损,但是,既然它们的功能比较相似,我们将只用跟踪止损。

一次优化一个止损价或是一次性优化所有止损价是可能的,但我们不会那么做。我们想要的是一个稳固的交易系统,明天也能良好运作,而不是一个优化了的交易系统,只在昨天奏效。

技术分析——入市策略

最普遍的顺势研究是简单的移动平均线。我们用过均线研究已有多年了,也测试过很多种组合。其中产生了一些我们钟爱的研究。我们一般钟爱双重移动平均线法,钟爱的组合有3/12,9/18,10/18以及10/20。你应该还记得5/10,5/20,5/30以及5/40这些组合在我们的退市策略测试中作为参照系统效果很不错。但我们通常喜欢比这些组合更敏感一点的方法。我们将尝试只用双重3/12移动平均线作为入市策略。

技术分析——合理退市

王尔德的抛物线指标是一个常用的退市技巧。对照我们的参照系统,作为一个单独的退市策略,它的测试效果相当不错。我们将用抛物线指标作为退市策略,用王尔德原始的数值来增加SAR点。抛物线起始点有所变化,因为系统编写Plus软件中的函数没有王尔德原始的公式。王尔德的公式是把前一次抛物线交易的最高价或最低价作为起始点。SWP的公式用的是前n天中的高价或低价,n由你自己选择。n的周期相对短的话,其优势是初始止损更密集。在我们先前对抛物线指标的测试中发现,选择的天数并不是特别重要,只要天数在4到15天内。我们将如退市策略测试中一样,采用10天周期。

测试的第一步

对于这部分测试,我们要尽可能使之简单,我们能掌控的自由亏损程度也要尽可能最小。我们把3/12移动平均线相交作为入市方法,10日抛物线指标作为退市方法,还用到了1500美元初始止损及跟踪止损。

我们的程序将测试六年半的全部数据,看看入市系统如何运作。如果它们运作效果不佳,我们将把测试阶段分为两部分,第一部分是四年,第二部分是两年半。然后我们将用第一部分数据测试一些组合,再用后部分数据来验证最终的组合。(见图3-16)

 

事实上,结果相当鼓舞人心。正如我们可能预料到的,大豆和黄金是亏损交易,但看到系统将长期国债、德国马克及原油期货操作得那么好,挺令人吃惊的。只要得到一点帮助,我们是可能创建出一个有效的交易系统的。

下一步是用投资组合分析软件分析结果。我们假定年平均利润为3282美元(我们总是假设不存在金字塔式交易或利滚利的情况),年收益为14.8%。我们知道许多交易商看到这样的结果会感到高兴的。但是,看看回吐,22259美元!如果这种情况在交易初期就发生了的话,我们就会被迫退出交易了。我们的盈利交易百分比为35%,平均盈利与平均亏损之比为2.06,快速地计算一下,我们发现破产概率很高。投资组合在上升至5万美元前,下跌至1万5千美元(下降40%)的可能性为45%。

我们可以看到,能预计到的情况发生了。我们设计了一个可盈利的,但不可接受的交易系统。这次尝试是个很好的例子,说明我们永远都不应该把净盈利性作为评判一个交易系统有效性的唯一标准。正如我们之前说明的,要为个人认为会产生最佳结果的具体的一系列标准而测试。

下一步

下一步,不可否认地说,具有主观性,还有待裁决。我们准备看看每个市场的个体交易表的情况,看看入市方法成功与否。这一步具有主观性,有待裁决,主要有两点原因。第一,如果你分析一个交易系统中相互依赖的部分中的单个成分,你永远无法真正知道每个成分在每笔交易中的重要程度。做一个你认为无足轻重的微小变动经常会引发一连串的事件发生,这种变化会波及整个系统。第二,实在是没有,或许也不该有任何客观的标准来帮助你做决定。或许这就是技艺和经验施展拳脚之处。

ADX作为过滤器

我们频繁地用到王尔德的DMI和它的演变指标ADX。我们把ADX用作过滤器来客观地判断市场是否呈现趋势性的大部分测试显示它是有效的。我们发现良好的结果通常聚集在10到25天的范围内,具体的天数取决于应用。我们将采用18日的ADX,因为18在这个范围的中间位置。

我们测试ADX时一定得细心,否则,它的作用不是过滤器,而是成了入市触发器。我们会编码入市信号,这样只在ADX报升,并且在同一天出现移动平均线相交时,才买进或卖出。如果ADX走向向下,则市场无方向性,我们对交易的观察显示这是大亏损阶段。

从下图中你可以看到,变化剧烈。现在所有的市场都是可盈利的,可是我们可能希望经过六年半的交易后,在黄金期货交易中赚更多钱。奇怪的是,长期国债和原油期货交易不如从前那么赚钱了。然而盈利交易百分比更高了,交易笔数大幅减少。看来我们的过滤器发生作用了。让我们启动投资组合分析软件吧。(见图3-17)

 

使用ADX的总净收益为61333美元,比之前测试的两倍还多。简单的年回报率现在为37.7%。交易笔数降至151。更好的是,我们的盈利交易百分比上升到了44%,平均盈利与平均亏损之比也上升了——到了健康的2.32。破产概率现在仅为2.9%。最大的峰到谷回跌为9414美元,完全在我们最初的规定中。月净资产额数值在下一页。注意我们在每年年初取出了盈利或亏损,所以每年的起始月净资产额数值都为25000美元。(见图3-18和3-19)

 

 

 

进一步的测试

如果我们要合乎逻辑地做完测试,还要进行几个步骤。最重要的是,我们将在一定值域内测试每个可变的参数,以确保我们没有碰巧曲线拟合我们的系统。在一定的值域区间,结果应该是可接受的。按照这一原则,我们可以做优化处理,找到头几年数据的“最佳”值,接着在随后几年中测试这些值。由于交易笔数太少,在这种情况下,这个问题挺棘手。但如果你的系统产生了足够多的交易样例,我们建议你这么做。界定最佳值有点困难。最保险的方法是选择结果在被测试的变量区域中间的值。如果最佳值在区域的一端,最好忽略该值,另选分布在中间的值。比如,假设你已测试了500美元到2000美元这一区域内的初始风险止损,增加额为100美元。所谓的最佳止损价为900美元,但开始的结果都远远低于800美元,结果继续均匀地分布,最大值达到了2000美元。最好使用800美元到2000美元中间的一个值,而不是最佳止损价900美元。

结论

交易系统计算机测试尚处于幼年时期。交易商似乎在迈向更多产的测试方法,但是关于这一主题的著作仍旧不太多。这或许是因为测试无绝对可言,就像交易无绝对可言一样。另外,存在一种错误概念,认为测试是要“证明”某事物,我们已试图消除这种错误概念。希望我们已激发了关于这一主题的一些讨论,并且希望一些出自期货管理公司和一些有才能的个人交易商之手的在酝酿中的一些优秀作品能得以出版。