Indexing in a for loop
1 回表示 (過去 30 日間)
古いコメントを表示
This is a code for daily portfolio rebalancing. I would like to rebalance every 10 days instead. How can I do that? Thanks!
.......................................................................
Rets=data(:,[2,3,4,5,6]); % All returns for the period under research
n= length(Rets);
% i represents the day number in the loop
% Amount invested is 1000 USD which is fixed at day 1001
for i= 1001:n-1
% Determine weights of global min-var portfolio
wmin_var{i-1000}= mean_var_portopt2(-10, Rets (i-1000:i-1,:));
PR_min_var(i+1)= Rets(i+1,:)* wmin_var{i-1000};
% Compute tomorrow's portfolio value as
V_min_var(1001)=1000; % first value is fixed
V_min_var(i+1)= V_min_var(i)*(PR_min_var(i+1)+1);
end
0 件のコメント
回答 (1 件)
Joakim Magnusson
2014 年 8 月 12 日
I'm not sure i understand but maybe this will work for you:
for i= 1001:10:n-1
参考
カテゴリ
Help Center および File Exchange で Portfolio Optimization and Asset Allocation についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!