1 votos

Resultados geométricos de rentabilidad y rendimiento para el reequilibrio trimestral

Tengo una cartera que se reequilibra cada 3 meses. La cartera se compone de activos que tienen rendimientos diarios. Estoy un poco confundido al graficar los resultados usando R : más concretamente charts.PerformanceSummary() por library(PerformanceAnalytics) . Tome la siguiente Cartera llamada EQUALwt que va de ENE-2013 a JUN-2014.

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"))

Estoy un poco confundido por la geometric especificación.

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

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

Como puedes ver, ¡son bastante diferentes! Entiendo que la rentabilidad geométrica tiene en cuenta la composición diaria, pero ¿cómo se explica la rentabilidad no geométrica? ¿Es la suma acumulada, es decir, comprar y mantener (que es lo que estoy haciendo con estos activos)?

¿Sería seguro decir que para que la rentabilidad no compuesta sea cierta, la cartera tendría que empezar con la misma cantidad de efectivo en cada período de reequilibrio?

4voto

ARKBAN Puntos 1388

En realidad, ninguno de sus dos resultados es del todo correcto. Como se explica en los Detalles de la función Return.calculate, la mayoría de las funciones de PerformanceAnalytics utilizan retornos discretos, no retornos logarítmicos.

Para obtener los resultados correctos, tendrá que convertir sus datos de retornos de registro a retornos simples.
Compara los gráficos de lo siguiente:

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

La primera es correcta. Dado que la segunda utiliza retornos logarítmicos, los resultados del segundo gráfico CummulativeReturn son el logaritmo de los retornos reales; es decir, si se utilizara exp() en el CummulativeReturns de la segunda función, se obtendría el primer conjunto de resultados.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X