[問題] 請問累計及停止條件設定之問題已回收

看板MATLAB作者 (霹靂霹靂貂)時間15年前 (2010/08/18 16:53), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
最近想要計算假如在一組交易明細中 例如:淨值 是否交易 2.5 1 2.4 0 2.2 1 2.6 1 . . . . 3.0 0 如果有1表示有交易,金額為6000 單位數為金額*淨值 報酬比率為((累計單位數*目前淨值)-目前總投資金額)/目前總投資金額 假如達到一定報酬比率金額就停止下一次交易金額從0開始累計 我想要知道總投資金額和停止幾次及賺了多少錢 這是我寫的程式 A=[2.5 1; 2.4 0; . . . . 3.0 0]; Q=[];QQ=0;QQQ=[];money=[];sumoney=0;V=[]; for i=1:length(A); if A(i,2)==1; Q(i,1)=6000/A(i,1); %算單位數% else Q(i,1)=0; end; if A(i,2)==1; money(i,1)=6000; %投資金額% else money(i,1)=0; end; QQ=Q(i,1)+QQ; %總淨值% QQQ(i,1)=QQ*A(i,1); %贖回金額% sumoney=money(i,1)+sumoney; %總投資金額% V(i,1)=(QQQ(i,1)-sumoney)/sumoney; %投資報酬率% if V(i,1) >= 0.1; %停止條件% break; end; end; 這樣是會停止但我不知要怎樣讓他接下去重新算新的投資金額 而且這邊算出的累計金額只有最後總累計 我想知道每次的累計金額 因為我還是新手感覺我的程式應該可以再簡化一些 而且我試過幾種不同指令還是沒辦法得到我要的資料 想請板上的高手們幫我解答 感謝大家^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.40.249

08/18 17:15, , 1F
把break;拿掉,改成列印收益等資訊,並把那幾個參數重設
08/18 17:15, 1F

08/18 17:17, , 2F
請問在V(i,1)>=0.1時,你要把所有投資全部出清嗎?
08/18 17:17, 2F

08/18 17:27, , 3F
嗯~大於0.1就會全部出清~再重新進場投資
08/18 17:27, 3F
文章代碼(AID): #1CQv-8x7 (MATLAB)
文章代碼(AID): #1CQv-8x7 (MATLAB)