WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Financial Toolbox - Portfoliooptimierung mit Mark./VaR/ES

 

phantason
Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 11.05.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.05.2015, 10:00     Titel: Financial Toolbox - Portfoliooptimierung mit Mark./VaR/ES
  Antworten mit Zitat      
Hallo,

ich habe eine Frage zu der Portfoliooptimierungsfunktion der Financial Toolbox. Ich möchte im weiteren Verlauf einen Vergleich zwischen der Markowitzoptimierung, der VaR- und der CVaR-Optimierung anstellen.

Hierfür habe ich anhand eines Beispieldatensatzes das Tangentialportfolio (maximale Sharpe-Ratio) ermittelt:

Code:
d=fints(a)

e=fints(b)

f=fints(c)

M=[d,e,f]

Returns = tick2ret(M)

mean=mean(Returns)

cov=cov(Returns)

std=std(Returns)

mean1=[-5.6717e-05,4.7245e-04,6.0908e-04] %%Wie kann ich hier die einzelnen Werte direkt aus 'mean' ansprechen?

p = Portfolio;

p = setAssetMoments(p, mean1, cov);

p = setDefaultConstraints(p);


plotFrontier(p);

r0 = 0.00;
p = Portfolio('RiskFreeRate', r0);
p = setAssetMoments(p, mean1, cov);
p = setDefaultConstraints(p);

pwgt = estimateMaxSharpeRatio(p);

display(pwgt);


Am Ende bekomme ich per display(pwgt); die Gewichtung für das Tangentialportfolio ausgewiesen. Dies entspricht dem Ergebnis das ich benötige.

Als nächstes ist die bereits implementierte CVaR-Optimierung dran.

Code:
x = PortfolioCVaR;

x = setScenarios(x, Returns);

x = setDefaultConstraints(x);

x = setProbabilityLevel(x, 0.95);

[lb, ub, isbounded] = estimateBounds(x);

plotFrontier(x)
 


Die Fragen die sich mir nun stellen:

1. Gibt es in diesem Zusammenhang einen ähnlichen Befehl (analog zur Markowitz-Optimierung pwgt = estimateMaxSharpeRatio(p) auch für dieses Verfahren, sodass ich möglichst schnell an die Gewichtung dieses Portfolios komme?

2. Wenn ich beide Verfahren grafisch vergleichen möchte, benötige ich eine einheitliche Skalierung (bspw. Std.Dev gemäß Markowitz). Gibt es hier eine Möglichkeit die Skalierung des CVaR-Verfahrens entsprechend zu ändern und in die Markowitz-Abbildung zu integrieren?

3. Die VaR-Optimierung ist offensichtlich über die Optimization Toolbox durchzuführen. Diese habe ich auch, leider habe ich so gar keinen Ansatz, wie ich hier technisch vorgehen soll. Kann hierzu jmd vielleicht eine gute Einführungslektüre/Anleitung o.ä. empfehlen?


Vielen Dank bereits im Voraus für eure Hilfe!

VG,
Beenie
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 11.05.2015, 10:22     Titel:
  Antworten mit Zitat      
Hallo,

1. Mit
Code:

bekommst du die Methoden für die Klasse. Darunter sind einige
estimateFrontier* - Methoden.

2. Ich würde die numerischen Ergebnisse der einen Methode zur anderen dazu-plotten. Davor ein
Code:


3. Wie bestimmst du VaR? Historisch? Dann wäre das Problem, dass VaR nicht glatt ist und du globale Optimierung verwenden musst.
Ich würde zunächst mal anfangen, mich in fmincon einzuarbeiten. Anschließend kannst du dir globale Optimierungsmethoden (z.B. patternsearch oder GlobalSearch) ansehen.

Es ist übrigens keine gute Idee, Variablen so zu benennen wie Funktionen (z.B. mean = mean(...) ), da dadurch die Funktion überlagert wird und es beim nächsten Aufruf der Funktion zu einer Fehlermeldung kommen würde.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
phantason
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 11.05.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.05.2015, 10:55     Titel:
  Antworten mit Zitat      
Hallo,

danke für deine schnelle Antwort!

1. Der Befehl ist schon einmal sehr gut, so kann ich zumindest die einzelnen Gewichtungen etc. ausrechnen. Eine direkte Methode für die Formel max(Return/Risiko) anhand der Gewichte konnte ich aber leider nicht finden. Muss ich dieses dann separat programmieren und wenn ja, wie?

2. Wie meinst du das genau?

3. Ich wollte zwei Methoden verwenden, einmal die Historische und dann evtl. GARCH o.ä. Aber dann fange ich erst einmal an mich in fmincon einzuarbeiten!
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 11.05.2015, 18:30     Titel:
  Antworten mit Zitat      
Hallo,

1. Wenn du die Gewichte der Efficient Frontier hast, kannst du ja damit beliebige Kennzahlen - also auch Return, Kovarianz-Risiko und Sharpe Ratio -berechnen.

2. Bitte die Frage konkretisieren.
Von 1. bekommst du ja quasi schon alles, was du brauchst.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
phantason
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 11.05.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.05.2015, 08:35     Titel:
  Antworten mit Zitat      
Hallo,

ich habe zwar die unterschiedlichen Portfolios auf der effizienten Grenze, aber ich weiß technisch nicht, wie ich mir hieraus nun das Tangentialportfolio ermitteln kann. Bei Markowitz habe ich ja den Befehl maxSharpeRatio, dieser fehlt mir aber bei dieser Optimierungsmethode.

Zu Zwei: Es gibt ein Video wo das gezeigt wird. Ich versuche es noch einmal nachzuvollziehen und wenn es mir nicht gelingt, würde ich mich nochmal melden.

Falls du zu dem ersten Punkt jedoch noch eine gute Idee hast, wäre ich sehr dankbar! Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 12.05.2015, 19:11     Titel:
  Antworten mit Zitat      
Hallo,

das genaue Tangentialportfolio ist schwierig. Du hast aber ja verschiedene Portfolios auf der Efficient Frontier und kannst für jedes das Sharpe Ratio berechnen. Das Portfolio mit dem besten Sharpe Ratio wäre dann das gesuchte. Natürlich ist das aber nur eine Annäherung.

Alternativ bleibt der Weg wie bei 3. Wenn du den Code sowieso für CVaR schreiben musst, kannst du ihn ja auch gleich für VaR verwenden.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
phantason
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 11.05.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2015, 09:37     Titel:
  Antworten mit Zitat      
Ja da hast du Recht. Danke schon einmal für deine Hilfe, ich werde mich diesbezüglich noch einmal einlesen und dann bestimmt noch mit der ein oder anderen Frage melden Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.