很多博客文章,论文和书籍都涉及如何正确优化和测试交易系统。但是,最初关于如何使用这种系统的信息很少。所描述的策略似乎常常凭空出现。交易系统是否需要某种顿悟?还是有系统的方法来开发它?
这篇文章是一个小系列文章的第一篇,我将尝试一种有条理的方法来建立交易策略。第一部分论述了策略制定的两种主要方法,即市场假设和瑞士法郎案例研究。
策略分为两种
您可以主要使用两种方法来开发交易系统:基于模型和数据挖掘。基于模型的系统从市场低效率的模型开始 - 基于交易者的心理,经济,市场微观结构或任何其他影响价格的力量。效率低下会导致价格曲线异常或模式偏离随机游走,并且在预测时可以用于交易算法。基于模型的交易方法的示例包括趋势跟随,均值回归,价格周期,价格集群,统计套利和季节性。
问题是:模型不是现实,而是现实的简化。它不能被证明,甚至常常被伪造。其有效性只能通过其对价格曲线的影响来确定。因此,该方法的有效性取决于其价格曲线异常的重要性和长期稳定性。为了判断这一点,您需要良好的测试算法。
数据挖掘方法则完全相反,它只是寻找价格曲线模式,并尝试将算法拟合数据。由哪种市场力量引起价格波动无关紧要,仅假设过去的模式会在将来重演。这允许但并非总是使用机器学习算法来生成交易系统。该方法中最受欢迎的方法是反复试验技术指标,烛形图,回归,自相关,k均值聚类,神经网络,支持向量机和决策树。
数据挖掘的优点是您无需关心市场假设。缺点:这些方法通常会发现大量随机模式,因此会产生大量毫无价值的策略。由于单纯的数据挖掘是一种盲目方法,因此将实际模式(由实际市场效率低下引起)与随机模式区分开来是一项艰巨的任务。即使是复杂的现实检查 通常也无法消除所有数据挖掘偏见。如今,由数据挖掘方法生成的成功交易系统并不多。
您比市场聪明吗?
显然当市场有效运行时,没有交易系统会起作用。即便存在无效性,也很难利用,因为装备精良的玩家已经充分挖掘了这些无效性。在迷你系列的第一部分中,我探讨了比大多数市场参与者做得更好的交易的可能性,这是成功策略的先决条件。
您会不时听到三个关于市场效率的假设:
假设A:市场是有效的。价格遵循真实事件,例如公司业绩的发布,并反映资产的真实价值。所有交易者都“知情”,做出理性决定并立即采取行动。价格曲线大部分是随机游走曲线,没有用于预测未来价格的信息。技术性交易系统无法正常工作,或者如果可行,那只是运气。
假设B:市场效率不高,但市场效率低下对私人交易者毫无价值。只有大型投资公司和对冲基金才能成功利用它们,因为它们拥有大量资本,非常快的计算机,非常有经验的分析师和非常聪明的量化指标-比您聪明得多。当心进入他们的猎场,否则您将成为他们的猎物。
假设C:市场效率非常低,任何人都可以利用。大型投资公司和对冲基金太慢且繁琐,无法有效地解决它们。他们的资本和快速的计算机并没有使他们在您要玩的游戏中没有真正的优势。他们笨拙的分析师,高薪交易员和高估的量化指标也没有。
如今只有为数不多的人相信假设A。可以很容易地表明,大多数价格曲线都不遵循随机游走,市场不是理性更不是完全有效。杰克·史瓦格(Jack Schwager)在他的《市场意识与废话》一书中,列举了显而易见的愚蠢和怪异的分析师失败的案例。通常,资产价格与真实价值相去甚远。尽管所有这些都是轶事证据,但可以看到一种模式。当谣言或新闻给他们一个明确的方向时,市场反应迅速而坚定。但是,当信息有些微妙并且需要最少的解释时,它们的反应就会很慢或根本没有反应。这是一个典型示例的故事。
瑞士法郎案
2011年9月,瑞士央行设定了瑞士法郎的价格上限。目的是保护旅游业和出口业免受高估货币的影响。限制设置为EUR / CHF的价格1.20,瑞士央行誓言要捍卫所有敌人。
价格上限是一种罕见且引人注目的市场无效。它可以立即转换为高利润,几乎没有风险的交易系统(下面将解释其工作原理)。因此,您通常会期望在欧元兑瑞郎汇率升至1.20之后会有强劲的市场反应。但是反应来了很长一段时间。
毫无疑问,瑞士是一个默默无闻的欧洲国家,对那些可能以奶酪闻名的美国主要贸易公司而言也是如此。他们要么没有注意到价格上限,要么只是忘记为欧洲办事处配备现代化的通讯设备。因此,来自欧洲的骑乘信使花了三个月的时间在小山和山谷上空航行,穿越大西洋,也许是在途中与行贿者,海盗和印第安人作战,才能到达纽约市并大喊:“瑞士人有价格上限!”。
但是,您可以用价格上限做什么呢?到2012年1月,大型市场参与者终于想出了一个主意。没有像交易系统那样微妙的东西。相反,他们开始购买疯狂数量的法郎,以给欧元兑瑞郎的价格带来压力:
EUR / CHF价格曲线,2011年9月– 2012年8月
一个明显的想法是,当存在价格边界时,打破价格边界必须有一定的利润。该游戏投入了大量的精力,耐心和金钱。从2012年5月起,欧元兑瑞郎的价格被迫接近其1.20的限制。但是可惜的是,价格上限并未崩溃。您不会对SNB感到困惑。2012年,瑞士人为了捍卫价格上限而竖起了2000亿美元的墙。攻击者从未有过机会。第一次放弃是在2012年9月,到2013年1月,所有人的尾巴都退缩到了两腿之间(可能损失惨重):
EUR / CHF价格曲线,2012年9月– 2013年5月
现在,算法系统的方法是免费的。在2012年的CHF战斗中,由于私人交易员和黑客缺乏参与市场操纵游戏的资金,他们被迫不活动。2013年1月,第一批黑客开始使用Grid Trader这种特定方法来利用市场低效。 这就是一台印钞机。
“印钞机“算法
网格交易是一个非常简单的系统。它以高于和低于当前价格的固定网格放置待处理的多头和空头交易,利润目标为相同的网格距离。因此,只要价格在任意方向上越过网格线,便会打开和关闭交易。这样的系统有一个假设的100%的赢率,因为交易要么以利润平仓,要么根本没有平仓。但是,网格交易者通常使用虚拟对冲机制来关闭未平仓头寸,而不是反方向开设新头寸。通过减少交易成本和保证金可以提高总利润。但是,它允许亏损平仓。因此,网格交易者的实际获胜率在60%左右。
网格交易者典型的基于模型的系统。它假设某种市场力量将价格保持在渠道内。这是这种情况:上限可以防止EUR / CHF跌破1.20,但也可以防止其升得太高,因为瑞士央行最终必须回购为捍卫上限而出售的所有法郎。这样的数学模型是一个随机游走,边界为1.20,并且存在一些漂移项,从而拉低了价格。这种约束是网格交易的先决条件。没有它,网格交易将只是高风险的赌博,因此被列为不合理的交易方法集合。
这是上述脚本在2013年应用于EUR / CHF的盈亏曲线(蓝色):
欧元/瑞郎网格交易盈亏曲线2013
我们可以看到,与1月和5月一样,价格的大幅波动会导致大幅下跌(图表中的红色水下峰值)。但是由于波动是有限制的,因此我们可以估算最大损失,并只需在帐户中保留足够的资本即可。这样,以上脚本可产生130%的年回报率和1.7的夏普比率-几乎没有风险(只要价格上限保持不变)。
这种交易策略的消息在2013年慢慢传开。越来越多的私人交易员和金融黑客,以及越来越多的大型市场参与者跃入潮流。设置价格上限三年后,成千上万个这样的系统远远不断地试图从EURCHF价格的无效性上赚钱,结果是价格波动持续下降:
2013年7月– 2014年12月欧元兑瑞郎价格和波幅
波动性降低意味着网格交易的利润降低。必须投入更多的资金,并且必须收紧网格以进行补偿。但是有一个自然的极限。网格大小不能小于交易成本。到2014年秋季,波幅接近于零。随之而来的是价格下跌的不祥之兆,仿佛某些大型市场参与者(可能是瑞士央行本身)会在预期未来发生事件的情况下继续出售欧元并购买瑞郎。那将是私人交易者退出游戏的绝佳时机。当然,像我这样的笨蛋没有。众所周知,瑞士法郎发生了什么事:
EUR / CHF价格,2015年1月
2015年1月15日上午,瑞士央行在新闻发布会上宣布取消价格上限。欧元/瑞郎在数分钟内从1.20跌至平价下方。显然,这是快速而极端的市场反应–与4年前推出价格上限不同。价格下跌杀死了许多账户,甚至杀死了一些经纪商。顺便说一句,基于两种货币的相对购买力,EUR / CHF的“实际价值”一直处于1.50区域。
我们可以从中以及类似的例子中学到什么?
结论
“ 构建更好的策略”系列的下一部分将处理基于模型的系统,已知的市场低效率以及利用这些系统的方法。