Wednesday 11 January 2017

Tarf Fx Optionen

Blog-Statistik Keine neue Beiträge in dieser Woche. Dies ist nicht, weil ich faul bin, aber es lohnt sich, die Ergebnisse auf approximative FX TaRF Preise in einem kurzen Papier zusammenzufassen. Ich werde darüber auch hier schreiben, mit Betonung auf den QuantLib-Code dahinter. Nächste Woche. Pass auf. In meinem vorherigen Beitrag schrieb ich über einige Ideen, um effizient den Wert eines fx exotischen (ein fx Tarf in der Tat) zu approximieren. Eine Hauptmotivation ist die Verwendung eines so schnellen Preises in einer XVA-Simulation. Dieser Beitrag ist dem Entwurf gewidmet, den ich kam, um die Idee so genau wie möglich in die bestehende QuantLib Architektur zu passen. Der nächste Beitrag wird dann Einzelheiten über das Näherungsschema selbst, einige numerische Beispiele, die die Annäherung mit einer vollen Preisgestaltung unter mehreren Markt - und Zeitzerfallszenarien vergleichen, und Leistungstests präsentieren. Gutes Design ist von größter Wichtigkeit. Sogar in einer wohlhabenden Nachbarschaft wird ein zerbrochenes Fenster, nicht schnell repariert, bald zu einem zweiten und nach einer Weile entarteten Fläche führen. Zum Glück würde Luigi dies in der QuantLib-Stadt natürlich nicht zulassen. Dies sind meine Gedanken über das Design im Allgemeinen: Wir sollten zwei Preistreiber, ein MC und eine Proxy-Engine haben. Wir sollten nicht nur einen Motor mit einigen zusätzlichen Methoden haben, um die ungefähren NPVs in einer proprietären Weise zu extrahieren, die der Proxy-Motor sich wie jeder andere Motor verhalten sollte, z. B. Sollte der Zeitzerfall aus dem globalen Bewertungszeitpunkt nicht durch einen speziellen Parameter abgeleitet werden und die relevanten Marktdaten durch Standardstrukturen gegeben werden, sollte die Implementierung neuer Instrumente und Preisfeststellungsmaschinen nach demselben Gedanken einfach sein und auf einem Basiswert basieren Gemeinsame Schnittstelle der Endbenutzeroberfläche in Client-Code verwendet werden sollte einfach zu bedienen und narrensicher XVA-Simulation ist eine Anwendung der Proxy-Engine, aber es gibt keine strikte Verbindung zu diesem Anwendungsfall 8211 können Sie auch die Proxy-Engine 8220just8221 npvs schneller zu berechnen Wenn hohe Genauigkeit nicht erforderlich ist, oder kurz gesagt: Es sollte nichts Besonderes über die ganze Sache. Curb Ihre Begeisterung, nur eine einfache solide Job, don8217t versuchen, jemanden zu beeindrucken. Okay. Let8217s beginnen mit der Instrumentenklasse. Der Konstruktor übernimmt den Schedule8217s-Zeitplan (dh die Datumswerte), der zugrunde liegende fx-Index, der zB eine EZB-Fix-Fixierung darstellt (das ist auch eine neue Klasse, da dort nicht ein fx-Index in QuantLib zu sein scheint, aber ich gehe nicht (In ausländischer, Vermögens - oder Quellwährung gibt es viele Namen dafür) die Gegenparteien8217 Auszahlungsprofile, bei denen es sich normalerweise um Short-Puts und Long-Calls handelt, die alle die gleiche Zielstrecke erreichen Wo die Struktur den Coupon-Typ (siehe vorherigen Post I oben), die Verzahnung der beiden Seiten des Deals Die letzten beiden Parameter accumulatedAmount und lastAmount sind optional. Wenn nicht angegeben, berechnet das FxTarf den bereits akkumulierten Betrag, der die index8217s historischen Befestigungen liest. Wenn andererseits historische Befestigungen ignoriert werden und die gegebene kumulierte Menge verwendet wird. Die lastAmount in diesem Zusammenhang ist nur erforderlich, wenn die letzte Festsetzung bereits erfolgt ist, aber die damit verbundene Zahlung noch in der Zukunft ist. Der Grund für die Einführung dieser etwas redundanten Parameter ist wie folgt. Einerseits kann es praktisch sein, nicht alle historischen Befestigungen für den fx Index zu setzen, sondern direkt die kumulierte Menge einzustellen. Möglicherweise erhalten Sie die Abkommeninformationen von irgendeinem Quellsystem und es bereits die gegenwärtige angesammelte Menge zusammen mit den Abkommendaten zur Verfügung stellt. Noch wichtiger ist, dass Sie während einer XVA-Simulation nicht alle Befestigungen im IndexManager setzen möchten. Sie können das tun, wenn Sie möchten, aber es kann nicht praktisch sein, denn nach jedem Weg müssen Sie alle Befestigungen wieder zu löschen, oder vielleicht Sie nicht simulieren jedes Fixierung Datum sogar und wollen einfach nur die kumulierten Befestigungen zu interpolieren. Auf jeden Fall ist es nur ein Komfortparameter. Verwenden Sie es oder einfach ignorieren. Für eine vollständige Preisgestaltung des Tors können wir einen monte carlo Motor verwenden, der in der üblichen Weise aufgebaut wird, zum Beispiel Die Parameter hier sind das (generalisierte) Black Scholes-Verfahren, die Zeitschritte zur Simulation pro Jahr, das Saatgut für den RNG. Der letzte Modifikator. withProxy () ist die einzige besondere Sache hier: Standardmäßig berechnet die Engine nur eine npv (und Fehlerabschätzung) wie jede andere mc-Engine. Wenn der Motor mit dem Proxy-Flag auf der anderen Seite eingerichtet wird, werden zusätzliche Informationen während der Simulation gesammelt und analysiert, um ein Proxy-Informationsobjekt zu erzeugen, das später für annähernde Pricings verwendet werden kann. Wir werden gleich sehen, wie. Wir brauchen diesen Modifikator, da die Simulation langsamer wird, wenn wir den Proxy erstellen, also sollten wir ihn ausschalten können. Jetzt setzen wir den Motor und können den (vollen) npv berechnen: Wenn wir nur die Proxy-Preiskalkulation wollen, können wir natürlich die volle npv-Berechnung überspringen, aber es tut weh, da das npv immer produziert wird, auch wenn nur die Berechnung berechnet wird Die Proxy-Engine. Um die Proxy-Engine verwenden zu können, müssen wir mit einem Motor beginnen, der diese Information erzeugen kann. Die Proxy-Engine wird dann mit dem Proxy-Objekt gefüttert: Die Proxy-Engine wird mit der Proxy-Beschreibung von der mc-Engine, die aus dem Instrument von. proxy () abgerufen werden kann erstellt (dies ist ein spezielles Ergebnis, das wichtig genug scheint nicht Zu begraben in die zusätzlichen Ergebnisse heap 8212 Dies ist nichts innovatives aber, wie es die bps oder faire Rate für Swaps als Beispiel) die fx Quote für die Preisgestaltung 8211 dh die wesentlichen Marktdaten benötigt für die Proxy-Preisgestaltung der Rabatt-Kurve für verwendet Die Preisfindung (die als heimische Zinskurve aus unserem schwarzen Scholes-Prozess in unserem Beispiel-Client-Code genommen wird). Darüber hinaus bestimmt das globale Bewertungsdatum den Referenztermin für die Bewertung wie gewohnt. Wenn das Gerät kein Proxy-Objekt zur Verfügung stellt (z. B. weil die mc-Engine so gesagt wurde, siehe oben), oder wenn das Proxy-Objekt nicht für die zu erstellende Proxy-Engine geeignet ist, wird eine Ausnahme ausgelöst. Was ist los, hinter den Kulissen: Ich habe eine Schnittstelle für Instrumente, die Proxy-Preisgestaltung sind: Die einzige Methode zu implementieren ist Proxy, die ein Objekt, das die Informationen, die für eine kompatible Proxy-Engine erforderlich sind, um Näherungswerte npvs berechnen (siehe unten) Was für kompatible Mittel). Die Informationen selbst sollten ein Objekt sein, das von ProxyInstrument :: ProxyDescription abgeleitet wird. Es muss eine Gültigkeitsmethode zur Verfügung stellen, die die bereitgestellten Daten auf Konsistenz prüfen sollte. Wie wird das fx tarf instrument umgesetzt? Diese Schnittstelle: Dies bedeutet, dass die spezifische (oder eine mögliche) Proxy-Information eines fx tarf aus einigen beschreibenden Daten besteht, die die maximale Anzahl der offenen (zukünftigen) Fixierungen des letzten Zahlungsdatums der Struktur 8211 ist Die zusammen eine Segmentierung für die Näherungsfunktion definieren. Auf jedem Segment ist dann die Näherungsfunktion durch eine Proxy :: ProxyFunction gegeben, die auf dieser Abstraktionsebene nur eine beliebige Funktion Real to Real ist. Rückgabe der npv für eine gegebene fx Stelle. Der npv wird auf der Basis des letzten Zahlungsdatums der Struktur auf Vorwärtsbasis ausgedrückt, so dass die Proxy-Engine von diesem spätest möglichen Kursdatum zum Bewertungsstichtag zurückgreifen kann. Denken Sie daran, dass dies im Allgemeinen (und typischerweise) anders als die für die mc Preisgestaltung verwendet wird. Die Validierungsmethode überprüft, ob die Funktionsmatrix konsistent mit den Segmentierungsinformationen gefüllt ist. Das Proxy-Objekt ist Teil der Ergebnisklasse für das Instrument, das wiederum nur den Standard-Formalismus verwendet: Die Proxy-Engine erwartet, dass ein Proxy-Objekt, das für eine Engine im Konstruktor verwendet wird, mit einem dynamischen Downcast überprüft wird . Die dritte Stufe der Spezialisierung befindet sich im monte carlo engine, wo der spezifische Proxy object8217s Funktionstyp implementiert ist, der aus den Definitionen in der FxTarf Klasse abgeleitet ist: An dieser Stelle endlich fixieren wir die spezifische Form der approximierenden Funktionen, die im wesentlichen gegeben sind Durch zwei quadratische Polynome. Im nächsten Beitrag werde ich weitere Details dazu und eine Motivation dafür geben. Schließlich schien es sinnvoll, die mc - und Proxy - Motoren von einem gemeinsamen Basismotor abzuleiten, der einige triviale Grenzfälle (wie alle Festlegungen oder die Bestimmung des npv einer festen Menge, die noch nicht abgewickelt ist) behandelt, also haben wir die Hierachy Wenn Sie sich für den Code interessieren, können Sie in mein Repository schauen. Es kann schon funktionieren, aber ich habe noch nicht alles getestet. Mehr zu dieser Woche. Let8217s spielen ein Spiel. Wir spiegeln eine Münze zehnmal (hier ist ein besonders schöner Weg, dies zu tun 8211 können Sie die griechische 2-Euro-Münze zum Beispiel nehmen, es hat (sowohl die Göttin als auch den Kontinent) darauf). Wenn es Köpfe ist, bezahle ich einen Euro. Wenn es Schwänze ist, zahlen Sie mir zwei. Oh, und wenn Sie mehr als dreimal gewinnen sollten, während wir spielen, stoppen wir einfach die ganze Sache, ok Ein fx Tarf ist eine Folge von fx Vorwärtshandeln, in denen unser Gegenstück eine Schlagrate zahlt. Wenn der Einzelne zugunsten des Gegenstückes ist, führt sie oder er sie auf dem Nominalwert (dh sie oder er ist ein Anruf lang). Wenn es zu unseren Gunsten ist, führen wir es auf die doppelte Nennwert (so sind wir lange eine doppelte Nennwert). Und wenn die Summe der Fixierungen zugunsten des Gegenstücks mit der Angabe der fx-Fixierung ein vorgegebenes Ziel übersteigt, vergehen die übrigen Forwards ohne weitere Zahlungen. In solchen Strukturen gibt es mehrere Übungen für die Couponfixierung, die das Ziel auslöst: Entweder der volle Betrag für diese Fixierung wird bezahlt, oder nur ein Teil des Coupons, der zum Erreichen des Ziels erforderlich ist, oder gar kein Coupon. Die Bewertung von fx tarfs hängt im allgemeinen von dem fx-Lächeln für jede Komponente ab. Das ganze Lächeln ist hier wichtig: Sowohl der Streik des Handels als auch das Ziel minus der angesammelten Menge sind offensichtlich kritische Punkte auf dem Lächeln. Da die akkumulierte Menge selbst eine zufällige Menge nach der ersten Fixierung ist, wird das gesamte Lächeln den Strukturwert beeinflussen. Darüber hinaus spielen die intertemporalen Korrelationen des fx-Punktes zu den Fixierungsterminen eine wichtige Rolle. In diesem und wahrscheinlich einem oder mehreren späteren Beiträgen möchte ich über mehrere Dinge schreiben: wie eine klassische, vollwertige monte carlo Pricing Engine für diese Struktur implementiert werden kann, wie ein annähernd npv für Marktszenarien und Zeitverfall Annahmen können sehr schnell berechnet werden, wie Kann dies in einem zweiten Pricing-Engine implementiert werden und wie dies im Zusammenhang mit dem ersten Motor, wie QuantLib8217s lucent-transparente Design beibehalten werden kann, wenn all dies zu tun Offensichtlich schnelle Preisgestaltung ist nützlich, um den berühmten npv Würfel füllen, die dann verwendet werden, um XVA berechnen können Zahlen wie CVA, DVA etc. Today8217s Post ist einige Gedanken über die Methodik für schnelle, ungefähre Preise gewidmet. Ich bin stark von einem Vortrag von einigen Murex-Kollegen hier, die ähnliche Ideen in ihrer Plattform für CVA und potenzielle zukünftige Exposition Berechnungen inspiriert inspiriert. Darüber hinaus bezieht sich die Idee auf die sehr klassische und einfache, aber brillante Papier von Longstaff und Schwartz Valuing American Optionen von Simulation: Ein Simple Least-Squares-Ansatz. Hat aber einen etwas anderen Geschmack. Let8217s fixieren ein bestimmtes Tarn Termsheet. Die Struktur hat Zahlungstermine beginnend am 15-Nov-2014, dann monatlich bis 15-Oct-2015. Die fx-Festsetzung gilt als EZB-Fixierung für EUR-USD zwei Geschäftstage vor jedem Zahlungsdatum. Die Nominale belaufen sich auf 100 Millionen Euro. Unser Pendant hält die Anrufe, wir setzen die Putze und unsere Putze auf 200 Millionen Euro so heftig um den Faktor zwei. Der Streik ist 1,10, so dass die Counterpart8217s Anrufe im Geld zum Handelstag waren. Das Bewertungstag ist der 28.04.2015 und das verbleibende Ziel ist 0,10. Der fx-Punkt zum Bewertungsstichtag ist 1.10. Die implizite Volatilität für EUR-USD fx-Optionen beträgt 20 (logarithmisch, noch kein Problem in den fx-Märkten 8230), konstant über die Zeit und flach, und wir nehmen gleiche Euro - und USD-Zinssätze an, also keine Drift in unserem zugrunde liegenden Garman-Kohlagen-Prozess. Der Auszahlungsmodus ist Vollkupon. Natürlich sind die Annahmen auf Marktdaten nur teilweise realistisch. Die Idee, npvs effizient zu approximieren, ist wie folgt. Zuerst tun wir eine vollständige monte carlo Preisgestaltung in der üblichen Weise. Jeder Pfad erzeugt ein npv. Wir speichern die folgenden Informationen auf jedem Gitterpunkt jedes Pfades (offene Fixings, fx spot, akkumulierte Menge bisher npv der restlichen Fixings) Die Hoffnung ist, dass wir eine Regressionsanalyse des npv auf diesen Hauptpreistreibern durchführen können, Iefx Spot, die bereits akkumulierte Menge und die Anzahl der offenen Befestigungen. Beachten Sie, dass dieser Ansatz beinhaltet, dass der fx-Punkt aus dem 8220outside8221 XVA-Szenario-Set genommen wird, aber alles andere (die Zinskurven und die Volatilität) wird durch das Preismodell impliziert. Dies ist geringfügig (oder stark) unvereinbar mit einem XVA-Szenarioset, bei dem die Geschwindigkeitskurven und vielleicht auch die Volatilitätsstruktur Teil der Szenarien sind. Wir legen den einfachsten Fall von nur einer offenen Fixierung fest, d. h. wir setzen uns zu einem Zeitpunkt irgendwo nach der zweiten, aber letzten und der letzten Fixierung. Auch setzen wir das Ziel auf (d. H. Wir ignorieren dieses Merkmal) für die Zeit und nehmen eine Hebelwirkung von einem an. Unsere Struktur kollabiert zu einem einzigen, Vanille fx vorwärts. Wir tun 250k monte carlo Pfade und zeichnen die Ergebnisse (die npv ist in Prozent hier): Sehen Sie, was geschieht. Wir erhalten eine Punktwolke, die 8211 für die feste akkumulierte Menge 8211, die auf der Stelle im Mitteldurchschnitt auf eine Linie konditioniert ist, die den fx vorwärts npv darstellt. Siehe unten, wo ich dies in 2d tun und wo es klarer wird. Was wir hier als erste Beobachtung anführen, ist, dass die Position der Wolke von der akkumulierten Menge abhängt: Niedrigere Punkte werden mit niedrigeren akkumulierten Mengen und höheren Stellen mit höheren akkumulierten Mengen verbunden. Das ist plausibel, hat aber Auswirkungen auf die Bereiche, in denen wir genügend Daten haben, um eine Regression durchzuführen. Das nächste Bild zeigt die gleichen Daten, aber projiziert entlang der kumulierten Menge Dimension. Darüber hinaus fügte ich eine lineare Regressionsgerade, die in der Lage, die npv mit einem Spot-Wert vorhersagen sollte. Um dies zu testen, fügte ich drei weitere horizontale Zeilen hinzu, die den npv für Punktwerte von 1.0, 1.1 und 1.2 durch Mittelung über alle erzeugten monte carlo-Daten innerhalb der Buckets 0.99,1.01, 1.09,1.11 bzw. 1.19,1.21 schätzen. Die Hoffnung ist, dass sich die horizontalen Linien mit den Regressionsgeraden bei den x-Werten von 1.0, 1.1 und 1.2 schneiden. Das sieht hier ganz gut aus. Let8217s sehen jetzt eine echte TARF an, d. H. Das Setzen des Ziels auf 0,15. Neu hier ist, dass die Wolke auf der Ziel-Ebene geschnitten wird, über das Zusammenbrechen einfach zu einer Ebene, die eine Null npv anzeigt. Ganz klar, denn in diesem Bereich wird die Struktur vor der letzten Befestigung beendet. Andernfalls ist dieser Fall nicht zu verschieden vom Fall vorher, da wir eine volle Kuponzahlung annehmen und nur eine Verlegenheit haben, die links ist, also haben wir einen fx Vorwärts, der durch den Zieltrigger vorher getötet werden könnte. Mehr anspruchsvoll ist der Fall, wo wir zahlen einen Capped Coupon. Ausschluss von Daten, bei denen das Ziel vorher ausgelöst wurde, erhalten wir in diesem Fall Wir wollen npvs für die Spots 1.0, 1.1 und 1.2 und eine akkumulierte Menge von 0,05 (um 0,04 bis 0,06) jetzt anzunähern. Die Zielfunktion führt zu einer Krümmung in unserer Cloud. Ich nehme dies in Betracht, indem ich ein quadratisches Polynom anstelle von nur einer linearen Funktion ansetze. Außerdem sehen wir, dass die npvs jetzt auf 15 begrenzt sind und für höhere Punkte abnehmen. Warum diese letzte Sache. Eigentlich habe ich bis jetzt nur die Fixierungszeiten als Simulationszeiten verwendet (weil nur sie für die Preisgestaltung notwendig sind und der Prozeß aufgrund seiner Einfachheit große Schritte in Anspruch nehmen kann), so ist der Fleck effektiv die vorhergehende Befestigung immer. Und wenn dies über 1.1 ist, schließt es die Möglichkeit für höhere Coupons aus als sein Unterschied zum 1.1. Let8217s addieren mehr Simulationszeiten zwischen den Befestigungen (100 pro Jahr insgesamt), wie es wahrscheinlich ist, der Fall in den externen XVA Szenarien zu sein, die nach npvs am Ende fragen: Die Annäherung arbeitet ganz ok für Punkt 1.0 aber nicht zu gut für 1.1 Und 1,2 mehr (in beiden Fällen oben). Bisher haben wir die akkumulierte Menge nicht in unserer npv-Näherung verwendet. Also beschränken wir uns auf akkumulierte Mengen von z. B. 0,02 bis 0,08 (Denken Sie daran, dass wir eine Vorhersage konditioniert auf eine angesammelte Menge von 0,05 wollen, wähle ich einen größeren Eimer für die Regression obwohl 8220more8221 Daten haben und weil ich glaube, ich don8217t wollen zu viele Regressionsfunktionen auf zwei kleinen Datensätzen in zu berechnen das Ende). Besser. Let8217s bewegen sich auf die ursprüngliche Termsheet jetzt (Leverage 2, verbleibende Ziel 0,1, voller Coupon) und 5 offene Befestigungen anstelle von nur 1, um zu sehen, wenn all dies bricht in einer komplexeren Einstellung (meine Erfahrung sagt, ja, das wird passieren) . Die akkumulierte Summe, die wir annähen wollen, beträgt nun 0,01: Ganz ok, puh. Wir sehen nun ein neues Artefakt: Die quadratische Regressionsfunktion fängt wieder an, für Spots größer als 1,25 zu fallen. Das ist natürlich nicht sinnvoll. Wir haben also die Notwendigkeit, nicht nur verschiedene Regressionsfunktionen für verschiedene akkumulierte Mengen (und verschiedene Zahlen von offenen Befestigungen), sondern auch für verschiedene Spotbereiche zu berechnen. Let8217s berechnen eine weitere quadratische Regression für Spots größer als 1,2 zum Beispiel (die blaue Grafik): Das würde für höhere Spots funktionieren. Um die Experimente zusammenzufassen, scheint der Ansatz generell vernünftig zu sein, aber wir müssen ein paar Dinge im Auge behalten: Die Anzahl der Zeitschritte in der Simulation sollte größer sein als für reine Preiskalkulationen, ggf. sollte die Grid8217s Schrittgröße mit der XVA-Simulation. Die Regressionsfunktion kann quadratisch, aber nicht global angenommen werden. Stattdessen muss die Domain durch die Anzahl der offenen Fixierungen, ggf. sogar die Anzahl der offenen Fixierungen und den Abstand zur letzten Fixierung, der bereits akkumulierten Menge der fx-Stelle partitioniert werden. Die nächste Aufgabe wäre, an einen Algorithmus zu denken, der ein vernünftiges macht Partition automatisch. Eine Idee wäre, nur einen bestimmten Mindestprozentsatz der Daten zu erfordern, die durch die anfängliche monte carlo Simulation für die Preisgestaltung in jeder Partition erzeugt wurden. Der nächste Beitrag wird über die Umsetzung der beiden Preisträger dann Tarf Option Fx Posts über FX TARF von Peter Caspers geschrieben. 8230 In der Finanzierung ist eine Devisenoption ein derivatives Finanzinstrument, das die richtige, aber 8230 Non-lineare Auszahlung 8211 die gibt Auszahlung für eine einfache FX-Option ist linear in der underlyi8230 Fx Account Com Limited Preisgekrönte Devisen-und Online-Geldtransfers 8230 Öffnen Sie ein persönliches Konto zu beginnen, Ihre internationale Überweisungen mit Ihrem dedizierten 8230. FC Exchange ist ein Handelsname von Foreign Forex Broker 8211 Australian Geregelter Forex TradingVantage FX ist ein preisgekrönter Australischer Forex Broker Start Trading Forex mit MetaTrader 7. April 2006 8230 FX-Optionen und strukturierte Produkte 8230. siehe 50. Dieses Buch erklärt einige exotische FX-Optionen mit einem speziellen Derivatives Target Redemption Forward 8211 Anlage und FinanceFeb 3, 2013 8230 Target Rückzahlung Swap middot TARN middot Target Rückzahlung Note middot Target Rückzahlung Option middot Target Rückzahlung Vorwärts Middot PERCS middot Snowball 8230 numerisch. FX-Target-Rückzahlung nach vorn setzt sich aus seriellen FX-Forwards zusammen, jede von 8230 Market Practice in FX-Option soll die Rückgabe einer Fremdwährung übernehmen. Offenlegungsbericht 8211 World FirstMay 27, 2013 8230 Die wesentlichen Risiken der Optionskontrakte 8230 Marginbeträge für Forward - und Optionskontrakte. 4 82308230 Die TARF besteht aus einer Reihe von Vorwärts. Post navigation


No comments:

Post a Comment