excel要如何計算各時間區段的累計報酬率?

資料如下:

excel要如何計算各時間區段的累計報酬率?

左半部是每日加權指數報酬率,右半部是每組有兩個時間點的資料

請問要如何快速計算兩個時間點之間的累計報酬?

例如:如果要計算第一筆資料2006/01/02到2006/01/19的累計報酬

必須要找到2006/01/02日報酬(-0.013176)一直到2006/01/19日報酬(0.002057)共14筆資料+1後相乘

我自己的方法是找出個時間點的位置後用product和offset計算

請問有沒有更快或是更簡潔的方法可以快速計算任兩個時間點的累計報酬?

2015-03-09 19:35 發佈
sumif


hkry7533 wrote:
資料如下:
左半部是...(恕刪)

Eigen wrote:
sumif...(恕刪)


Sumif是加總吧?

我需要用乘的
找到B欄對應的收盤價,
再用: (第2個收盤價)/(第1個收盤價)
J2儲存格會相當於: =B15/B2
不知道是不是你要的結果.
hkry7533 wrote:
2006/01/19日報酬(0.002057)共14筆資料+1後相乘...(恕刪)


這裡我看不懂…

但是如果是時間區段相乘的話,我會這樣做
(放在J2,其它往下拉就可以)
=PRODUCT(INDIRECT("d" & MATCH(H2,A:A,0) & ":" & "d" & MATCH(I2,A:A,0)))

那個+1,我實在看不懂您要怎麼加,剩下的就自行修改吧
假設用原檔來計算1/2~1/19
H2為起始日
I2為結束日

1. 報酬率+1 相乘

用 VLOOKUP(H2,$A:$D,2) 找出 1/2 的收盤價 6462.06

用 VLOOKUP(I2,$A:$D,2) 找出 1/19 的收盤價 6512.288
[圖看不到1/19,用推算的 1/18的收盤價*(1+0.02057)]

再用這兩值去算 1/3~1/19的報酬率
(6512.288-6462.06)/6462.06=0.00777275...

用 VLOOKUP(H2,$A:$D,4)找出1/2的報酬率 -0.013176
再用 (1-0.013176)*(1+0.0077275...)=0.994494... 得出你要的答案

簡化算式為
=(1+RATE(1,-VLOOKUP(I2,$A:$D,2),VLOOKUP(H2,$A:$D,2)))*(1+VLOOKUP(H2,$A:$D,4))
=0.994494...



2.只算1/2~1/19的報酬率
1/2開盤價= VLOOKUP(H2,$A:$D,2)/(1+VLOOKUP(H2,$A:$D,4))

1/2~1/19的報酬率
=RATE(1,-VLOOKUP(I2,$A:$D,2),VLOOKUP(H2,$A:$D,2)/(VLOOKUP(H2,$A:$D,4)+1))
=-0.005505618


資料每一筆抓出算和只拿頭尾來算好像一樣的結果?
所以我只用頭尾來計算,參考看看。


M1 N1 輸入日期

找個空格,F2 , 貼上 =PRODUCT(IF(A2:A200>$M$1,1,IF(A2:A200<$N$1,1,D2:D200+1)))

CTRL + SHIFT +ENTER (產生array formula)


Eigen wrote:
M1 N1 輸入日...(恕刪)


謝謝!
if陣列公式我之前也有試過,也是一個方法

YS2000 wrote:
假設用原檔來計算1...(恕刪)


謝謝大大!
你突破盲點了
我完全忘記用前後算就好根本不用全部相乘算累計......
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?