Saturday 14 January 2017

Quantitative Handelsstrategien In R

Finanzmathematik und Modellierung II (FINC 621) ist eine Absolventenstufe, die derzeit an der Loyola University in Chicago im Winterquartier angeboten wird. FINC 621 erforscht Themen der quantitativen Finanzierung, Mathematik und Programmierung. Die Klasse ist praktischer Natur und besteht sowohl aus einer Vorlesung als auch aus einer Laborkomponente. Die Labore verwenden die Programmiersprache R und die Studierenden sind verpflichtet, ihre einzelnen Aufgaben am Ende jeder Klasse einzureichen. Das Ziel von FINC 621 ist es, den Studierenden praktische Werkzeuge zur Verfügung zu stellen, mit denen sie einfache Handlungsstrategien erstellen, modellieren und analysieren können. Einige nützliche R-Links Über den Instructor Harry G. ist ein älterer quantitativer Trader für ein HFT-Handelsunternehmen in Chicago. Er hält einen master8217s Grad in der Elektrotechnik und ein master8217s Grad in der Finanzmathematik von der Universität von Chicago. In seiner Freizeit unterrichtet Harry einen Graduiertenkurs in Quantitative Finance an der Loyola University in Chicago. Er ist auch der Autor des quantitativen Handels mit R. Beginner39s Führer zum quantitativen Handel In diesem Artikel Im gehend, Sie zu einigen der grundlegenden Konzepte vorzustellen, die ein Ende-zu-Ende quantitatives Handelssystem begleiten. Dieser Beitrag wird hoffentlich zwei Publikum dienen. Die erste wird Einzelpersonen versuchen, einen Job an einem Fonds als quantitative Händler zu erhalten. Die zweite wird Einzelpersonen, die versuchen wollen, und gründen ihre eigenen Handel algorithmischen Handelsgeschäft. Der quantitative Handel ist ein äußerst anspruchsvoller Bereich der Quantfinanzierung. Es kann eine beträchtliche Menge an Zeit, um das notwendige Wissen zu gewinnen, um ein Interview oder konstruieren Sie Ihre eigenen Trading-Strategien. Nicht nur das, sondern es erfordert umfangreiche Programmierkenntnisse, zumindest in einer Sprache wie MATLAB, R oder Python. Doch mit zunehmender Handelsfrequenz der Strategie werden die technologischen Aspekte viel wichtiger. Daher ist es wichtig, mit C / C vertraut zu sein. Ein quantitatives Handelssystem besteht aus vier Hauptkomponenten: Strategieidentifizierung - Strategiefindung, Ausnutzung einer Kante und Festlegung der Handelsfrequenz Strategy Backtesting - Datenerfassung, Analyse der Strategieperformance und Beseitigung von Bias Execution System - Verknüpfung mit einem Brokerage, Automatisierung des Handels und Minimierung Transaktionskosten Risikomanagement - Optimale Kapitalallokation, Wette Größe / Kelly-Kriterium und Handelspsychologie Nun, indem Sie einen Blick auf, wie eine Handelsstrategie zu identifizieren beginnen. Strategieidentifikation Alle quantitativen Handelsprozesse beginnen mit einer ersten Forschungsperiode. Dieser Forschungsprozess umfasst das Finden einer Strategie, ob die Strategie passt in ein Portfolio von anderen Strategien, die Sie ausgeführt werden können, erhalten alle Daten notwendig, um die Strategie zu testen und versuchen, die Strategie für höhere Renditen und / oder ein geringeres Risiko zu optimieren. Sie müssen in Ihrem Eigenkapitalbedarf Faktor, wenn Sie die Strategie als Einzelhändler und wie alle Transaktionskosten werden die Strategie beeinflussen. Entgegen der landläufigen Meinung ist es eigentlich ganz einfach, profitable Strategien durch verschiedene öffentliche Quellen zu finden. Akademiker veröffentlichen regelmäßig theoretische Handelsergebnisse (wenn auch vorwiegend für Transaktionskosten). Quantitative Finance-Blogs diskutieren Strategien im Detail. Fachzeitschriften skizzieren einige der Strategien, die durch Mittel eingesetzt werden. Man könnte fragen, warum Einzelpersonen und Firmen sind scharf, ihre profitable Strategien zu diskutieren, vor allem, wenn sie wissen, dass andere, die den Handel verdrängen kann die Strategie von der Arbeit auf lange Sicht zu stoppen. Der Grund liegt in der Tatsache, dass sie nicht oft diskutieren die genauen Parameter und Tuning-Methoden, die sie durchgeführt haben. Diese Optimierungen sind der Schlüssel, um eine relativ mittelmäßige Strategie zu einem äußerst profitablen zu machen. In der Tat ist eine der besten Weisen, Ihre eigenen einzigartigen Strategien zu verursachen, um ähnliche Methoden zu finden und dann Ihr eigenes Optimierungsverfahren durchzuführen. Hier ist eine kleine Liste von Orten auf der Suche nach Strategie-Ideen: Viele der Strategien, die Sie betrachten wird in die Kategorien der Mittel-Reversion und Trend-Following / Impuls fallen. Eine Mittelrücksetzstrategie ist diejenige, die versucht, die Tatsache auszuschöpfen, dass ein langfristiges Mittel auf einer Preisserie existiert (wie der Spread zwischen zwei korrelierten Vermögenswerten), und dass kurzfristige Abweichungen von diesem Mittel schließlich zurückgehen werden. Eine Impulsstrategie versucht, sowohl die Anlegerpsychologie als auch die Big-Fonds-Struktur zu nutzen, indem sie eine Fahrt auf einem Markttrend ausnutzt, die in einer Richtung Dynamik gewinnen und dem Trend folgen kann, bis sie sich umkehrt. Ein weiterer sehr wichtiger Aspekt des quantitativen Handels ist die Häufigkeit der Handelsstrategie. Niedrigfrequenzhandel (LFT) bezieht sich allgemein auf jede Strategie, die Vermögenswerte länger als einen Handelstag hält. Entsprechend bezieht sich der Hochfrequenzhandel (HFT) im Allgemeinen auf eine Strategie, die Vermögenswerte intraday hält. Ultra-Hochfrequenz-Handel (UHFT) bezieht sich auf Strategien, die Vermögenswerte in der Größenordnung von Sekunden und Millisekunden halten. Als Handelspartner sind HFT und UHFT sicher möglich, aber nur mit detaillierter Kenntnis der Handelstechnologie Stack und Orderbuch Dynamik. Wir werden diese Aspekte in diesem einleitenden Artikel in großem Ausmaß diskutieren. Sobald eine Strategie oder ein Satz von Strategien identifiziert wurde, muss sie nun für die Rentabilität auf historischen Daten getestet werden. Das ist die Domäne des Backtests. Strategie Backtesting Das Ziel des Backtesting ist es, nachzuweisen, dass die anhand des obigen Prozesses identifizierte Strategie rentabel ist, wenn sie sowohl auf historische als auch auf Out-of-Sample-Daten angewendet wird. Dies setzt die Erwartung, wie die Strategie in der realen Welt durchführen wird. Allerdings ist Backtesting nicht eine Garantie für den Erfolg, aus verschiedenen Gründen. Es ist vielleicht das subtilste Gebiet des quantitativen Handels, da es zahlreiche Vorurteile mit sich bringt, die sorgfältig geprüft und so weit wie möglich beseitigt werden müssen. Wir diskutieren die gemeinsamen Arten von Bias einschließlich Vorausschau. Überlebens-Bias und Optimierung Bias (auch bekannt als Data-Snooping Bias). Weitere Schwerpunkte im Backtesting sind Verfügbarkeit und Sauberkeit historischer Daten, Factoring in realistischen Transaktionskosten und die Entscheidung über eine robuste Backtesting-Plattform. Besprechen Sie die Transaktionskosten weiter unten im Abschnitt Ausführungssysteme. Sobald eine Strategie identifiziert wurde, ist es notwendig, die historischen Daten zu erhalten, durch die zur Durchführung von Tests und vielleicht Verfeinerung. Es gibt eine beträchtliche Anzahl von Datenanbietern in allen Assetklassen. Ihre Kosten sind in der Regel mit der Qualität, Tiefe und Aktualität der Daten. Der traditionelle Ausgangspunkt für den Beginn der quant Trader (zumindest auf der Retail-Ebene) ist die Nutzung der kostenlosen Datensatz von Yahoo Finance. Ich werde nicht auf Anbieter zu viel hier wohnen, eher möchte ich mich auf die allgemeinen Fragen konzentrieren, wenn es um historische Datensätze geht. Zu den Hauptanliegen der historischen Daten gehören Genauigkeit / Sauberkeit, Hinterbliebenenvorstellung und Anpassung für Kapitalmaßnahmen wie Dividenden und Aktiensplits: Genauigkeit bezieht sich auf die Gesamtqualität der Daten - ob sie Fehler enthält. Fehler können manchmal leicht zu identifizieren, wie mit einem Spike-Filter. Die falsche Spitzen in den Zeitreihendaten herausholen und für sie korrigieren. Zu anderen Zeiten können sie sehr schwer zu erkennen. Es ist oft notwendig, zwei oder mehr Anbieter zu haben und dann alle ihre Daten gegeneinander zu überprüfen. Survivorship Bias ist oft ein Merkmal von freien oder billigen Datensätzen. Ein Datensatz mit Überlebensvorspannung bedeutet, dass er keine Vermögenswerte enthält, die nicht mehr handeln. Bei Aktien handelt es sich um verzinsliche / bankrotte Bestände. Diese Vorspannung bedeutet, dass jede Börsenstrategie, die auf einem solchen Datensatz getestet wird, wahrscheinlich besser abschneidet als in der realen Welt, da die historischen Gewinner bereits vorgewählt wurden. Corporate Aktionen umfassen logistische Aktivitäten durch das Unternehmen, die in der Regel eine Schritt-Funktion ändern in den Rohpreisen, die nicht in die Berechnung der Renditen des Preises aufgenommen werden. Anpassungen für Dividenden und Aktiensplits sind die gemeinsamen Täter. Ein Verfahren, das als Rückenanpassung bekannt ist, muss bei jeder dieser Aktionen durchgeführt werden. Man muss sehr vorsichtig sein, einen Aktiensplit nicht mit einer wahren Renditeanpassung zu verwechseln. Viele Händler wurden von einer Unternehmensaktion gefangen Um ein Backtest-Verfahren durchzuführen, ist es notwendig, eine Software-Plattform zu nutzen. Sie haben die Wahl zwischen dedizierten Backtest-Software, wie Tradestation, eine numerische Plattform wie Excel oder MATLAB oder eine vollständige benutzerdefinierte Implementierung in einer Programmiersprache wie Python oder C. Ich werde nicht zu viel auf Tradestation (oder ähnlich), Excel oder wohnen MATLAB, wie ich glaube an die Schaffung eines Full-in-house-Technologie-Stack (aus Gründen unten beschrieben). Einer der Vorteile davon ist, dass die Backtest-Software und das Ausführungssystem auch bei extrem fortgeschrittenen statistischen Strategien eng integriert werden können. Für HFT-Strategien ist es besonders wichtig, eine benutzerdefinierte Implementierung zu verwenden. Beim Backtesting eines Systems muss man in der Lage sein zu quantifizieren, wie gut es funktioniert. Die Industriestandard-Metriken für quantitative Strategien sind der maximale Drawdown und das Sharpe Ratio. Der maximale Drawdown charakterisiert den grössten Peak-to-trough-Rückgang der Kontoguthabenkurve über einen bestimmten Zeitraum (in der Regel jährlich). Dies wird meist als Prozentsatz angegeben. LFT-Strategien neigen dazu, größere Drawdowns als HFT-Strategien, aufgrund einer Reihe von statistischen Faktoren haben. Ein historischer Backtest zeigt den bisherigen maximalen Drawdown, der ein guter Leitfaden für die zukünftige Drawdown-Performance der Strategie ist. Die zweite Messung ist das Sharpe-Verhältnis, das heuristisch definiert ist als der Durchschnitt der Überschussrenditen dividiert durch die Standardabweichung dieser Überschussrenditen. Hier bezieht sich die Überschussrendite auf die Rendite der Strategie oberhalb eines vordefinierten Benchmarks. Wie das SP500 oder ein 3-monatiges Schatzamt. Beachten Sie, dass die jährliche Rendite keine übliche Maßnahme ist, da sie die Volatilität der Strategie nicht berücksichtigt (im Gegensatz zum Sharpe Ratio). Sobald eine Strategie rückgängig gemacht wurde und als frei von Verzerrungen betrachtet wird (so viel wie möglich), mit einem guten Sharpe und minimierten Drawdowns, ist es Zeit, ein Ausführungssystem aufzubauen. Ausführungssysteme Ein Ausführungssystem ist das Mittel, mit dem die Liste der durch die Strategie erzeugten Geschäfte durch den Broker gesendet und ausgeführt wird. Trotz der Tatsache, dass die Handelsgenerierung halb - oder sogar vollautomatisiert werden kann, kann der Ausführungsmechanismus manuell, halb-manuell (d. H. Ein Klick) oder vollautomatisiert sein. Für LFT-Strategien sind manuelle und halb-manuelle Techniken üblich. Für HFT-Strategien ist es notwendig, einen vollautomatischen Ausführungsmechanismus zu schaffen, der oft eng mit dem Handelsgenerator (aufgrund der Interdependenz von Strategie und Technologie) gekoppelt ist. Die wichtigsten Überlegungen bei der Erstellung eines Ausführungssystems sind die Schnittstelle zum Maklergeschäft. Minimierung der Transaktionskosten (einschließlich Provision, Rutschung und Spread) und Divergenz der Performance des Live-Systems von der getesteten Performance. Es gibt viele Möglichkeiten, um eine Brokerage Schnittstelle. Sie reichen vom Aufruf Ihres Brokers über das Telefon bis hin zu einer vollautomatischen, leistungsstarken Application Programming Interface (API). Idealerweise möchten Sie die Ausführung Ihres Trades so weit wie möglich automatisieren. Dies befreit Sie, um auf weitere Forschung konzentrieren, sowie ermöglichen es Ihnen, mehrere Strategien oder sogar Strategien der höheren Frequenz laufen (in der Tat, HFT ist im Wesentlichen unmöglich, ohne automatisierte Ausführung). Die oben beschriebene gemeinsame Backtesting-Software wie MATLAB, Excel und Tradestation eignet sich für niedrigere, einfachere Strategien. Allerdings wird es notwendig sein, ein hauseigenes Ausführungssystem zu erstellen, das in einer Hochleistungssprache wie C geschrieben ist, um irgendeine reale HFT durchzuführen. Als Anekdote hatten wir in dem Fonds, in dem ich früher beschäftigt war, eine 10-minütige Handelsschleife, wo wir alle 10 Minuten neue Marktdaten herunterladen und dann Trades basierend auf diesen Informationen im gleichen Zeitrahmen ausführen würden. Dies war mit einem optimierten Python-Skript. Für irgendetwas, das Minuten - oder zweite Frequenzdaten annimmt, glaube ich, dass C / C ideal wäre. In einem größeren Fonds ist es oft nicht die Domäne des Quant-Traders, die Ausführung zu optimieren. Allerdings in kleineren Geschäften oder HFT-Firmen, die Händler sind die Ausführenden und so eine viel breitere Skillset ist oft wünschenswert. Denken Sie daran, wenn Sie von einem Fonds beschäftigt werden möchten. Ihre Programmierkenntnisse werden so wichtig sein, wenn nicht mehr, als Ihre Statistiken und Ökonometrie Talente Ein weiteres wichtiges Thema, das unter dem Banner der Ausführung fällt, ist die der Transaktionskostenminimierung. Es gibt in der Regel drei Komponenten zu Transaktionskosten: Provisionen (oder Steuern), die die Gebühren sind, die durch das Maklergeschäft, die Börse und die SEC (oder ähnliche Regulierungsbehörde) Schlupf, die der Unterschied zwischen dem, was Sie beabsichtigten Ihre Bestellung zu sein Gefüllt an versus, was es tatsächlich an der Ausbreitung gefüllt wurde, die der Unterschied zwischen dem Bid / Ask-Preis des gehandelten Wertes ist. Beachten Sie, dass der Spread NICHT konstant ist und abhängig von der aktuellen Liquidität (d. H. Verfügbarkeit von Kauf - / Verkaufsaufträgen) auf dem Markt ist. Transaktionskosten können den Unterschied zwischen einer äußerst profitablen Strategie mit einer guten Sharpe-Ratio und einer äußerst unrentablen Strategie mit einer schrecklichen Sharpe-Ratio machen. Es kann eine Herausforderung sein, die Transaktionskosten von einem Backtest korrekt vorherzusagen. Abhängig von der Häufigkeit der Strategie, benötigen Sie Zugang zu historischen Austausch-Daten, die Tick-Daten für Bid / Ask-Preise enthalten. Gesamte Teams von Quants werden aus diesen Gründen der Optimierung der Ausführung in den größeren Fonds gewidmet. Betrachten Sie das Szenario, in dem ein Fonds eine beträchtliche Menge von Geschäften (von denen die Gründe dafür vielfältig sind) abzuladen brauchen. Durch das Dumping so viele Aktien auf den Markt, werden sie schnell drücken den Preis und kann nicht erhalten optimale Ausführung. Daher existieren Algorithmen, die Futteraufträge auf den Markt tropfen, obwohl der Fonds das Risiko eines Rutschens ausübt. Darüber hinaus gehen andere Strategien auf diese Notwendigkeiten und können die Ineffizienzen ausbeuten. Dies ist die Domäne der Fondsstruktur Arbitrage. Das letzte Hauptproblem bei Ausführungssystemen betrifft die Divergenz der Strategieperformance von der getesteten Performance. Dies kann aus einer Reihe von Gründen geschehen. Weve bereits diskutiert, Blick nach vorne Bias und Optimierung Bias in der Tiefe, bei der Prüfung Backtests. Einige Strategien machen es jedoch nicht einfach, diese Vorurteile vor der Bereitstellung zu testen. Dies geschieht in HFT überwiegend. Es kann Bugs in der Ausführung System sowie die Trading-Strategie selbst, die nicht angezeigt werden, auf einem Backtest aber DO zeigen sich im Live-Handel. Der Markt könnte unter Umständen einem Regimewechsel nach dem Einsatz Ihrer Strategie unterliegen. Neue regulatorische Rahmenbedingungen, veränderte Investorenstimmung und makroökonomische Phänomene können alle zu Divergenzen in der Marktverfassung und damit zur Rentabilität Ihrer Strategie führen. Risikomanagement Das letzte Stück des quantitativen Handelspuzzles ist der Prozess des Risikomanagements. Das Risiko beinhaltet alle bisherigen Vorurteile, die wir besprochen haben. Es umfasst Technologie-Risiko, wie z. B. Server an der Börse plötzlich eine Festplatte Fehlfunktion an. Es enthält Brokerage-Risiko, wie der Makler Bankrott (nicht so verrückt wie es klingt, angesichts der jüngsten Angst mit MF Global). Kurz gesagt, es deckt fast alles, was möglicherweise die Handelsumsetzung stören könnte, von der es viele Quellen gibt. Ganze Bücher sind dem Risikomanagement für quantitative Strategien gewidmet, so will ich nicht versuchen, auf alle möglichen Quellen des Risikos hier aufzuklären. Das Risikomanagement umfasst auch die so genannte optimale Kapitalallokation. Die ein Zweig der Portfolio-Theorie ist. Dies ist das Mittel, mit dem Kapital zu einer Reihe von verschiedenen Strategien und den Handel innerhalb dieser Strategien zugeordnet wird. Es ist ein komplexes Gebiet und stützt sich auf einige nicht-triviale Mathematik. Der Industriestandard, nach dem die optimale Kapitalallokation und die Hebelwirkung der Strategien zusammenhängen, wird das Kelly-Kriterium genannt. Da dies ein einleitender Artikel ist, werde ich nicht auf seine Berechnung. Das Kelly-Kriterium macht einige Annahmen über den statistischen Charakter der Renditen, die oft nicht auf den Finanzmärkten gelten, so dass Händler oft konservativ sind, wenn es um die Umsetzung geht. Ein weiterer Schwerpunkt des Risikomanagements liegt im Umgang mit dem eigenen psychologischen Profil. Es gibt viele kognitive Verzerrungen, die in den Handel einschleichen können. Obwohl dies bei algorithmischem Handel zugegebenermaßen weniger problematisch ist, wenn die Strategie allein bleibt. Eine gemeinsame Vorspannung ist diejenige der Verlustaversion, bei der eine Verlustposition aufgrund des Schmerzes, einen Verlust zu realisieren, nicht ausgeschlossen wird. Ebenso können Gewinne zu früh genommen werden, weil die Angst, einen bereits gewonnenen Gewinn zu verlieren, zu groß sein kann. Eine andere gemeinsame Vorspannung wird als Wiederholungsvorspannung bezeichnet. Dies äußert sich, wenn die Händler zu viel Wert auf die jüngsten Ereignisse legen und nicht längerfristig. Dann gibt es natürlich das klassische Paar emotionale Vorurteile - Angst und Gier. Diese können häufig zu Unter - oder Überhebungen führen, was zu einem Blow-up (d. h. dem Konto-Eigenkapital-Überschrift zu null oder schlechter) oder zu reduzierten Gewinnen führen kann. Wie zu sehen ist, ist der quantitative Handel ein äußerst komplexer, wenn auch sehr interessanter Bereich der quantitativen Finanzierung. Ich habe buchstäblich zerkratzt die Oberfläche des Themas in diesem Artikel und es ist schon ziemlich lange Ganze Bücher und Papiere wurden über Themen, die ich habe nur einen Satz oder zwei in Richtung geschrieben. Aus diesem Grund, vor der Anwendung für quantitative Fondshandel Arbeitsplätze, ist es notwendig, eine erhebliche Menge an Grundlagenstudie durchzuführen. Zumindest benötigen Sie einen umfangreichen Hintergrund in Statistik und Ökonometrie, mit viel Erfahrung in der Umsetzung, über eine Programmiersprache wie MATLAB, Python oder R. Für mehr anspruchsvolle Strategien am höheren Frequenz Ende, ist Ihre Fähigkeit gesetzt wahrscheinlich Linux-Kernel-Modifikation, C / C, Assembler-Programmierung und Netzwerk-Latenz-Optimierung. Wenn Sie daran interessiert sind, Ihre eigenen algorithmischen Trading-Strategien zu schaffen, wäre mein erster Vorschlag, um gute Programmierung zu bekommen. Meine Vorliebe ist es, so viel von der Daten-Grabber, Strategie Backtester und Execution-System von sich selbst wie möglich zu bauen. Wenn Ihr eigenes Kapital auf der Linie ist, würden Sie nicht besser schlafen in der Nacht wissen, dass Sie Ihr System vollständig getestet haben und wissen, ihre Fallstricke und besondere Probleme Outsourcing dies zu einem Anbieter, während potenziell Zeitersparnis auf kurze Sicht könnte extrem sein Teuer in der langfristigen.


No comments:

Post a Comment