Hochfrequenz Handelsindikatoren

Grundlagen der algorithmischen Trading-Konzepte und Beispiele. Ein Algorithmus ist eine spezifische Reihe von klar definierten Anweisungen zur Durchführung einer Aufgabe oder Prozess. Algorithmischen Handel automatisierten Handel, Black-Box-Handel oder einfach Algo-Trading ist der Prozess der Verwendung von Computern programmiert auf Folgen Sie einem definierten Satz von Anweisungen für die Vermittlung eines Handels, um Gewinne mit einer Geschwindigkeit und Häufigkeit zu generieren, die für einen menschlichen Händler unmöglich ist. Die definierten Satz von Regeln basieren auf Zeitplan, Preis, Menge oder irgendeinem mathematischen Modell abgesehen von Gewinnchancen für die Trader, Algo-Trading macht Märkte liquider und macht den Handel systematischer, indem er emotionale menschliche Auswirkungen auf Handelsaktivitäten auslöst. Stellen Sie einen Trader folgt diesen einfachen Handelskriterien. Buy 50 Aktien einer Aktie, wenn seine 50-Tage gleitenden Durchschnitt über die 200 geht - Tag gleitenden Durchschnitt. Sell Aktien der Aktie, wenn seine 50-Tage gleitenden Durchschnitt unter den 200-Tage gleitenden Durchschnitt. Using dieser Satz von zwei einfachen Anweisungen, ist es einfach, ein Computer-Programm, das automatisch überwacht den Aktienkurs und schreiben Die gleitenden durchschnittlichen Indikatoren und platzieren die Kauf - und Verkaufsaufträge, wenn die definierten Bedingungen erfüllt sind. Der Trader braucht nicht mehr eine Uhr für Live-Preise und Grafiken zu haben oder die Aufträge manuell einzugeben. Das algorithmische Handelssystem tut es automatisch für ihn, richtig Identifizierung der Handelsgelegenheit Für mehr über bewegte Durchschnitte, siehe Simple Moving Averages machen Trends Stand Out. Algo-Trading bietet die folgenden Vorteile. Trades ausgeführt zu den bestmöglichen Preisen. Instant und genaue Trade Order Platzierung damit hohe Chancen der Ausführung auf Wunsch Ebenen. Trades zeitlich abgestimmt und sofort, um erhebliche Preisänderungen zu vermeiden. Reduzierte Transaktionskosten sehen die Implementierung Shortfall Beispiel unten. Simultane automatisierte Kontrollen auf mehrere Marktbedingungen. Reduzierte Risiko von manuellen Fehlern bei der Platzierung der Trades. Backtest der Algorithmus, basierend auf verfügbaren historischen und real Zeit-Daten. Reduzierte Möglichkeit von Fehlern von menschlichen Händlern auf der Grundlage von emotionalen und psychologischen Faktoren. Der größte Teil der heutigen Algo-Trading ist High-Frequenz-Handel HFT, die versucht, auf die Platzierung einer großen Anzahl von Aufträgen mit sehr schnellen Geschwindigkeiten über mehrere Märkte zu profitieren Und mehrere Entscheidungsparameter, basierend auf vorprogrammierten Anweisungen Für mehr auf Hochfrequenz-Handel, siehe Strategien und Geheimnisse der High-Frequenz-Handel HFT Firms. Algo-Trading wird in vielen Formen der Handels-und Investment-Aktivitäten, einschließlich. Mid zu langfristigen Investoren verwendet Oder kaufen Nebenfirmen Pensionskassen, Investmentfonds, Versicherungsgesellschaften, die in Aktien in großen Mengen kaufen, aber nicht wollen, beeinflussen Aktien Preise mit diskreten, großvolumige Investitionen. Kurz Begriff Händler und verkaufen Seitenteilnehmer Marktmacher Spekulanten und Arbitrageurs profitieren von automatisierten Handelsausführung zusätzlich, Algo-Trading hilft bei der Schaffung von ausreichenden Liquidität für Verkäufer auf dem Markt. Systematische Händler Trendfolger Paare Trader Hedge-Fonds usw. finden es viel effizienter, ihre Handelsregeln zu programmieren und lassen Sie das Programm automatisch handeln. Algorithmischen Handel bietet mehr Systematischer Ansatz für den aktiven Handel als Methoden, die auf einer menschlichen Trader-Intuition oder Instinkt basieren. Algorithmische Trading-Strategien. Eine Strategie für den algorithmischen Handel erfordert eine identifizierte Chance, die in Bezug auf verbesserte Erträge oder Kostensenkungen profitabel ist. Folgende gemeinsame Handelsstrategien werden bei algo verwendet - trading. The die meisten gängigen algorithmischen Handelsstrategien folgen Trends in bewegten Durchschnitten Kanal Ausbrüche Preis Ebenen Bewegungen und verwandten technischen Indikatoren Dies sind die einfachsten und einfachsten Strategien, um durch algorithmischen Handel zu implementieren, weil diese Strategien nicht mit machen Vorhersagen oder Preisvorhersagen Trades eingeleitet werden Basierend auf dem Auftreten von wünschenswerten Trends, die einfach und unkompliziert sind, um durch Algorithmen zu implementieren, ohne in die Komplexität der prädiktiven Analyse zu gelangen. Das oben genannte Beispiel von 50 und 200 Tage gleitenden Durchschnitt ist ein populärer Trend nach Strategie Für mehr auf Trendhandelsstrategien, siehe Simple Strategien für die Aktivierung von Trends. Buying eine duale börsennotierte Aktien zu einem niedrigeren Preis in einem Markt und gleichzeitig verkauft es zu einem höheren Preis in einem anderen Markt bietet die Preisdifferenz als risikofreien Gewinn oder Arbitrage Die gleiche Operation kann für Aktien reversiert werden, gegen Futures Instrumente, da Preisdifferenzen von Zeit zu Zeit existieren Implementierung eines Algorithmus zur Identifizierung solcher Preisunterschiede und die Platzierung der Aufträge ermöglicht rentable Chancen in effizienter Weise. Index Fonds haben Perioden des Rebalancing definiert, um ihre Bestände mit ihren jeweiligen Benchmark-Indizes zu bringen, dies schafft Profitable Chancen für algorithmische Händler, die auf erwarteten Trades, die 20-80 Basispunkte profitieren, profitieren, je nach Anzahl der Aktien im Indexfonds, kurz vor dem Indexfonds-Rebalancing. Diese Trades werden über algorithmische Handelssysteme für rechtzeitige Ausführung und beste Preise initiiert. Eine bewährte mathematische Modelle, wie die delta-neutrale Trading-Strategie, die den Handel auf Kombination von Optionen und deren zugrunde liegenden Sicherheit ermöglichen, wo Trades platziert werden, um positive und negative Deltas auszugleichen, so dass das Portfolio-Delta auf Null gehalten wird. Mean Reversion-Strategie Basiert auf der Idee, dass die hohen und niedrigen Preise eines Vermögenswertes ein temporäres Phänomen sind, das periodisch auf ihren Mittelwert zurückkehrt. Ermittlung und Definition eines Preisbereichs und Implementierung eines Algorithmus, der darauf basiert, dass die Trades automatisch platziert werden können, wenn der Preis der Vermögenswerte einbringt und Aus dem definierten Bereich. Die gewogene durchschnittliche Preisstrategie bricht einen Großauftrag auf und gibt dynamisch bestimmte kleinere Stücke des Auftrags auf den Markt aus, indem sie spezifizierte historische Volumenprofile verwendet. Ziel ist es, den Auftrag in der Nähe des volumengewichteten Durchschnittspreises VWAP, Damit die durchschnittliche Preisstrategie profitiert. Die zeitlich gewichtete durchschnittliche Preisstrategie zerbricht einen großen Auftrag und gibt dynamisch bestimmte kleinere Stücke des Auftrags auf den Markt mit gleichmäßig geteilten Zeitschlitzen zwischen Start - und Endzeit frei. Ziel ist es, den Auftrag in der Nähe des Durchschnittes auszuführen Preis zwischen den Start - und Endzeiten, wodurch die Marktauswirkungen minimiert werden. Bis der Trade Order vollständig ausgefüllt ist, fährt dieser Algorithmus fort, Teilaufträge zu senden, je nach dem definierten Partizipationsverhältnis und nach dem Volumen, das in den Märkten gehandelt wird. Die entsprechende Strategiestrategie sendet Aufträge an Ein benutzerdefinierter Prozentsatz der Marktvolumina und erhöht oder verringert diese Erwerbsquote, wenn der Aktienkurs benutzerdefinierte Level erreicht. Die Implementierungs-Shortfall-Strategie zielt darauf ab, die Ausführungskosten eines Auftrags durch den Handel aus dem Echtzeitmarkt zu minimieren und damit zu sparen Die Kosten der Bestellung und profitieren von den Opportunitätskosten der verspäteten Ausführung Die Strategie wird die gezielte Teilnahmequote erhöhen, wenn sich der Aktienkurs positiv bewegt und verringert, wenn der Aktienkurs sich negativ bewegt. Es gibt ein paar spezielle Klassen von Algorithmen, die versuchen zu identifizieren Ereignisse auf der anderen Seite Diese Sniffing-Algorithmen, die zum Beispiel von einem Sell-Side-Market-Maker verwendet werden, haben die eingebaute Intelligenz, um die Existenz von Algorithmen auf der Kaufseite eines großen Auftrags zu identifizieren. Diese Erkennung durch Algorithmen hilft dem Market Maker Identifizieren große Auftragsmöglichkeiten und erlauben ihm, durch das Ausfüllen der Aufträge zu einem höheren Preis zu profitieren Dies wird manchmal als High-Tech-Front-Run für mehr auf Hochfrequenzhandel und betrügerische Praktiken, sehen, wenn Sie Aktien kaufen Online, sind Sie beteiligt in HFTs. Technische Anforderungen für algorithmische Trading. Implementierung der Algorithmus mit einem Computer-Programm ist der letzte Teil, Clubbed mit Backtesting Die Herausforderung besteht darin, die identifizierte Strategie in einen integrierten Computer-Prozess, der Zugriff auf ein Trading-Konto für die Platzierung von Aufträgen hat, umzusetzen Programmierung von Wissen, um die geforderte Handelsstrategie zu programmieren, angepasste Programmierer oder vorgefertigte Trading-Software-Konnektivität und Zugriff auf Handelsplattformen für die Platzierung der Aufträge. Zugriff auf Marktdaten-Feeds, die durch den Algorithmus überwacht werden, um Möglichkeiten, um Aufträge zu platzieren. Die Fähigkeit und Infrastruktur Um das System einmal gebaut zu testen, bevor es auf echten Märkten geht. Verfügbare historische Daten für das Backtesting, abhängig von der Komplexität der Regeln, die im Algorithmus implementiert werden. Hier ist ein umfassendes Beispiel Royal Dutch Shell RDS ist an der Amsterdamer Börse AEX und London Stock notiert Exchange LSE Lassen Sie uns einen Algorithmus erstellen, um Arbitrage-Chancen zu identifizieren Hier sind nur wenige interessante Beobachtungen. AEX Trades in Euro, während LSE in Sterling Pound. Due auf die einstündige Zeitdifferenz, AEX öffnet eine Stunde früher als LSE, gefolgt von beiden Börsen Handel Gleichzeitig für die nächsten paar Stunden und dann Handel nur in LSE während der letzten Stunde als AEX schließt. Kann wir erkunden die Möglichkeit der Arbitrage Handel auf der Royal Dutch Shell Aktie auf diesen beiden Märkten in zwei verschiedenen Währungen aufgeführt. Computerprogramm, das aktuelle lesen kann Marktpreise. Preis-Feeds von sowohl LSE und AEX. A Forex Rate Feed für GBP-EUR Wechselkurs. Order Platzierung Fähigkeit, die die Bestellung an den richtigen Austausch. Back-Test-Fähigkeit auf historische Preis-Feeds. Das Computer-Programm sollte die After. Lesen Sie die eingehende Preis-Feed von RDS-Aktie von beiden Börsen. Using die verfügbaren Wechselkurse umwandeln den Preis von einer Währung in andere. Wenn es gibt eine ausreichend große Preisdiskrepanz Diskontierung der Vermittlungskosten, die zu einer rentablen Gelegenheit, dann platzieren Sie die Kaufen Sie Auftrag auf niedrigere Preisveränderung und verkaufen Sie Auftrag auf höherem Preis. Wenn die Aufträge wie gewünscht ausgeführt werden, wird der Arbitrage-Profit folgen. Einfach und einfach Allerdings ist die Praxis des algorithmischen Handels nicht so einfach zu pflegen und auszuführen Denken Sie daran, wenn Sie Kann ein algo-generierter Handel platzieren, also können die anderen Marktteilnehmer folglich die Preise in Milli - und sogar Mikrosekunden schwanken In dem obigen Beispiel, was passiert, wenn Ihr Kaufhandel ausgeführt wird, aber verkaufen Handel doesn t, wie die Verkaufspreise durch die ändern Zeit Ihre Bestellung trifft auf den Markt Sie werden am Ende sitzen mit einer offenen Position machen Ihre Arbitrage-Strategie wertlos. Es gibt zusätzliche Risiken und Herausforderungen zum Beispiel System Ausfall Risiken, Netzwerk-Konnektivität Fehler, Zeitverzögerungen zwischen Handelsaufträgen und Ausführung, und am meisten Wichtig für alle, unvollkommene Algorithmen Je komplexer ein Algorithmus ist, desto strengeres Backtesting wird benötigt, bevor es in die Tat umgesetzt wird. Die quantitative Analyse der Performance eines Algorithmus spielt eine wichtige Rolle und sollte kritisch untersucht werden. Es ist spannend, für die Automatisierung zu sorgen Computer mit einer Vorstellung, um mühelos Geld zu verdienen Aber man muss sicherstellen, dass das System gründlich getestet ist und erforderliche Grenzen gesetzt sind. Analytische Händler sollten das Lernen von Programmier - und Gebäudesystemen auf eigene Faust betrachten, um sicher zu sein, dass Sie die richtigen Strategien in narrensicherer Weise umsetzen Die gründliche Prüfung des Algo-Handels kann zu profitable Chancen führen. Der Zinssatz, bei dem ein Depotinstitut die in der Federal Reserve gepflegten Gelder an eine andere Depotbank leiht.1 Ein statistisches Maß für die Verteilung der Renditen für einen bestimmten Wertpapier oder Marktindex Volatilität kann entweder Gemessen werden. Es handeln die US-Kongress verabschiedet im Jahr 1933 als Banking Act, die Geschäftsbanken von der Teilnahme an der Investition verboten. Nonfarm Gehaltsliste bezieht sich auf jede Arbeit außerhalb der landwirtschaftlichen Betriebe, private Haushalte und der gemeinnützige Sektor Die US Bureau of Labor. The Währung Abkürzung oder Währungssymbol für die indische Rupie INR, die Währung von Indien Die Rupie besteht aus 1.Angebot auf einem Bankrott Unternehmen Vermögenswerte von einem interessierten Käufer gewählt von der Bankrott Firma Von einem Pool von Bietern. Forex Roboter HF - Scalping EURUSD, AUDUSD. Limited Time Angebot von BJF Trading Group inc. Forex Roboter HF-Scalping. Forex Roboter MT4 Expert Advisor HF-Scalping ist eine hochfrequente, vollautomatische Handelsstrategie für die MT4-Plattform, basierend auf dem Kursbewegungsindikator und dem Keltner Channel Indicator Der Roboter analysiert nicht nur die Länge der Minute Kerzen M1, sondern auch die zeitlichen Eigenschaften der Bildung von Kerzen die Bildung von High und Low HF-Scalping Forex Roboter ist empfindlich für Makler, und Sie benötigen echte ECN STP Konto. Hochfrequenz Erläuterung. Hochfrequenzhandel - Eine computergesteuerte Investitionshandelsstrategie, die ein hohes Transaktionsvolumen, extrem kurzfristige Positionen und einen schnellen regelbasierten automatisierten Kauf und Verkauf hervorruft Hochfrequenzhandel wird durch Computeralgorithmen durchgeführt, die von Investmentgesellschaften betrieben werden Reagieren auf vordefinierte Marktbedingungen, um kurzfristige Gewinne zu generieren. Trading Beispiele. Keltner Channel Erläuterung. Keltner Kanal ist ein technischer Analyse Indikator zeigt eine zentrale gleitende durchschnittliche Linie plus Kanal Linien in einem Abstand über und unter Der Indikator ist nach Chester W benannt Keltner 1909 1998, der es in seinem 1960er Buch beschrieb, wie man Geld in Rohstoffen verdient Dieser Name wurde von denen angewendet, die von ihm von ihm gehört haben, aber Keltner nannte es die zehntägige gleitende durchschnittliche Handelsregel und in der Tat keinen Anspruch auf irgendeine Originalität für Die idea. In Keltner s Beschreibung die Mittellinie ist ein 10-Tage einfach gleitenden Durchschnitt der typischen Preis, wo typischen Preis jeden Tag ist der Durchschnitt von hoch, niedrig und schließen. Die Linien oben und unten sind eine Distanz von dieser Mittellinie gezeichnet , Eine Distanz, die der einfache gleitende Durchschnitt der letzten 10 Tage Trading Ranges dh Bereich hoch zu niedrig an jedem Tag Die Trading-Strategie ist, um eine Nähe über der oberen Zeile als ein starkes bullish Signal oder eine Nähe unterhalb der unteren Zeile als zu sehen Starke bearish Stimmung, und kaufen oder verkaufen mit dem Trend entsprechend, aber vielleicht mit anderen Indikatoren zu bestätigen. Live Account Monitoring 1.Live Account Monitoring 2.Trading Ergebnis Analyse von currency. Risk of Run Analysis. Limited Zeit offer. Forex Robot HF - Scalping.1 JForex und 1 MT4 Lizenz. one Zeit payment. free support. Money zurück Garantie 30 Tage. Dieser Beitrag wird detailliert, was ich getan habe, um ca. 500k von Hochfrequenzhandel von 2009 bis 2010 zu machen Da ich völlig unabhängig handelte und bin nein Länger läuft mein Programm Ich bin glücklich, alles zu erzählen Mein Handel war meistens in Russel 2000 und DAX-Futures-Kontrakten. Der Schlüssel zu meinem Erfolg war, glaube ich, nicht in einer anspruchsvollen finanziellen Gleichung, sondern in der Gesamt-Algorithmus-Design, die viele einfache zusammengebunden hat Komponenten und gebrauchte Maschinen Lernen zu optimieren für maximale Profitabilität Sie gewann t müssen wissen, jede anspruchsvolle Terminologie hier, denn wenn ich mein Programm einrichten, war es alle auf Intuition Andrew Ng s erstaunliche Maschine Lernkurs war noch nicht verfügbar - btw, wenn Sie auf diesen Link klicken Du wirst zu meinem aktuellen Projekt CourseTalk, einer Rezensionsseite für MOOCs, genommen werden. Zuerst möchte ich nur zeigen, dass mein Erfolg nicht einfach das Ergebnis des Glücks war. Mein Programm machte 1000-4000 Trades pro Tag halb so lang, halb kurz und niemals In Positionen von mehr als ein paar Verträge zu einer Zeit Dies bedeutete das zufällige Glück von einem bestimmten Handel gemittelt ziemlich schnell Das Ergebnis war ich nie verloren mehr als 2000 an einem Tag und hatte nie einen verlorenen Monat. BEARBEITEN Diese Zahlen sind nach Bezahlung von Provisionen. Und hier sa Diagramm, um Ihnen ein Gefühl der täglichen Variation Hinweis, dass dies schließt die letzten 7 Monate, weil - da die Zahlen gestoppt steigen - ich meine Motivation verloren, um sie zu betreten. Meine Trading-Hintergrund. Prior Um mein automatisiertes Handelsprogramm einzurichten Ich hatte 2 Jahre Erfahrung als manueller Tag Trader Dies war wieder im Jahr 2001 - es war die frühen Tage des elektronischen Handels und es gab Möglichkeiten für Skalierer, gutes Geld zu machen Ich kann nur beschreiben, was ich tat So ähnlich wie ein Videospiel spielen mit einer vermeintlichen Kante Als erfolgreich zu sein, war schnell, diszipliniert und mit einer guten intuitiven Muster Anerkennung Fähigkeiten konnte ich rund 250k machen, bezahlen meine Studenten Darlehen und haben Geld über Win. Over verlassen In den nächsten fünf Jahren würde ich zwei Startups starten und dabei einige Programmierkenntnisse auf dem Weg abholen. Es würde bis spätestens 2008 sein, dass ich wieder in den Handel zurückkehren würde. Mit dem Geld, das von dem Verkauf meines ersten Startpreises niedrig ist, gehandelt angebotenen Hoffnungen auf etwas schnell Bargeld, während ich herausgefunden meine nächste move. In 2008 war ich manuell Tag Handel Futures mit Software namens T4 Ich wollte einige benutzerdefinierte Bestellung Eintrag Hotkeys, so nach der Entdeckung T4 hatte eine API, nahm ich auf die Herausforderung des Lernens C die Programmiersprache Musste die API benutzen und ging weiter und baute mir einige Hotkeys. Nachdem ich meine Füße nass mit der API hatte, hatte ich bald größere Bestrebungen, die ich dem Computer beibringen wollte, für mich zu handeln. Die API stellte sowohl einen Strom von Marktdaten als auch einen einfachen Weg zur Verfügung Um Aufträge an den Austausch zu schicken - alles was ich tun musste, war die Logik in der Mitte zu schaffen. Below ist ein Screenshot eines T4 Trading Fensters Was war cool war das, als ich mein Programm arbeitete, konnte ich den Computerhandel darauf anschauen Genaue gleiche Schnittstelle Das Aufpassen von echten Befehlen, die in und aus sich selbst mit meinem echten Geld auftauchen, war sowohl spannend als auch beängstigend. Das Design meines Algorithmus. Von Anfang an war mein Ziel, ein System so einzurichten, dass ich vernünftig zuversichtlich war, dass ich vorher Geld verdiene Jemals machen alle Live-Trades Um dies zu erreichen, brauchte ich, um ein Trading-Simulation-Framework, das - so genau wie möglich - simulieren Live-Trading. While Handel im Live-Modus erforderlich Verarbeitung Marktaktualisierungen durch die API gestreamt, Simulations-Modus erforderlich Lesung Markt Updates von einem Datendatei Um diese Daten zu sammeln, setze ich die erste Version meines Programms ein, um einfach eine Verbindung zur API herzustellen und Marktaktualisierungen mit Zeitstempeln aufzuzeichnen. Ich habe mit 4 Wochen im Wert von aktuellen Marktdaten gearbeitet, um mein System zu trainieren und zu testen. Mit einem Grundrahmen in Platz Ich hatte immer noch die Aufgabe herauszufinden, wie man ein profitables Trading-System machen Wie sich herausstellt, würde mein Algorithmus in zwei verschiedene Komponenten zerfallen, die ich später erforschen werde. Predicting Preisbewegungen und. Making profitable Trades. Predicting Preisbewegungen. Vielleicht ist ein offensichtlicher Bestandteil eines jeden Handelssystems in der Lage zu prognostizieren, wo die Preise verschieben werden Und meine war keine Ausnahme Ich habe den aktuellen Preis als der Durchschnitt der Innen-Bid und Insider-Angebot definiert und ich habe das Ziel der Vorhersage, wo der Preis wäre in Die nächsten 10 Sekunden Mein Algorithmus müsste diese Vorhersage Moment für jeden Moment während des Trading Day. Creating Optimierung Indikatoren. Ich habe eine Handvoll von Indikatoren, die eine sinnvolle Fähigkeit, kurzfristige Preisbewegungen vorhersagen Jeder Indikator produziert Eine Zahl, die entweder positiv oder negativ war Ein Indikator war nützlich, wenn mehr als oft nicht eine positive Zahl mit dem Markt überging und eine negative Zahl entsprach mit dem Markt nach unten. Mein System erlaubte mir schnell zu bestimmen, wie viel prädiktive Fähigkeit jeder Indikator Hatte so konnte ich mit vielen verschiedenen Indikatoren experimentieren, um zu sehen, was funktionierte Viele der Indikatoren hatten Variablen in den Formeln, die sie produzierten, und ich konnte die optimalen Werte für diese Variablen finden, indem sie nebeneinander Vergleiche der erzielten Ergebnisse machten Mit unterschiedlichen Werten. Die Indikatoren, die am nützlichsten waren, waren alle relativ einfach und basierten auf den jüngsten Ereignissen auf dem Markt, den ich handelte, sowie die Märkte der korrelierten Wertpapiere. Making genaue Preis bewegen Vorhersagen. Haben Indikatoren, die einfach vorhergesagt, up oder down Preisbewegung war nicht genug, ich musste genau wissen, wie viel Preisbewegungen von jedem möglichen Wert jedes Indikators vorhergesagt wurde. Ich brauchte eine Formel, die einen Indikatorwert auf einen Preisvorhersage umwandeln würde. Um dies zu erreichen, habe ich die vorhergesagten Preisbewegungen in 50 Eimern verfolgt Hing von der Reichweite, dass der Indikator Wert fiel in Dies produziert einzigartige Vorhersagen für jeden Eimer, dass ich dann in der Lage, Grafik in Excel Wie Sie sehen können, die erwartete Preisänderung erhöht, wie der Indikator Wert erhöht. Basiert auf einem Diagramm wie dies war ich In der Lage, eine Formel zu machen, um die Kurve anzupassen Im Anfang habe ich diese Kurve passend manuell, aber ich schrieb bald einen Code, um diesen Prozess zu automatisieren. Hinweis, dass nicht alle Indikator Kurven die gleiche Form haben Auch beachten Sie die Eimer wurden logarithmisch verteilt, so wie Um die Daten gleichmäßig zu verbreiten Schließlich bemerken Sie, dass negative Indikatorwerte und ihre entsprechenden Abwärtspreisvorhersagen umgedreht wurden und mit den positiven Werten kombiniert wurden. Mein Algorithmus behandelte genau die gleichen Binärindikatoren für eine einzelne Vorhersage. Wichtig war, dass jeder Indikator war nicht ganz unabhängig Ich konnte nicht einfach nur addieren alle Vorhersagen, dass jeder Indikator individuell gemacht Der Schlüssel war, um herauszufinden, die zusätzlichen prädiktiven Wert, dass jeder Indikator hatte über das, was bereits vorhergesagt Dies war nicht schwer zu implementieren, aber es bedeutete Dass, wenn ich Kurve passend mehrere Indikatoren zur gleichen Zeit musste ich vorsichtig ändern, würde man die Vorhersagen von einem anderen zu beeinflussen. Um zu konvertieren alle Indikatoren zur gleichen Zeit Ich setze den Optimierer zu Schritt nur 30 der Weg In Richtung der neuen Vorhersagekurven mit jedem Durchlauf Mit diesem 30 Sprung fand ich, dass sich die Vorhersagekurven innerhalb einiger Pässe stabilisieren würden. Mit jedem Indikator, der uns jetzt eine zusätzliche Preisvorhersage gibt, könnte ich sie einfach addieren, um eine einzige Vorhersage zu erzeugen, wo die Markt wäre in 10 Sekunden. Warche Vorhersage Preise ist nicht genug. Sie könnten denken, dass mit diesem Rand auf dem Markt war ich golden Aber Sie müssen im Hinterkopf behalten, dass der Markt besteht aus Angeboten und Angeboten - es ist nicht nur ein Marktpreis Erfolg in Hochfrequenz-Handel kommt auf gute Preise und es ist nicht so einfach. Die folgenden Faktoren machen die Schaffung eines rentablen System schwierig. Mit jedem Handel musste ich Provisionen sowohl für meine Makler und die Börse bezahlen Höchstgebot und niedrigstes Angebot bedeutete, dass ich, wenn ich einfach zufällig kaufen und verkaufen würde, eine Tonne Geld verlieren würde. Die meisten der Marktvolumen waren andere Bots, die nur einen Handel mit mir ausführen würden, wenn sie dachten, sie hätten einen statistischen Rand. Ein Angebot zu sehen, garantierte nicht, dass ich es kaufen konnte. Zu der Zeit, als mein Kaufauftrag an die Börse kam, war es sehr möglich, dass dieses Angebot abgebrochen wäre. Als ein kleiner Marktspieler gab es keinen Weg, den ich auf die Geschwindigkeit allein konkurrieren konnte Eine vollständige Trading-Simulation. So hatte ich einen Rahmen, der mir erlaubt, Backtest und Optimierung Indikatoren Aber ich musste darüber hinaus - ich brauchte ein Framework, das mir erlauben würde, backtest und optimieren ein volles Handelssystem ein, wo ich war Bestellungen und bekommen In Positionen In diesem Fall würde ich für die Gesamt-PL und bis zu einem gewissen Grad durchschnittlichen PL pro Handel optimieren. Dies wäre schwieriger und in gewisser Weise unmöglich, genau zu modellieren, aber ich tat so gut wie ich konnte Hier sind einige der Probleme, die ich hatte Beschäftigen sich. Wenn ein Auftrag an den Markt in der Simulation geschickt wurde, musste ich die Verzögerungszeit modellieren Die Tatsache, dass mein System ein Angebot sah, bedeutete nicht, dass es es sofort kaufen konnte. Das System würde den Auftrag senden, ca. 20 Millisekunden warten und Dann nur dann, wenn das Angebot noch da war, wurde es als ein ausgeführter Handel angesehen. Dies war ungenau, weil die reale Verzögerungszeit inkonsistent und nicht gemeldet war. Als ich Angebote oder Angebote platzierte, musste ich den von der API bereitgestellten Handelsausführungsstrom betrachten und diese nutzen Um zu beurteilen, wann meine Bestellung hätte hingerichtet werden können Um dies zu tun, musste ich die Position meiner Bestellung in der Warteschlange verfolgen. Es war ein erstes erstes System. Ich konnte das nicht perfekt machen, aber ich habe eine optimale Annäherung gemacht. Um meine Auftragsausführungs-Simulation zu verfeinern, was ich tat, war meine Log-Dateien aus dem Live-Trading über die API und vergleichen sie mit Log-Dateien, die von simulierten Trading aus der gleichen Zeitspanne produziert wurde, konnte ich meine Simulation auf den Punkt, dass es hübsch war Genaue und für die Teile, die unmöglich waren, genau zu modellieren, stellte ich sicher, dass ich zumindest Resultate erzähle, die in den Metriken statistisch ähnlich waren, die ich für wichtig hielt. Profitables Handeln. Mit einem Auftragssimulationsmodell konnte ich jetzt im Simulationsmodus Bestellungen senden Und sehen Sie eine simulierte PL Aber wie würde mein System wissen, wann und wo zu kaufen und zu verkaufen. Die Preis bewegen Prognosen waren ein Ausgangspunkt, aber nicht die ganze Geschichte Was ich tat, war ein Scoring-System für jedes von 5 Preisniveaus auf dem Gebot und Angebot Diese beinhalten eine Ebene über dem Innengebot für einen Kaufauftrag und eine Ebene unterhalb des Innenangebots für einen Verkaufsauftrag. Wenn die Punktzahl zu einem bestimmten Preisniveau über einer bestimmten Schwelle lag, würde das mein System ein aktives Angebot bieten - unterhalb der Schwelle, dann sollten alle aktiven Aufträge abgesagt werden. Basierend darauf war es nicht ungewöhnlich, dass mein System ein Gebot auf dem Markt blinkt und dann sofort abbrechen würde. Obwohl ich versuchte, das zu minimieren, da es nervig ist, wie jemand, der auf den Bildschirm schaut Mit menschlichen Augen - einschließlich mich. Die Preisniveau-Scores wurden auf der Grundlage der folgenden Faktoren berechnet. Die Preisbewegungsvorhersage, die wir früher besprochen haben. Das Preisniveau in Frage Inneren Ebenen bedeutete größere Preisbewegungsvorhersagen erforderlich waren. Die Anzahl der Verträge vor Meine Bestellung in der Warteschlange Weniger war besser. Die Anzahl der Verträge hinter meiner Bestellung in der Warteschlange Mehr war besser. Essentiell diese Faktoren dienten dazu, sichere Orte zu bieten bieten Angebot Die Preisbewegung Vorhersage allein war nicht ausreichend, weil es nicht für die Tatsache verantwortlich war Dass ich bei der Abgabe eines Gebotes nicht automatisch gefüllt war - ich bin nur gefüllt, wenn mir jemand dort verkauft wurde. Die Realität war, dass die bloße Tatsache, dass jemand, der mir zu einem bestimmten Preis verkaufte, die statistischen Chancen des Handels veränderte. Die Variablen, die in diesem verwendet wurden Schritt waren alle der Optimierung unterworfen Dies geschah genau so wie ich die Variablen in den Preisbewegungsindikatoren optimierte, außer in diesem Fall optimierte ich für die untere Zeile P L. Was mein Programm ignoriert. Wenn wir als Menschen handeln, haben wir oft starke Emotionen Und Verzerrungen, die zu weniger als optimalen Entscheidungen führen können Klar, dass ich diese Vorurteile nicht kodifizieren wollte Hier sind einige Faktoren, die mein System ignoriert hat. Der Preis, den eine Position eingegeben hat - In einem Handelsbüro ist es ziemlich üblich, Konversation über den Preis zu hören Was jemand lang oder kurz ist, als ob das seine künftige Entscheidungsfindung beeinflussen würde. Während dies eine gewisse Gültigkeit als Teil einer Risikominderungsstrategie hat, hat es wirklich keinen Einfluss auf den zukünftigen Verlauf der Ereignisse auf dem Markt. Daher hat mein Programm diese Information völlig ignoriert Das gleiche Konzept wie ignoriert versunkenen Kosten. Going kurz vs verlassen eine lange Position - Typischerweise würde ein Händler haben unterschiedliche Kriterien, die bestimmt, wo man eine lange Position zu verkaufen, um zu gehen, um zu gehen, aber aus meiner Algorithmen Perspektive gab es keinen Grund, einen Unterschied zu machen Wenn Mein Algorithmus erwartete einen Abwärtsbewegungsverkauf war eine gute Idee, egal ob es derzeit lang, kurz oder flach war. Verdoppelung der Strategie - Dies ist eine gemeinsame Strategie, bei der Händler mehr Lager kaufen werden, falls dort der ursprüngliche Handel gegen sie geht Dies führt dazu, dass Ihr durchschnittlicher Kaufpreis niedriger ist und es bedeutet, wann oder wenn der Bestand um sich herum dreht, werden Sie gesetzt, um Ihr Geld zurück in kürzester Zeit zu machen. Meiner Meinung nach ist das wirklich eine schreckliche Strategie, wenn Sie nicht Warren Buffet Sie wieder in das Denken ausgetrickst Sie sind gut, weil die meisten Ihrer Trades werden Gewinner Das Problem ist, wenn Sie verlieren Sie verlieren groß Der andere Effekt ist es macht es schwer zu beurteilen, wenn Sie tatsächlich eine Kante auf dem Markt haben oder sind nur immer glücklich In der Lage zu überwachen und Bestätigen Sie, dass mein Programm in der Tat eine Kante war ein wichtiges Ziel. Seit mein Algorithmus Entscheidungen auf die gleiche Weise, unabhängig davon, wo es einen Handel trat oder wenn es derzeit lang oder kurz war es gelegentlich sitzen und nehmen einige große verlieren Trades in Zusätzlich zu einigen großen Gewinnen Trades Aber Sie sollten nicht denken, es war kein Risiko-Management. Um das Risiko zu verwalten, habe ich eine maximale Position Größe von 2 Verträge zu einem Zeitpunkt, gelegentlich gestoßen auf hohe Volumen Tage Ich hatte auch eine maximale tägliche Verlustgrenze Um gegen irgendwelche unerwarteten Marktbedingungen oder einen Bug in meiner Software zu schützen Diese Grenzen wurden in meinem Code aber auch im Backend durch meinen Makler erzwungen. Wie es passiert ist, habe ich niemals irgendwelche signifikanten Probleme erlebt. Das Ausführen des Algorithmus. Von dem Moment an, als ich anfing, an meinem zu arbeiten Programm dauert es mir etwa 6 Monate, bevor ich es auf den Punkt der Rentabilität und begonnen, es zu leben, obwohl, um fair zu sein, eine erhebliche Menge an Zeit war das Erlernen einer neuen Programmiersprache Als ich arbeitete, um das Programm zu verbessern, sah ich erhöhte Gewinne für jeden von Die nächsten vier Monate. Jede Woche würde ich mein System auf der Grundlage der vorherigen 4 Wochen im Wert von Daten umkreisen Ich fand, dass dies die richtige Balance zwischen der Erfassung der jüngsten Markt Verhaltens-Trends und versichert mein Algorithmus hatte genug Daten, um sinnvolle Muster zu etablieren Als die Ausbildung begann zu nehmen Mehr und mehr Zeit habe ich es aufgeteilt, so dass es von 8 virtuellen Maschinen mit amazon EC2 durchgeführt werden konnte. Die Ergebnisse wurden dann auf meiner lokalen Maschine verschmolzen. Der Höhepunkt meines Handels war Oktober 2009, als ich fast 100k machte. Danach ging ich weiter Verbringen die nächsten vier Monate versuchen, mein Programm trotz gesunkenen Profit jeden Monat zu verbessern Leider zu diesem Zeitpunkt Ich denke, ich d implementiert alle meine besten Ideen, weil nichts, was ich versucht schien viel zu helfen. Mit der Frustration nicht in der Lage, Verbesserungen zu machen und nicht mit Ein Gefühl des Wachstums begann ich darüber nachzudenken, eine neue Richtung Ich per E-Mail 6 verschiedene Hochfrequenz-Handelsfirmen zu sehen, ob sie sich daran interessiert, meine Software zu kaufen und mich einzustellen, um für sie zu arbeiten Niemand antwortete ich hatte einige neue Startup-Ideen, die ich arbeiten wollte Also habe ich niemals nachgeholt. UPDATE - ich habe das auf Hacker News gepostet und es hat viel Aufmerksamkeit bekommen, ich möchte nur sagen, dass ich niemanden befürworte, der versucht, so etwas selbst zu tun. Du brauchst ein Team von wirklich klugen Leuten Mit einer Reihe von Erfahrungen, um irgendeine Hoffnung auf Konkurrenz zu haben Selbst wenn ich dies tat, glaube ich, dass es sehr selten für Einzelpersonen war, um Erfolg zu erzielen, obwohl ich von anderen gehört hatte. Es gibt einen Kommentar an der Oberseite der Seite, die manipulierte Statistiken erwähnt Bezieht sich auf mich als Retail-Investor, dass Quants würde gerne abholen Dies ist ein ziemlich unglücklicher Kommentar, dass s einfach nicht in der Realität basiert Einstellung, dass beiseite gibt es einige interessante Kommentare. UPDATE 2 - Ich habe eine Follow-up-FAQ, die einige gemeinsame beantwortet Fragen, die ich von Händlern über diesen Beitrag erhalten habe.


Comments