R

季度再平衡的幾何回報和績效結果

  • December 14, 2014

我有一個每 3 個月重新平衡一次的投資組合。投資組合由具有每日對數回報的資產組成。R使用: 更具體​​地說charts.PerformanceSummary()是通過.繪製結果時,我有點困惑library(PerformanceAnalytics)。採取以下投資組合EQUALwt,其範圍從 2013 年 1 月到 2014 年 6 月。

EQUALwt <- structure(c(0.0178647409955362, -0.0723746508445446, -0.00458728466704914, 
0.238164594011257, -0.211824465096801, 0, -0.0406297323744437, 
0, 0.0447620578622464, 0.0158783514305815, -0.0742389273092776,  
-0.0275507850334035, 0, 0, 0, 0.00781313587602611, 0, 0.400176058116336, 
0, 0, 0.0549071523016913, 0, -0.0102054986300638, 0.18349229377005, 
0, 0.503725755135566, 0, 0, 0, 0.173286795139986, -0.134749125183172, 
0, -0.144954623813235, 0.106416953856421, 0.117500907311434, 
0, 0.00617315314759284, 0.0048310682066007, 0.00561821396301465, 
-0.118614494898779, 0.061362327207127, -0.0312907857385016, 0.218867184338475, 
-0.18032951438166, 0.0557858878285524, 0, 0, 0, 0, -0.199626924054443, 
-0.0679834288709105, 0.173286795139986, 0.0294457589140959, 0, 
-0.101366277027041, -0.134749125183172, 0.0982606470274018, -0.00909191104271873, 
0.0161346302843927, 0.169349705897952, -0.119893270065472, -0.0950368250309686, 
0.0957480630640265, 0.345862352246915, -0.290076464418362, 0.0455803891984886, 
-0.29078770245142, 0, -0.101366277027041, 0, -0.00529714841430817, 
-0.00392421399289589, 0, 0, 0, 0.00392421399289589, 0, 0, 0.101366277027041, 
-0.101366277027041, 0.101366277027041, -0.101366277027041, 0, 
0, 0.101366277027041, -0.101366277027041, 0.101366277027041, 
-0.101366277027041, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.00459018909397668, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.0173932042470827, 
0.0195106767517173, -0.0206496308856826, -0.00114416675685292, 
0.0144806619331761, 0, 0, 0, 0, -0.0418056903486528, 0.402359478108525, 
0, -0.0217528442474074, 0, -0.00220265742053874, 0.0243967543311115, 
0.00108460039964958, -0.00217392674188849, -0.0228469378973572, 
-0.00240386467486048, -0.0212213330373311, -0.0217528442474074, 
-0.0719205181129453), class = c("xts", "zoo"), .indexCLASS = c("POSIXct", 
"POSIXt"), .indexTZ = "", tclass = c("POSIXct", "POSIXt"), tzone = "", index =    
structure(c(1357084800, 
1357171200, 1357257600, 1357516800, 1357603200, 1357689600, 1357776000, 
1357862400, 1358121600, 1358208000, 1358294400, 1358380800, 1358467200, 
1358726400, 1358812800, 1358899200, 1358985600, 1359072000, 1359331200, 
1359417600, 1359504000, 1359590400, 1364774400, 1364860800, 1364947200, 
1365033600, 1365120000, 1365379200, 1365465600, 1365552000, 1365638400, 
1365724800, 1365984000, 1366070400, 1366156800, 1366243200, 1366329600, 
1366588800, 1366675200, 1366761600, 1366848000, 1366934400, 1367193600, 
1367280000, 1372636800, 1372723200, 1372809600, 1372896000, 1372982400, 
1373241600, 1373328000, 1373414400, 1373500800, 1373587200, 1373846400, 
1373932800, 1374019200, 1374105600, 1374192000, 1374451200, 1374537600, 
1374624000, 1374710400, 1374796800, 1375056000, 1375142400, 1375228800, 
1380585600, 1380672000, 1380758400, 1380844800, 1381104000, 1381190400, 
1381276800, 1381363200, 1381449600, 1381708800, 1381795200, 1381881600, 
1381968000, 1382054400, 1382313600, 1382400000, 1382486400, 1382572800, 
1382659200, 1382918400, 1383004800, 1383091200, 1383177600, 1388534400, 
1388620800, 1388707200, 1388966400, 1389052800, 1389139200, 1389225600, 
1389312000, 1389571200, 1389657600, 1389744000, 1389830400, 1389916800, 
1390176000, 1390262400, 1390348800, 1390435200, 1390521600, 1390780800, 
1390867200, 1390953600, 1391040000, 1391126400, 1396310400, 1396396800, 
1396483200, 1396569600, 1396828800, 1396915200, 1397001600, 1397088000, 
1397174400, 1397433600, 1397520000, 1397606400, 1397692800, 1397779200, 
1398038400, 1398124800, 1398211200, 1398297600, 1398384000, 1398643200, 
1398729600, 1398816000, 1404172800), tzone = "", tclass = c("POSIXct", 
"POSIXt")), .Dim = c(136L, 1L), .Dimnames = list(NULL, "EQUALwtLoHi"))

我對geometric規範有點困惑。

# Geometric Return
charts.PerformanceSummary(EQUALwt, geometric=TRUE)

# Non-Geometric Return
charts.PerformanceSummary(EQUALwt, geometric=FALSE)

正如你所看到的,它們有很大的不同!我知道幾何回報考慮了每日復合,但您如何解釋非幾何回報?這是累積總和,即買入並持有(這就是我對這些資產所做的事情)?

是否可以肯定地說,為了使非複合回報為真,投資組合必須在每個再平衡期間以相同數量的現金開始?

實際上,您的兩個結果都不是完全正確的。如 Return.calculate 函式的詳細資訊中所述,大多數 PerformanceAnalytics 函式使用離散返回,而不是對數返回。

要獲得正確的結果,您必須將數據從日誌返迴轉換為簡單返回。

比較以下圖表:

charts.PerformanceSummary(exp(EQUALwt)-1, geometric=TRUE, wealth.index=TRUE)
charts.PerformanceSummary(EQUALwt, geometric=FALSE)

第一個是正確的。由於第二個使用對數返回,所以第二個累積返回圖表的結果是實際返回的對數;即,如果您在第二個函式的 CummulativeReturns 上使用 exp(),您將獲得第一組結果。

引用自:https://quant.stackexchange.com/questions/15856