2 votos

¿Puedo calcular la rentabilidad media anualizada de las inversiones mantenidas durante distintos periodos de tiempo?

Mi pregunta es: Teniendo en cuenta una serie de inversiones de distintos importes, mantenidas durante distintos periodos de tiempo, ¿cómo podría calcular un crecimiento medio anualizado aproximado de toda la cartera a lo largo de su vida? (Supongo que una respuesta exacta no será posible a partir de estos datos).

En mi cartera, he seguido los siguientes datos:

  • Fecha de compra
  • Coste de la compra
  • Dividendos recibidos
  • Fecha de venta
  • Valor de venta

A partir de eso puedo calcular:

  • Beneficio/pérdida (Valor de venta + Dividendos - Coste de compra)
  • Crecimiento real (Beneficio/Pérdida ÷ Coste de compra)
  • Número de años de posesión (fecha de venta - fecha de compra) ÷ 365
  • Crecimiento anualizado ((Valor vendido + Dividendos)/Coste de compra ^ (1/Número de años de permanencia)) - 1

Aquí hay algunos valores del mundo real, si eso ayuda:

Example data

4voto

Sergey Osypchuk Puntos 2225

En el método siguiente se calculan todos los valores de la cartera en cada intervalo de tiempo. A continuación, se agregan en cada periodo de tiempo y se calcula la rentabilidad del periodo. Por último, los rendimientos del periodo se componen y se anualizan.

Por ejemplo, la rentabilidad de la cartera entre períodos x5 y x6 es

(a11 + a23 + a34)/(a1 + a22 + a33) - 1 = 0.903 %

donde a1 es el valor inicial del activo 1 y a11 es el valor del activo 1 después de un período de tiempo. Si se conocieran los valores reales se obtendría un mejor resultado, pero dada la escasa información se calculan.

Componer los rendimientos del período es lo mismo que tomar el rendimiento ponderado en el tiempo.

enter image description here

s1 = {2017, 6, 7};
e1 = {2017, 12, 4};
s2 = {2015, 9, 2};
e2 = {2017, 11, 1};
s3 = {2015, 2, 25};
e3 = {2017, 7, 3};
s4 = {2015, 2, 20};
e4 = {2017, 6, 2};

d1 = QuantityMagnitude@DateDifference[s1, e1, "Day"];
d2 = QuantityMagnitude@DateDifference[s2, e2, "Day"];
d3 = QuantityMagnitude@DateDifference[s3, e3, "Day"];
d4 = QuantityMagnitude@DateDifference[s4, e4, "Day"];

a1 = 4606.75;
v1 = 4529 + 27.48;
a2 = 3500;
v2 = 5827 + 56;
a3 = 2900;
v3 = 3998 + 72;
a4 = 2900;
v4 = 3566;

r1 = (v1/a1)^(1/d1) - 1.0
r2 = (v2/a2)^(1/d2) - 1.0
r3 = (v3/a3)^(1/d3) - 1.0
r4 = (v4/a4)^(1/d4) - 1.0
-0.0000609549
0.000656731
0.000394644
0.000248211

Estas son las tasas de rendimiento diarias de los cuatro activos.

x1 = {2015, 2, 20};
x2 = {2015, 2, 25};
x3 = {2015, 9, 2};
x4 = {2017, 6, 2};
x5 = {2017, 6, 7};
x6 = {2017, 7, 3};
x7 = {2017, 11, 1};
x8 = {2017, 12, 4};

k1 = QuantityMagnitude@DateDifference[x1, x2, "Day"];
k2 = QuantityMagnitude@DateDifference[x2, x3, "Day"];
k3 = QuantityMagnitude@DateDifference[x3, x4, "Day"];
k4 = QuantityMagnitude@DateDifference[x4, x5, "Day"];
k5 = QuantityMagnitude@DateDifference[x5, x6, "Day"];
k6 = QuantityMagnitude@DateDifference[x6, x7, "Day"];
k7 = QuantityMagnitude@DateDifference[x7, x8, "Day"];

a41 = a4 (1 + r4)^k1;
a42 = a41 (1 + r4)^k2;
a43 = a42 (1 + r4)^k3
3566.

El valor calculado del activo 4 después de tres períodos es el mismo que el valor final v4 arriba.

a31 = a3 (1 + r3)^k2;
a32 = a31 (1 + r3)^k3;
a33 = a32 (1 + r3)^k4;
a34 = a33 (1 + r3)^k5
4070.
a21 = a2 (1 + r2)^k3;
a22 = a21 (1 + r2)^k4;
a23 = a22 (1 + r2)^k5;
a24 = a23 (1 + r2)^k6
5883.
a11 = a1 (1 + r1)^k5;
a12 = a11 (1 + r1)^k6;
a13 = a12 (1 + r1)^k7
4556.48
z1 = a41/a4;
z2 = (a31 + a42)/(a3 + a41);
z3 = (a21 + a32 + a43)/(a2 + a31 + a42);
z4 = (a22 + a33)/(a21 + a32);
z5 = (a11 + a23 + a34)/(a1 + a22 + a33);
z6 = (a12 + a24)/(a11 + a23);
z7 = a13/a12;

k = QuantityMagnitude@DateDifference[x1, x8, "Day"];

(z1*z2*z3*z4*z5*z6*z7)^(365/k) - 1
0.154885

Por tanto, la rentabilidad de la cartera es del 15,49% anual.

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