请选择 进入手机版 | 继续访问电脑版
彩云比特
摘要

一、优化策略 1、策略是基础 策略是整个系统内的基础模块,不管怎么组合,或者头寸调整等,策略首先都必须是能正期望值的才行。负期望值的策略无法靠资金管理等外部方法来改变策略的期 ...

一、优化策略

1、策略是基础


      策略是整个系统内的基础模块,不管怎么组合,或者头寸调整等,策略首先都必须是能正期望值的才行。负期望值的策略无法靠资金管理等外部方法来改变策略的期望收益。将策略做到优秀,稳定,才能构建出好的资产管理系统。


作为基础模块,策略最重要的特性是稳定。甚至在收益率和稳定性两者之间做选择时,我们都应该优先选择稳定性。所以,在研发策略时,必须要避免过度优化,交易次数要足够多,覆盖的行情要完整,不能仅拿牛市行情来开发策略,而应该要覆盖完整的牛熊周期。另外选择参数时,要选择平坦的参数区,最好要能对参数不过度敏感,例如选择了一个盈利很大的参数,这个参数步进加一档策略就亏钱了,那这样的参数值就太不稳定,不适合用来实盘。

2、现有环节优化

重新审视策略的每个环节的细节,寻找提高的可能,整体的竞争优势是每一点细微的优化累计起来的。


像我们上次举例说的双均线策略,这种常见的基于技术指标的交易策略,满足指标时开仓,到不满足时平仓,回测经常会发现,回吐掉超过半数的浮盈之后才离场,那我们就可以想办法来提高止盈的效率,比如把指标反向离场改成跟踪止盈,就这么简单的一个优化就能大大减少浮盈回撤的比例,增加收益。


每个环节都可以想办法提高,简单的直接用指标来做成策略,因为使用的人多,通常效果是不太好的,也可以只取中间有价值的一部分,其他环节用自己的方法来处理,更容易写出好策略。

3、增删控制模块

策略是各个环节组合在一起的一个整体,修改其中的一个部分,比如简单的增加一个初始止损,就能降低很多试错的成本,这样开仓条件就可以设置得更松,交易次数会增加,策略总体的效果也会有很大的改变。

仔细研究策略的特征,寻找哪些地方可以增加或者调整控制模块,想方法补偿策略的劣势,满足各项硬性要求,提高优势。



二、优化参数

1、优化后的参数才能体现策略优劣

      把策略写出来并没有完成工作,每个策略都会有参数,参数会决定策略的盈利能力。当我们研发出一个新策略,这时参数都是主观定的,不可能是很适合行情的值。需要在一个区间范围内,针对目标标的和周期,使用不同的参数来测试,找到较优的参数,才能体现策略真实的能力水平。

2、基于目标选择参数

      策略有一些必须达到的硬性标准,比如交易次数,单笔平均利润,回撤率等,达到这些标准之后才能考虑收益的最大化。在选择参数时,不能简单的选择利润最大的参数,而需要选择满足可用标准之后的较好的参数,假如策略交易次数不够,那么选择更低开仓要求的参数就能提高交易次数。

3、最优化策略绩效

后面我们会优先上线参数优化功能,只需要设置每个参数的上下限区间和每次变化的步进大小,程序会帮你在设置的区间穷举计算所有参数组合的回测报告结果,然后按选择的标准排序,来挑选选择最优的参数。
三、比策略更重要的问题

整个交易系统来说,策略的组合和资金管理,是比单个策略的优化更重要的,基于组合的角度来看策略,对单个策略的要求可以降低很多,那就会增加选择。而且策略是竞争性的,越是收益高、回撤小的策略,越难以稳定,在策略组合的层面来选择不那么突出,但是稳定的策略,然后组合起来,是更优的方法。


1、策略针对的行情不同


市场行情的构成是有很多变化,很复杂的,每种特征都可以开发策略来做,每个策略针对一个特定的行情,优化好策略。


同时还可以在不同的标的和周期上来做策略,不同品种的行情是不同步的。


然后把多个不同的策略组合起来,这样只要有对应的行情出现,都会有策略能够捕捉到,不错过可能的盈利机会。

2、回撤期错开

      不同的策略处理的是不同的行情,发生的时间不会都在同一时刻,所以对应的连续亏损回撤的时间也不一样,当有些策略回撤时,另外其他的策略在盈利,这样可以抵消回撤的幅度。最差情况也就是所有策略回撤期一样,那也只是和没有组合的亏损程度一样。而只要策略或者交易的标的相关性不是100%,就能有提高,相关性越低,提高就越大。

3、收益累加而风险降低

多个策略赚得的收益是求和累加的,而回撤期是错开的,体现出来的结果就是系统的波动性降低,收益回撤比提高,系统风险降低。

001.jpg

马科维茨有一本叫《投资组合选择:有效分散化》的书,讲的就是组合,学术上证明了组合的优势。组合其实不仅可以用在我们量化策略,数字货币上,对于个人的财务也可以使用上,比如被动收入加主动工资收入再加上投资收入等,这样来构建一个非常稳健的个人财务体系,在1990年马科维茨因为投资组合的理论拿到了诺贝尔经济学奖。

4、降低策略的相关性


002.jpg

上图是组合效果示意图,越往上,对组合带来的优势越大。

策略的异构带来的帮助是最大的,即使不同的趋势策略,相关性也比较高,来一波趋势行情,基本都会开仓,仅有一些时间先后的区别,而趋势和震荡策略相关性就很低,甚至是负相关的,这样就带来了很好的互补效果,开仓时间可能是完全不同或者相反,有时会在趋势策略平仓的时候震荡策略开始开仓,这种组合的效果远大于其他的方式。当然并不是说其他的组合方式就不重要,而是我们应该多花时间和精力来实现策略的异构,降低系统内策略的相关性,效果最好。

四、量化的头寸分配

讲了组合,我们再来讲另一个比策略重要,并且比组合对整个系统的影响权重更大的环节,资金管理,也就是头寸。


量化交易不仅是说策略需要量化,而是整个交易系统任何环节和措施都需要量化,整个体系都是量化的,而且操作执行过程完全交付给程序处理。


既然我们的系统有多策略的组合,那不同策略使用的头寸大小也应该是量化的。

1、最优头寸大小

我们做成一个游戏案例来说明。拿本金100元开始,使用一个胜率50%的策略。这个策略赚的时候投入1份赚2份回来,亏的时候投入1份全亏光这1份。为了简化,我们假定胜负分布是均匀的。


然后有4个人,来玩这个游戏,他们唯一的区别只在于每次使用的头寸大小不同。

003.jpg

图上绿线是张大胆,这个莽汉起手就是梭哈,翻倍一次之后,接下来一把满仓梭哈爆仓了。这说明了一个问题,举例的这个游戏,我们可以非常简单的得到结论,显然是正期望值的,只要不爆仓,长期来说肯定赚。但是莽汉梭哈两次就爆仓玩完了,亏光了本金遗憾离场。

蓝线是李糊涂,糊里糊涂就每次用一半仓位吧,可能有些朋友觉得半仓已经比较轻了,但图上我们看到他翻倍然后又亏一半,再翻倍,再亏一半,一直玩下去资金就停留在这个状态。


再看剩下的红线陈明白和黑线王保守,虽然他们使用的头寸比前两人低得多,但是他们两在持续盈利。红线的陈明白赢得非常多,但是波动比较大。黑色线的王保守赢得没那么多,但是波动也小。这两个人的头寸其实从不同的目标计划来说,各有优劣,今天我们不展开说,只研究为什么头寸更大的爆仓了或者不赚钱,头寸小的却赢得比头寸大的还多。


基于胜率和赔率,有一个公式可以计算收益最大的头寸大小,这个公式叫凯利公式:


q=P - ( 1 – P ) / R;


最佳头寸 = 胜率 -(1 - 胜率)/盈亏比;


004.jpg
这个图就是基于这个公式,不同的胜率和赔率最佳头寸大小。陈明白使用的是收益最大 的头寸比例。

在说这个游戏例子之前,我们觉得策略就是盈利的全部,现在却发现同样的环境,即使是同一个策略,期望值是一样的,运行的结果却可以天差地别。资金管理可以绝对程度的改变最后的收益情况。这也是为什么说,交易上技术只占20%,而资金管理要占80 %。

而且要特别提醒的是,凯利公式是抽象的理想化场景,其实并不适合于用来计算收益最大化,用来做风险控制比较好。

2、策略组合的头寸

上面的游戏案例说明了头寸是有合适的大小的,不是说能盈利的策略或者说系统,头寸就应该越大越好。我们设定好了整个系统的风险程度,预期目标之后,不同策略之间的头寸大小怎么分配好呢?

平均分配每个策略使用的资金是很常见的做法,其实这个操作类似于写策略之后主观制定参数,等分的方法也不一定是最优的方法。


对于整个系统而言,不同的策略或者不同的标的、周期占的权重应该都是不一样的,收益率有差异,回撤也有大小区别,交易频率也不一样,对于整个系统的意义不会一样,比如说多个同质化的策略和另一个异构策略,应该对异构的策略增加资金使用。


基于整个系统全局的目标,应该对不同策略和品种设置不同的头寸大小。

五、最优化整个交易系统

将所有准备交易的标的,不同的周期,和上面运行的策略设立成多个交易任务,然后使用程序计算每个任务使用不同资金,汇总到一起组合的总的历史回测报告,再按需要的标准排序,选择最优的头寸参数。这样整个系统才是最优化的。


这个环节计算量非常的大,后面我们将使用GPU多线程计算的优势来支持这个功能。


比特真
作者:吴昊

全部评论
显示全部楼层 |
跳转到指定楼层
    您需要登录后才可以回帖 登录 | 立即注册   

    本版积分规则

    qq客服QQ
    weixin微信公众号
    weibo官方微博
    滇ICP备14007133号-1 滇公网安备 53011102000197号   
    快速回复 返回顶部 返回列表