被动型FOF产品规划方案(附代码)

本文介绍了被动型FOF产品规划,涉及马科维兹模型、风险平价模型和Black Litterman模型的资产配置策略。通过Python代码实现,展示在不同模型下的投资组合权重优化,适用于基金中的基金投资决策。
摘要由CSDN通过智能技术生成

被动型FOF产品规划方案(附代码)

前言

按照基本的投资策略,基金可以被分类为被动型基金和主动性基金。被动型基金主要投资于指数产品,主动性基金则会采取更加灵活多变的策略来选择标的资产池。但是,两者都需要对标的资产的权重进行优化。

本文将介绍了笔者设计的一个用于被动型FOF(“ Fund of Fund” ,中文 “基金中的基金” )投资的产品方案设计思路,涉及到的调仓权重优化方法包括马科维兹优化、风险平价优化、Black-Litterman模型。

在连接至Wind 数据库的情况下,运行程序并输入您所需要的投资组合的起止日期、标的资产的代码、回测数据所使用的的时间窗口、调仓频率,您就可以得到投资组合在三种优化方法下每日的持仓权重。 (代码和数据于本文末下载)

资产配置模型

马科维兹模型

马科维茨的均值一方差组合模型(Markovitz Mean-Variance Model)用收益率序列均值来代表投资组合的收益,用收益率序列方差来代表投资组合的风险,以此来平衡投资组合的风险和收益。
投资组合预期收益的计算公式为:

E ( R p ) = ∑ i ω i E ( R i ) E(R_p)=\sum_{i}^{}\omega_iE(R_i) E(Rp)=iωiE(Ri)

投资组合预期方差的计算公式为:
σ p 2 = ∑ i ω i 2 σ i 2 + ∑ i ∑ i ≠ j ω i ω j σ i σ j ρ i j \sigma_{p}^{2}=\sum_{i}^{}\omega_{i}^{2}\sigma_{i}^{2}+\sum_{i}^{}\sum_{i\neq j}^{}\omega_i\omega_j\sigma_i\sigma_j\rho_{ij} σp2=iωi2σi2+ii=jωiωjσiσjρij
用矩阵的方法来表示有效前沿:
ω T ∑ ω −   q   ∗ R T ω \omega ^{T}\sum \omega-~q~*R^{T}\omega ωTω q RTω
用代码实现,如下:

#定义马科维茨优化的目标函数
def funs(weight,sigma):
    weight = np.array([weight]).T
    result = np.dot(np.dot(weight.T,np.mat(sigma)),weight)[0,0]
    return(result)

风险平价模型

风险平价模型即构造等风险投资组合,这里采用的是标的资产的波动率作为风险指标。

我们定义投资组合的波动率为:
σ ( ω ) = ω ′ Σ ω ′ \sigma(\omega)=\sqrt{\omega^{'}\Sigma\omega^{'} } σ(ω)=ωΣω
我们的目标是令标的资产i对投资组合波动率的风险贡献度为投资组合总风险的的1/N:
σ ( ω i ) = ω i ∗ ∂ σ ( ω ) ∂ ω i = ω i ( Σ ω ) i ω ′ Σ ω ′ = σ ( ω ) N \sigma(\omega_i)=\omega_i\ast \frac{\partial \sigma(\omega)}{\partial \omega_i} \\=\frac{\omega_{i}(\Sigma\omega)_{i}}{\sqrt{\omega^{'}\Sigma\omega^{'}} } =\frac{\sigma(\omega)}{N} σ(ωi)=ωiωiσ(ω)

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值