我想在投资组合管理中尝试遗传算法,但我现在不知道主要功能和约束应该是什么样子。
我有股票价格矩阵、权重向量和计算投资组合价格和投资组合回报/风险(标准)比率的脚本。我想在 MATLAB 中使用遗传算法,以便可以测试 wright 的不同组合并找到最佳投资组合(最佳 - 最高回报/风险(标准)比率。
prices
- 矩阵,其中列代表不同的股票,行代表当日价格。
w
- 带权重的向量[0.333, 0.333, 0.333]
计算投资组合绩效的脚本:
d = length(prices);
n = numel(prices);
for j = 1:d
temp = 0;
for i = 1:n
temp = temp + prices(j,i) * w(i);
end
ap(j) = temp;
end
port_performance = rr_ratio(ap); %calculates return/risk(std) ratio.
我需要找到最佳的权重组合,因此port_performance
会有最大值。GA 函数应该是什么样子的,那么?sum(w) = 1;
的每个元素w >= 0
?
谢谢