前面一篇文章《量化策略中的最大回撤率及代码实现》介绍了评估一个策略好坏的重要指标:最大回撤率。今天再来聊聊同样重要的评估指标:胜率和盈亏比。我之所以把胜率和盈亏比放在一起讨论,是因为一个高胜率的交易系统并不一定能产生高收益,或者说高胜率不是构成正向预期交易系统的必要条件。单独的盈亏比亦是如此。
胜率
胜率就是目标周期内盈利的交易次数占总交易次数的比例,例如:一段时间内,一共交易了100次,盈利了70次,那么该周期的胜率为:70 / 100 * 100% = 70%
。前文讲到高胜率并不能产生高收益,甚至有可能会产生亏损,道理很简单,假如盈利的70次交易每次都盈利100美金,总盈利7000美金,但亏损的30次交易每次都亏损250美金,总亏损7500美金。如此,即使胜率达到了70%,也不能保证我们的交易系统是正向盈利的。
假如你的胜率是99%,上面举的例子每次开固定仓位,显然1笔亏损超过99笔的盈利有点难度,换个例子。初始净值10000美金,还是做了100次交易,前99次交易每次使用10%的仓位,每次盈利10%。最后1笔交易时,账户余额已经达到10000 * (1 + 0.1*0.1)^99 = 26780.33
美金了。你可能觉着交易了这么多次,每次都能盈利,因此决定在第100次交易的时候梭哈,大不了赢了会所嫩模,亏了工地干活。可惜最后1笔交易爆仓了,你血本无归。这里涉及一个仓位管理
的问题,将在后续的文章中讲到。
盈亏比
盈亏比就是平均盈利金额与平均亏损金额的比值。公式如下:
盈亏比 = 平均盈利 / 平均亏损 = (盈利总金额 / 盈利次数) / (亏损总金额 / 亏损次数)
以上面的例子,盈利次数70,盈利总金额7000,亏损次数 30,亏损总金额 7500,那么盈亏比 = (7000/70)/(7500/30) = 0.4
。 0.4的盈亏比是一个什么概念的呢?可以理解为盈利的时候只能盈利0.4,亏损的时候却要亏损1。0.4的盈亏比,如果要盈利,需要满足大于1 / (1+0.4) *100%= 71.423%
的胜率。
胜率和盈亏比有一个公式,可以计算胜率一定的情况下,至少需要多少的盈亏比,交易系统才能正向盈利,反之亦然。
y = 1 / (1+x)
y表示胜率,x表示盈亏比。它的函数图像如下所示:
由图像可以看出,盈亏比越大,需要的胜率越低。
y = (1-x) / x
y表示盈亏比,x表示胜率。它的函数图像如下所示:
由图像可以看出,胜率越大,需要的盈亏比越低。
从上面两个图像可以看出胜率和盈亏比呈现负相关。
应用
在实际写策略中,要同时做到高胜率和高盈亏比是一件很难的事情,也不能绝对的说做不到,有这个可能。因此,我们应该将主要精力放在其中一个上面。
提高胜率其实也是一件很难的事情。因为未来的行情是不可预测的,所有的技术分析和技术指标都是依据历史预测未来。现在有好多交易者都花费大部分时间研究技术指标,试图找到更好的入场点,但是盈利一点点就急于平仓止盈,当亏损的时候又放任亏损继续扩大。
反观提高盈亏比相对提高胜率容易许多。只要做好仓位管理,风险控制,让利润奔跑,难度不大,这方面的内容本文就不展开讲了,后面细讲。一般情况下,至少要做到盈亏比为2或3。当盈亏比为2的时候,只要大于33.3%的胜率就可以盈利,当盈亏比为3的时候,大于25%的胜率就可以盈利。
胜率和盈亏比都是滞后的指标,只有经过了一段时间的交易后,才能进行统计。但是在回测时作为评估策略好坏的指标就比较有用了。