在前面一篇文章里已经谈了什么是凯利判据、如何利用凯利判据做组合优化和资产配置,这里继续讨论实际操作,直接给出数学模型、求解代码。
1、数学模型
假设有$ N$ 种备选资产,它们预期收益率为$ \mu$ ,其中$ \mu$ 为一个长度为$ N$ 的行向量,资产之间的协方差矩阵为$ \Sigma$ 。现在假设投资者在各个资产上的配置权重向量为$ w$ ,它是一个长度为$ N$ 的列向量,那么这个资产组合的收益率为$ \mu w$ ,波动率为$ \sqrt{w'\Sigma w}$ ,即收益符合正态分布$ N(\mu w, \sqrt{w'\Sigma w})$ ,不妨记$ \alpha=\mu w, \sigma= \sqrt{w'\Sigma w}$ ,由于凯利判据是指投资者具有$ \log$ 的效用函数,故我们需最大化下式
由于很难估计$ \mathrm{E}(\log(1+x))$ ,实际操作中利用$ \log(1+x)$ 在$ 1+\alpha$ 处的泰勒展开式将上式展开为
舍去最后的小项,求解凯利判据即求解下面最优化问题
与此对比,马柯维茨组合优化理论的优化对象为
其中$ \lambda$ 为投资者的风险厌恶系数。注意到$ \alpha \sim 0, \log(1+x)\sim x$ ,凯利判据近似于风险厌恶系数为$ \lambda=0.5$ 的马柯维茨组合优化!
$ 0.5$ 是一个较低的风险厌恶水平,故凯利判据得到的结果对波动的惩罚较小,其结果的波动率较大。
2、求解代码
将$ \alpha=\mu w, \sigma= \sqrt{w'\Sigma w}$ 代入,我们需要求解资产权重向量$ w$ ,
求解此式的麻烦之处在于目标函数不是凸函数,无法直接对它进行最优化求解。下面提供的代码通过先固定目标组合的收益,然后最小化组合的波动率求解(相当于枚举效率前沿上的点)。
Q. E. D.