Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert sind; Die von diesem Forum gesetzten Cookies düfen nur auf dieser Website verwendet werden und stellen kein Sicherheitsrisiko dar. Cookies auf diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Diversifizidimgsbumsen
#20
Notiz 

RE: Diversifizidimgsbumsen

Kurzer Nachtrag..

Ed hat nun die gleiche Information wie Buffet und kennt die Standard Abweichung...er optimiert nun Risiko und Return gegeneinander. Thorpe geht jetzt etwas mehr Risiko ein und ist im Durchschnitt fast so gut wie Buffet, bei einem 4tel des Risikos...und noch immer in der Mehrzahl der Szenarien(52%) besser als Buffet und im schlimmsten Fall noch immer doppelt so gut wie Buffet.

Man sieht aber auch hier: die naive Diversifikation ist, je nach Risiko Präferenz, eine nicht zu vernachlässigende Alternative.

Wer es beliebig "low risk" mag, kann im unten angehängten code auch noch das Minimum Varianz Portfolio verwenden (einfach den Term mit der Subtraktion in der loss Funktion rausnehmen)

Natürlich ist dieses Szenario sehr auf die Vorteile der Diversifikation getrimmt. Ich kenne alle Parameter,diese Parameter bleiben stabile (Stationarität), die assets sind unkorreliert...trotzdem gibt es ein Gefühl dafür, dass Diversifikation eventuell robust Vorteile bringen kann: für eure Rendite!!!


Buffet
count    1000.000000
mean      112.835756
std        41.285000
min        25.187804
25%        83.571689
50%      105.673235
75%      135.760719
max      343.162890
count    1000.000000

naive Diversifikation
mean      107.032307
std        9.779648
min        82.521911
25%      100.132379
50%      106.338482
75%      112.859044
max      140.068309

Thorpe
count    1000.000000
mean      110.015110
std        17.985399
min        67.882740
25%        97.411212
50%      108.253007
75%      119.977537
max      193.907584


Hier noch ein paar Plots zum unterschiedlichen Verlauf des Endvermögens der Szenarien...

Code:
import numpy as np
import pandas as pd
import scipy as sc
import math
import matplotlib.pyplot as plt
import seaborn as sns

np.random.seed(10)

def create_path(mu,sigma,N,S_0 = 100):
    delta_t = math.sqrt(1/N)
    delta =  np.cumsum(np.repeat(1/N,N))
    W_t = np.cumsum(delta_t*np.random.normal(0,1,N))
    S_t = S_0*np.exp((mu-0.5*sigma**2)*delta + sigma*W_t)
    return S_t


N = 2500

mu_1 = 0.065
sigma_1 = 0.15

mu_2 = 0.035
sigma_2 = 0.25

mu_3 = 0.01
sigma_3 = 0.075

mu_4 = 0.11
sigma_4 = 0.35

mu_5 = 0.065
sigma_5 = 0.12

mu_6 = 0.08
sigma_6 = 0.22


x0 =np.repeat(1/6,6).tolist()
loss = lambda x: 0.5*((0.15**2)*x[0]**2 + (0.25**2)*x[1]**2 + (0.075**2)*x[2]**2 + (0.35**2)*x[3]**2 + (0.12**2)*x[4]**2 +(0.22**2)*x[5]**2) - (x[0]*0.065 + x[1]*0.035 + x[2]*0.01 + x[3]*0.11 + x[4]*0.065 +x[5]*0.08)
#loss = lambda x: 0.5*((0.15**2)*x[0]**2 + (0.25**2)*x[1]**2 + (0.075**2)*x[2]**2 + (0.35**2)*x[3]**2 + (0.12**2)*x[4]**2 +(0.22**2)*x[5]**2)
cons = ({'type': 'eq', 'fun': lambda x: x[0] + x[1] + x[2] + x[3] + x[4] + x[5] -1},
        {'type': 'ineq', 'fun': lambda x: x[0] -0},
        {'type': 'ineq', 'fun': lambda x: x[1] -0},
        {'type': 'ineq', 'fun': lambda x: x[2]-0},
        {'type': 'ineq', 'fun': lambda x: x[3] -0},
        {'type': 'ineq', 'fun': lambda x: x[4] -0},
        {'type': 'ineq', 'fun': lambda x: x[5] -0})
#one sample path
from scipy import optimize
thorpePortfolio = optimize.minimize(fun=loss,x0=x0,constraints=cons,method="SLSQP",options={"maxiter":5000})
thorpe = np.array(thorpePortfolio.x)



dfs = []
paths = []
for trial in np.arange(1000):
    df = pd.DataFrame(create_path(mu_1, sigma_1, N), columns=["a1"])
    df["a2"] = create_path(mu_2, sigma_2, N)
    df["a3"] = create_path(mu_3, sigma_3, N)
    df["a4"] = create_path(mu_4, sigma_4, N)
    df["a5"] = create_path(mu_5, sigma_5, N)
    df["a6"] = create_path(mu_6, sigma_6, N)
    df["naive"] = df.mean(axis=1)
    df["thorpe"]  = np.dot(df[["a1","a2","a3","a4","a5","a6"]].values ,thorpe)
    rets = df.diff()/df
    desc = rets[["a4","naive","thorpe"]].describe().loc[["mean","std","25%","75%"]].transpose()
    desc["final_wealth"] = df[["a4","naive","thorpe"]].loc[N-1]
    df["trial"] = trial
    df["steps"] = df.index.values
    dfs.append(desc)
    paths.append(df)
df_final = pd.concat(dfs)

print(df_final.loc["a4"].describe()["final_wealth"].to_string())
print(df_final.loc["naive"].describe()["final_wealth"].to_string())
print(df_final.loc["thorpe"].describe()["final_wealth"].to_string())

__________________
Forum-Besserwisser und Wissenschafts-Faschist


Nachrichten in diesem Thema
Diversifizidimgsbumsen - von Mr. Passiv - 10.12.2018, 08:39
RE: Diversifizidimgsbumsen - von S@b3r Rid3r - 10.12.2018, 09:16
RE: Diversifizidimgsbumsen - von mmmmmax - 10.12.2018, 14:35
RE: Diversifizidimgsbumsen - von Guhu - 10.12.2018, 18:07
RE: Diversifizidimgsbumsen - von Vahana - 10.12.2018, 19:27
RE: Diversifizidimgsbumsen - von StockBayer - 10.12.2018, 09:24
RE: Diversifizidimgsbumsen - von cubanpete - 10.12.2018, 11:55
RE: Diversifizidimgsbumsen - von Vahana - 10.12.2018, 12:23
RE: Diversifizidimgsbumsen - von cubanpete - 10.12.2018, 12:43
RE: Diversifizidimgsbumsen - von Mr. Passiv - 10.12.2018, 14:26
RE: Diversifizidimgsbumsen - von Vahana - 10.12.2018, 14:38
RE: Diversifizidimgsbumsen - von cubanpete - 10.12.2018, 15:13
RE: Diversifizidimgsbumsen - von Vahana - 10.12.2018, 15:25
RE: Diversifizidimgsbumsen - von Ahab - 16.08.2019, 05:26
RE: Diversifizidimgsbumsen - von Schafgarbe - 10.12.2018, 22:34
RE: Diversifizidimgsbumsen - von Lancelot - 18.08.2019, 16:16
RE: Diversifizidimgsbumsen - von muchmoney - 18.08.2019, 21:11
RE: Diversifizidimgsbumsen - von qqqq4 - 19.08.2019, 15:08
RE: Diversifizidimgsbumsen - von Lancelot - 20.08.2019, 13:52
RE: Diversifizidimgsbumsen - von Lancelot - 23.08.2019, 13:01
RE: Diversifizidimgsbumsen - von Lancelot - 23.08.2019, 13:06
RE: Diversifizidimgsbumsen - von Lancelot - 23.08.2019, 17:53
RE: Diversifizidimgsbumsen - von Ahab - 28.10.2019, 16:09
RE: Diversifizidimgsbumsen - von muchmoney - 29.10.2019, 18:21
RE: Diversifizidimgsbumsen - von Mr. Passiv - 28.10.2019, 16:25
RE: Diversifizidimgsbumsen - von Ahab - 28.10.2019, 16:39
RE: Diversifizidimgsbumsen - von Lancelot - 29.10.2019, 15:08
RE: Diversifizidimgsbumsen - von Mr. Passiv - 28.10.2019, 16:42
RE: Diversifizidimgsbumsen - von Kaietan - 29.10.2019, 08:02
RE: Diversifizidimgsbumsen - von Lancelot - 29.10.2019, 20:57
RE: Diversifizidimgsbumsen - von Ahab - 30.10.2019, 05:35
RE: Diversifizidimgsbumsen - von J R - 29.11.2021, 07:44
RE: Diversifizidimgsbumsen - von 7rabbits - 29.11.2021, 22:33

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste