【笔记】基于斜率最大的资产组合优化

基于《现代投资组合理论与投资分析 9th》;

对基于斜率的资产组合优化的推导,包含MATLAB代码;

基础定义

xi:iˉri:irf:σi:ip:ˉrp=ni=1xiˉriσ2p=ni=1x2iσ2i+ni=1nj=1jixixjσij

推导过程

基于斜率最大,得出目标函数:

MAX θ=ˉrprfσpni=1xi=1

带入基础定义得:

θ=ni=1xi(ˉrirf)ni=1x2iσ2i+ni=1nj=1jixixjσij

求最大值即对所有x求导等于0:

Set λ=ni=1x2iσ2i+ni=1nj=1jixixjσijdθdxi=(ˉrirf)λ12(ni=1xi(ˉrirf))·12λ12·(2xiσ2i+2nj=1jixjσij)λ=0(ˉrirf)(ni=1xi(ˉrirf))·λ1·(xiσ2i+nj=1jixjσij)=0(ˉrirf)(ˉrprf)·λ1·(xiσ2i+nj=1jixjσij)=0(ˉrirf)λnew·(nj=1xjσij)=0(ˉrirf)=λnew·(nj=1xjσij)Set  λnewxi=zi(ˉrirf)=nj=1zjσij

当用于矩阵求解时:

R=[ˉr1ˉr2ˉrn],Z=[z1z2zn]H=[σ21σ12σ1nσ21σ22σ2nσn1σn2σ2n]Rrf=HZZ=H1(Rrf)xi=zini=1zi

【MATLAB 代码】

1
2
3
4
5
6
7
8
9
10
function [X] = portfolio_optimization(R,H,rf)
% Z = H^(-1)(R-rf)
n = length(R);
X = zeros(n,1);
Z = inv(H)*(R-rf);
Z_sum = sum(Z);
for i = 1:1:n
X(i)=Z(i)/Z_sum;
end
end
MATLAB

【笔记】基于斜率最大的资产组合优化
http://achlier.github.io/2021/02/13/基于斜率最大的资产组合优化/
Author
Hailey
Posted on
February 13, 2021
Licensed under