Thursday 26 October 2017

Gebäude A Stock Trading System


Trading Systems: Aufbau eines Systems 13 Bisher haben wir die Grundkomponenten der Handelssysteme, die Kriterien, die sie erfüllen müssen, und einige der vielen empirischen Entscheidungen, die ein Systemdesigner machen muss, besprochen. In diesem Abschnitt werden wir den Prozess des Bauens eines Handelssystems, die Betrachtungen, die gemacht werden müssen, und einige wichtige Punkte zu erinnern untersuchen. Die Six-Step-System-Konstruktion 1. Setup - Um mit dem Aufbau eines Handelssystems zu beginnen, benötigen Sie mehrere Dinge: Daten - Weil der Systemdesigner umfangreiches Backtesting verwenden muss. Vergangenheit Preis Geschichte ist wichtig für den Bau eines Handelssystems. Solche Daten können in die Handelssystem-Entwicklungssoftware oder als separater Daten-Feed integriert werden. Live-Daten werden oft für eine monatliche Gebühr zur Verfügung gestellt, während ältere Daten kostenlos erhältlich sind. Software - Obwohl es möglich ist, ein Handelssystem ohne Software zu entwickeln, ist es sehr unpraktisch. Seit den späten 90er Jahren ist Software ein integraler Bestandteil des Baustellensystems geworden. Einige gemeinsame Funktionen ermöglichen es dem Händler, das folgende zu tun: Automatische Platzierung von Trades - Dies erfordert oft die Erlaubnis aus dem Broker s Ende, weil eine ständige Verbindung zwischen Ihrer Software und dem Brokerage vorhanden sein muss. Trades müssen sofort und zu exakten Preisen durchgeführt werden, um die Konformität zu gewährleisten. Um Ihre Software Platz Trades für Sie haben, alles, was Sie tun müssen, ist die Eingabe der Kontonummer und Passwort, und alles andere wird automatisch durchgeführt. Bitte beachten Sie, dass die Verwendung dieser Funktion strikt optional ist. Code ein Handelssystem - Diese Software-Funktion implementiert eine proprietäre Programmiersprache, mit der Sie Regeln einfach erstellen können. Zum Beispiel verwendet MetaTrader MQL (MetaQuotes Language). Heres ein Beispiel für seinen Code zu verkaufen, wenn freie Marge ist weniger als 5.000: Wenn FreeMargin lt 5000, dann verlassen Oft, nur das Lesen des Handbuchs und Experimentieren sollten Sie auf die Grundlagen der Sprache, die Ihre Software verwendet abholen. Backtest Ihre Strategie - Systementwicklung ohne Backtesting ist wie Tennis spielen ohne Racket. System-Entwicklungs-Software enthält oft eine einfache Backtesting-Anwendung, die Ihnen erlaubt, eine Datenquelle, Eingabe-Account-Informationen und Backtest für jede Menge Zeit mit dem Mausklick zu definieren. Hier ist ein Beispiel aus MetaTrader: Nach dem Rücktest wird ein Report erstellt, der die Besonderheiten der Ergebnisse umreißt. Dieser Bericht enthält in der Regel Gewinn, Anzahl der erfolglosen Trades, aufeinanderfolgende Tage unten, Anzahl der Trades und viele andere Dinge, die hilfreich sein können, wenn Sie versuchen zu bestimmen, wie man das System beheben oder verbessern kann. Schließlich schafft die Software in der Regel eine Grafik, die das Wachstum der Investition während des gesamten getesteten Zeitraums zeigt. 2. Design - Das Design ist das Konzept hinter Ihrem System, die Art und Weise, in der die Parameter verwendet werden, um einen Gewinn oder Verlust zu generieren. Sie implementieren diese Regeln und Parameter, indem sie sie programmieren. Manchmal kann diese Programmierung automatisch über eine grafische Benutzeroberfläche erfolgen. So können Sie Regeln erstellen, ohne eine Programmiersprache zu lernen. Hier ist ein Beispiel für ein gleitendes durchschnittliches Cross-Over-System: Wenn SMA (20) CrossOver EMA (13) dann eingegeben wird Wenn SMA (20) CrossUnder EMA (13) dann verlassen Regeln wie diese, die in Code gesetzt werden, erlauben die Software automatisch Generieren Ein - und Ausgänge an den Punkten, an denen die Regeln anwendbar sind. Hier ist das, was die Design-Oberfläche auf MetaTrader aussieht: Das System wird durch einfaches Eingeben der Regeln im Fenster erstellt und gespeichert. Referenzen für die verschiedenen verfügbaren Funktionen (z. B. Oszillatoren und solche) können durch Anklicken des Buchsymbols gefunden werden. Die meisten Software wird eine ähnliche Referenz entweder innerhalb des Programms selbst oder auf seiner Website. Nach dem Erstellen der gewünschten Regeln und Codierung des Systems, speichern Sie einfach die Datei. Dann können Sie es in Gebrauch nehmen, indem Sie es auf dem Hauptbildschirm auswählen. 3. Entscheidungsfindung - Es gibt viele Entscheidungen, die zu diesem Zeitpunkt getroffen werden sollen: Welchen Markt möchte ich handeln 13 Welche Zeitspanne soll ich verwenden 13 Welche Preisreihen soll ich verwenden 13 Welche Teilmenge von Aktien soll ich für die Prüfung verwenden Dass die Handelssysteme in vielen Märkten konsequent einen Gewinn erzielen sollten. Durch die Anpassung der Zeit und der Preisreihe zu viel, können Sie die Ergebnisse bemerken und produzieren uncharakteristische Ergebnisse.4. Praxis - Backtesting und Papierhandel sind für die erfolgreiche Entwicklung eines Handelssystems von wesentlicher Bedeutung: Führen Sie mehrere Backtests zu verschiedenen Zeiträumen aus und stellen Sie sicher, dass die Ergebnisse konsistent und zufriedenstellend sind. Papier handeln das System (verwenden Sie imaginäre Geld, aber notieren Sie die Trades und Ergebnisse), und wieder, für eine konsequente Profitabilität zu suchen. Überprüfen Sie sorgfältig auf Fehler im Programm oder unbeabsichtigte Trades. Dies kann auf fehlerhafte Programmierung oder Misserfolg von bestimmten Umständen zurückzuführen sein, die unerwünschte Auswirkungen haben. 5. Wiederholung - Wiederholung ist notwendig. Halten Sie die Arbeit an dem System, bis Sie konsequent einen Gewinn in den meisten Märkten und Bedingungen machen können. Es gibt immer unvorhergesehene Ereignisse, die auftreten, sobald ein System geht. Hier sind einige Faktoren, die oft schiefe Ergebnisse verursachen: Transaktionskosten - Stellen Sie sicher, dass Sie die reale Kommission verwenden. Und einige extra für unzureichende fills (Unterschied zwischen Gebot und fragen Preise) zu berücksichtigen. Mit anderen Worten, vermeiden Sie Schlupf (um zu überprüfen, was das ist und wie es auftritt, siehe den vorherigen Abschnitt dieses Tutorials.) Wachsamkeit - Dont ignorieren verlieren Trades halten ein Auge auf alle Trades. Optimierung - Dont über-Optimierung des Systems. Mit anderen Worten, nicht schneiden das System auf eine sehr spezifische Marktumgebung versuchen, profitabel in so breit wie eine Umgebung wie möglich. Risk - ignorieren oder vergessen Sie nicht das Risiko. Es ist sehr wichtig, Wege zu haben, um Verluste zu begrenzen (sonst als Stop-Verluste bekannt), und Möglichkeiten, um Sperren Gewinne (Gewinne nehmen). 6. Handel - Probieren Sie es aus, aber erwarten Sie unbeabsichtigte Ergebnisse. Achten Sie darauf, nicht automatisierte Handel zu verwenden, bis Sie zuversichtlich sind in der Systemleistung und Konsistenz. Es dauert eine lange Zeit, um ein erfolgreiches Handelssystem zu entwickeln, und bevor Sie es perfekt machen, müssen Sie möglicherweise einige Live-Handelsverluste erleiden, um Störungen zu erkennen: Back-Tests können nicht perfekt lebende Marktbedingungen darstellen, und Papierhandel kann ungenau sein. Wenn Ihr System Geld verliert, gehen Sie zurück zum Reißbrett und sehen, wo es schief gelaufen ist (siehe Schritt 5). Fazit Diese sechs Schritte geben Ihnen einen Überblick über den gesamten Prozess des Bauens eines Handelssystems. Im nächsten Abschnitt werden wir auf dieses Wissen aufbauen und einen eingehenderen Blick auf die Fehlersuche und Modifikation. Build ein Stock Trading System für Ihr Leben Trading für ein Leben ist eine aufregende Idee, und Aktienhandelssysteme können Ihnen das Leben geben Sie wollen. Ein System ist einfach eine Reihe von Regeln, die definiert, wie Sie geben und verlassen die Finanzmärkte, um Geld zu verdienen. Aktienhandelssysteme arbeiten, weil sie Emotionen beseitigen, Konsistenz schaffen und eine Kante in den Märkten erfassen. Die meistenxa0new Händler scheitern und verlieren moneyxa0because nehmen sie Tipps von anderen, sie tun, was populär ist, tun sie, was klingt gut auf Dinner-Partys, sie tun, was von der Industrie stark vermarktet wird, verwenden sie jemand elses Aktienhandel systemxa0- sie tun nicht was ist Profitabel ich glaube, dass Sie erfolgreich sein können, wo so viele andere gescheitert haben, können Sie Geld handeln, xa0YOU kann leben und arbeiten überall in der Welt und Sie können frei von Corporate Sklaverei sein. Bilden Sie Ihr eigenes Handelssystem, das IHRE Ziele erfüllt, passt IHRE Persönlichkeit und gibt Ihnen das Leben, das Sie wünschen, ist die Antwort. Ich kann Ihnen in vier einfachen Schritten zeigen, wie man ein profitables System baut, das für Sie arbeiten wird, unabhängig davon, ob Sie den Börsen-, Futures-Markt oder die Devisenmärkte handeln möchten. Mein Ziel ist es, Ihnen zu helfen, indem Sie Ihr eigenes profitables Aktienhandelssystem aufbauen, das Ihren Zielen entspricht und Ihnen das Leben gibt, das Sie wollen. Die meisten neuen Händler scheitern, weil sie nicht einen Führer haben, um ihnen zu helfen, ein rentables System zu schaffen, das zu ihnen passt. Auf eigene Faust ist dies eine schwierige Reise - Lassen Sie mich Ihnen helfen, ein rentabler Händler schnell zu werden. Vergewissern Sie sich auch, dass Sie auch meine neue Website bei Enlightened Stock Trading ausprobieren, um zu lernen, wie man ein gewinnendes Aktienhandelssystem entwickelt, das zu Ihrer Persönlichkeit, Ihren Zielen und Ihrem passt Idealer Lebensstil Wo fange ich an Es gibt unzählige Kurse, teure Abo-Dienstleistungen und Systeme zum Verkauf in dieser Branche. Keiner von ihnen ist die Antwort isoliert. . Die Antwort ist, Ihr eigenes Handelssystem mit einem Verständnis von sich selbst zu entwerfen. Jemand, der Handeln hat, wird Schwierigkeiten haben, einen langfristigen wöchentlichen Ansatz zu behandeln. Der Patient, die betroffene Person wird es schwierig finden, sich in den und aus den Märkten mehrmals am Tag als Tageshändler zu bewegen. Die Person, die gerne recht hat, wird Schwierigkeiten haben mit Ein Trading-Stil, der falsch ist 80 der Zeit (auch wenn die restlichen 20 macht viel Geld insgesamt) Die Person, die Lernen zu handeln, während in einem Vollzeit-Job wird es am einfachsten finden, ihre Analyse nach Stunden so ihre Arbeit nicht tun Leiden und braucht ein Ende des Tages-Systems, das diese aufnimmt Die Frage, die die meisten neuen Händler fragen: Wie macht man Geldhandel ist die falsche Frage Die Frage, die jeder Händler fragen sollte: Wie kann ich Geld handeln Jeder ist anders, soxa0you cant Geld verdienen, um konsequent einholen von Freunden, nach Newsletter, Abonnieren von Aktienkippdiensten, Lesen von Newslettern, bezahlen für teure Seminare, um geheime Trading-Methoden zu lernen. Warum, weil diese Dinge alle eine Sache gemeinsam haben - sie nicht berücksichtigen SIE Es gibt viele Missverständnisse darüber, wie man konsistente Handelsgewinne zu machen. Die Wahrheit ist, dass Sie finanzielle Freiheit durch den Handel aufbauen können. Ohne gezwungen, die Märkte den ganzen Tag zu beobachten, ohne Tageshandel, ohne Hochfrequenzhandel, ohne Scalping, ohne Innenwissen Trotz aller Hype sind diese wie ein stressiger Job, der dich auf den Computer schiebt. Sie können sowohl Freizeit als auch Geld haben. Mittel - bis langfristige Handelsstrategien können Ihnen dies geben. Mein 4-Schritt-Ansatz für Aktienhandelssysteme Die gute Nachricht ist, dass das beste System nicht komplex oder schwer zu entwerfen ist. Egal, ob Sie die Börse handeln, Futures-Markt, xa0forex oder Optionen oder andere Instrumente, das beste System ist eine, die Sie für sich selbst bauen, damit Sie verstehen, wie und warum es funktioniert. Mein Ansatz, Sie zu führen, ist ein einfacher und transparenter Prozess zum Handelserfolg. Durch diese Website und meine anderen Ressourcen werde ich Ihnen helfen: Schritt 1: Setzen Sie Ihre Trading-System Ziele xa0 Schritt 2: Selectxa0the Aktienhandel Strategie, die am besten passt Sie Schritt 3: Bauen Sie Ihre Aktienhandelssysteme den richtigen Weg Schritt 4: Dokumentieren Sie Ihren Handel Plan Wie Sie diese Schritte durchlaufen, werden Sie auch die Entwicklung von Risikomanagement - und Portfoliomanagementregeln berücksichtigen, um Ihre Ziele zu erreichen. Wählen Sie Ihre Software, um sicherzustellen, dass es an der Aufgabe steht, ein robustes System zu entwickeln. Erhalten Sie die besten Handelsbücher, um Ihr Wissen zu erweitern Eliminieren Handelsfehler Ixa0had kostbare kleine Unterstützung auf meiner eigenen Reise zum Handel Erfolg. Es dauerte mehrere Jahre, um einen Ansatz zu finden, der den Lebensstil gab, den ich wollte. Mein Ziel war die Freiheit durch den Handel, kein Vollzeit-Job. Es gab sehr begrenzte nützliche Unterstützung in der Handelsbranche, und gute Ressourcen waren schwer zu finden. Ich entwickelte allmählich mein Verständnis der Psychologie des Handels und untersuchte zahlreiche Handelsstrategien und investierte Ansätze. Ixa0read unzählige Bücher über Handelssysteme, entwarf und testete meine eigenen Systeme, lernte die Software und fand meinen Weg. Viele Leute scheitern, weil dies ein schwieriger Weg ist, aber das Ergebnis ist die Reise wert. Ich hoffe, dass das Teilen meiner Reise bringt Sie Erfolg und Verknüpfungen Ihre Lernkurve zum Handel profitabel. Build ein Stock Trading System mit Machine Learning Ich habe viel Zeit vor kurzem auf, wie zu bauen und testen Sie eine Aktienhandelsstrategie mit Machine Learning. Am Ende meiner Forschung finde ich eine ganz unmögliche Aufgabe, aber es macht viel Spaß dabei und manchmal kann es sogar rentabel sein. Ich werde die folgenden Themen in diesem Blog-Artikel zu behandeln: 1) Arten von Marktanalyse Ich werde mit einigen wichtigen Begriffe und Methoden der Analyse im Umgang mit Finanzmärkten beginnen. Es gibt zahlreiche finanzielle Begriffe wie Aktien, Anleihen, Fonds, ETFs, Währungen und so weiter. Aber ich werde mich auf Aktien und die Börse konzentrieren. Wenn Sie Aktien und Aktien kaufen, haben Sie einen Teil der Gesellschaft haben das Recht, bei den Hauptversammlungen zu stimmen. Jede Aktie ist eine kleine Beteiligung an einer Firma und Sie können eine große Anzahl von Losen kaufen. Der Kurs einer Aktie wird voraussichtlich steigen, wenn die Zukunftsaussichten für das Unternehmen steigen und sinken, wenn diese Aussichten sinken. Investoren fallen in der Regel in eines von zwei Lagern. Das erste Lager glaubt an fundamentale Analyse. Grundlegende Analysten gießen durch Unternehmen Finanzen auf der Suche nach Informationen, die darauf hinweisen, dass irgendwie der Markt unterschätzt die Aktien eines Unternehmens. Diese Investoren betrachten verschiedene Faktoren wie Umsatz, Ergebnis und Cashflow. Sie untersuchen auch zahlreiche Verhältnisse in Bezug auf diese Werte. Viele Male geht es darum, zu betrachten, wie ein company8217s Finanzen mit anderen8217s vergleichen. Das zweite Camp der Investoren sind die technischen Analysten. Technische Analysten glauben, dass der Aktienkurs einer Aktie bereits alle verfügbaren öffentlichen Informationen widerspiegelt, und dass das Durchschauen der Grundlagen weitgehend eine Verschwendung von Zeit ist. Sie glauben, dass man mit Blick auf die historische Preisspanne Chartsone sehen kann, wo die Preise wahrscheinlich steigen, fallen oder stagnieren. Im Allgemeinen fühlen sie, dass diese Charts Hinweise auf Investorenpsychologie offenbaren. Was beide Gruppen gemeinsam haben, ist ein zugrundeliegender Glaube, dass die richtige Analyse zu Gewinnen führen kann. Ist dies wahr, aber 2) Forschung der Börse auf der Grundlage der Efficient-Market Hypothesis (EMH), einer der einflussreichsten Theorie der Börse in den vergangenen 50 Jahren, gibt es keine Hoffnung, Geld zu verdienen, indem sie Muster ausnutzt An der Börse. Glücklicherweise, während der Markt in einer weitgehend effizienten Weise im Ganzen arbeitet, wurden deutliche Taschen der Ineffizienz aufgedeckt. Die meisten von ihnen neigen dazu, kurzlebig zu sein, aber einige bestehen weiter. Einer der am meisten pervasiveeven nach dem 8216vater von EMH8217, ist Eugene Fama die Outperformance von Impulsstrategien. Also, was genau ist eine Impulsstrategie Es gibt eine Reihe von Variationen über das Thema, aber die Grundidee ist, dass Aktien von den höchsten zu den niedrigsten nach ihrer Rückkehr über einige vorherige Periode eingestuft werden. Die Top-Performer werden für einen gewissen Zeitraum gekauft und gehalten, und dann wird der Prozess nach einer festen Halteperiode wiederholt. Eine typische, langjährige Dynamikstrategie kann es sein, die Top 25 in den SampP 500 im vergangenen Jahr zu kaufen, sie für ein Jahr zu halten und dann den Prozess zu wiederholen. Das klingt wie eine absurde einfache Strategie und es ist. Allerdings hat es immer wieder Ergebnisse, die Erwartung widersprechen. Warum, wie Sie sich vorstellen können, hat eine Menge Forschung diesen Effekt untersucht, und die Hypothese ist, dass es etwas inhärentes, systemisch voreingenommen darüber, wie Menschen mit neuen Informationen umgehen. Die Forschung deutet darauf hin, dass sie kurzfristig auf Neuigkeiten reagieren und dann langfristig über Neuigkeiten reagieren. Wird dieser Effekt weggeworfen werden, da mehr Händler davon erfahren und stapeln. In den letzten Jahren gab es einige Beweise dafür, aber es bleibt unklar. Unabhängig davon war die Wirkung real und beharrte viel länger als derzeit von der effizienten Markthypothese berücksichtigt werden kann. So gibt es Hoffnung. Mit diesem leichten Hoffnungsschimmer geht es nun weiter, um zu sehen, wie wir unsere eigenen Anomalien finden können. 3) Entwickeln Sie ein Stock Trading System Ich werde anfangen, ein Aktienhandelssystem in diesem Abschnitt zu entwickeln. Ich benutze Python mit Machine Learning und die folgenden wissenschaftlichen Python-Pakete. Wenn du neu bei Machine Learning und Python bist, empfehle ich, das Buch Python Machine Learning zu lesen. Pandas 8211 Python-Datenanalyse-Bibliothek, einschließlich Strukturen wie Dataframes. Dies gibt uns Zugriff auf mehrere Quellen von Bestandsdaten, darunter Yahoo und Google. Scikit-learn 8211 die maschinelle Lernalgorithmen, die für Datenanalyse und Data Mining-Aufgaben verwendet werden Bitte don8217t tun dumme Sachen mit den Informationen in diesem Abschnitt. Riskierst du kein Geld, das du dir verlieren kannst. Wenn du dich entscheidest, irgendetwas zu benutzen, das du hier gelernt hast, um zu handeln, bist du allein. Dies sollte nicht als Anlageberatung jeglicher Art angesehen werden, und ich übernehme keine Verantwortung für Ihre Handlungen. Zuerst muss ich das datareader Paket installieren. Dann gehen wir voran eine Menge unserer Importe, wie folgt: Jetzt bekommen wir unsere Daten für die SPY ETF. Dieses Instrument repräsentiert die Bestände des SampP 500. We8217Llull Daten von Anfang 2010 bis Anfang März 2016: Der vorhergehende Code erzeugt die folgende Ausgabe: Wir können nun unsere Daten abgeben. We8217ll wählt nur den Schlusskurs wie folgt aus: Der Code erzeugt folgende Ausgabe: In der vorstehenden Abbildung sehen wir die Preisliste des täglichen Schlusskurses des SampP 500 für den von uns ausgewählten Zeitraum. Let8217s laufen ein bisschen Analyse, um zu sehen, was die Renditen über diesen Zeitraum hätte sein können, wenn wir in diese ETF investiert hätten. Let8217s zieht Daten für die erste offene erste: Der vorhergehende Code erzeugt die folgende Ausgabe: Als nächstes wird let8217s den Schlusskurs am letzten Tag des Zeitraums erhalten: Dies führt zu der folgenden Ausgabe: Und schließlich, lass8217s sehen die Änderung über die volle Periode: Hier ist die Ausgabe: So scheint es, dass ein Kauf von 100 Aktien zu Beginn der Periode uns etwa 11.237 gekostet hätte und am Ende der Periode die gleichen 100 Aktien mit rund 19.811 geschätzt hätten. Diese Transaktion hätte uns einen Gewinn von über 76 über den Zeitraum gegeben. Gar nicht so schlecht. Let8217s jetzt einen Blick auf die Rückkehr über den gleichen Zeitraum für nur die Intraday Gewinne. Das geht davon aus, dass wir die Aktie am Tag des Tages kaufen und es am Ende des gleichen Tages verkaufen: Das gibt uns den Wechsel von der offenen bis zum nahen jeden Tag. Let8217s werfen Sie einen Blick auf diesen: Der vorhergehende Code erzeugt die folgende Ausgabe: Let8217s summieren nun diese Änderungen über den Zeitraum: Der Code erzeugt die folgende Ausgabe: So, wie Sie sehen können, sind wir von einem Gewinn von über 85 Punkten zu einem gegangen Von knapp über 41 punkten. Autsch Mehr als die Hälfte des Marktes8217s Gewinne kam aus Halten über Nacht während der Periode. Die übertreffenden Renditen waren besser als die Intraday-Renditen, aber wie wäre es mit der Volatilität Die Renditen werden immer risikoadjustiert beurteilt, also las8217s werfen einen Blick darauf, wie sich die Übernachtungen im Vergleich zu den Intraday-Geschäften auf Grund ihrer Standardabweichung verhalten. Wir können NumPy verwenden, um dies für uns zu berechnen, wie folgt: Der vorhergehende Code erzeugt die folgende Ausgabe: Jetzt erhalten let8217s die Standardabweichung. Der Code generiert die folgende Ausgabe: So hatte unser Overnight-Handel auch im Vergleich zum Intraday-Handel eine geringere Volatilität. Allerdings ist nicht alle Volatilität gleich. Let8217s vergleichen die mittlere Veränderung an Abwärtentagen gegenüber Umgekehrten Tagen für beide Strategien. Zuerst schauen wir mal auf die Hintertage: Der vorhergehende Code erzeugt die folgende Ausgabe: Jetzt sehen wir uns die Nachttage an: Der vorhergehende Code erzeugt die folgende Ausgabe: Wieder sehen wir, dass der durchschnittliche Abwärtsbewegungen für unsere übertriebene Handelsstrategie geringer ist Gegenüber unserer Intraday-Handelsstrategie. Bisher haben wir alles in punkto punktiert betrachtet, aber jetzt gehen wir auf die Rückkehr. Dies wird dazu beitragen, unsere Gewinne und Verluste in einen realistischeren Kontext zu bringen. Wenn wir mit unseren drei Strategien fortsetzen, konstruieren wir für jedes Szenario eine Pandas-Serie: tägliche Renditen (nah an nahen Wechsel), Intraday-Renditen (offen zu schließen) und Übernacht-Renditen (nahe an offen) wie folgt: Was wir tun, ist die Pandas. shift () Methode, um jede Serie von der vorherigen day8217s Serie zu subtrahieren. Zum Beispiel, für die erste Serie in den vorangegangenen Code, subtrahierten wir den Abschluss eines Tages vor dem aktuellen Schlusskurs für jeden Tag. Es wird eine neue Serie erzeugt, die aufgrund der Differenzierung einen weniger Datenpunkt enthält. Wenn du die neue Serie ausdruckst, kannst du folgendes sehen: Der vorhergehende Code erzeugt die folgende Ausgabe: Let8217s werfen nun einen Blick auf die Statistik für alle drei Strategien. We8217ll erstellen Sie eine Funktion, die in jeder Reihe von Renditen zu nehmen, und wird ausdrucken die Zusammenfassung Ergebnisse. Wir werden Statistiken für jeden unserer gewinnenden, verlierenden und breakingven Trades bekommen, und so etwas wie das Sharpe-Verhältnis. Ich habe früher gesagt, dass die Renditen risikoadjustiert beurteilt werden. Das ist genau das, was das Sharpe-Verhältnis uns bietet. Es ist eine Methode, um die Rendite zu vergleichen, indem sie die Volatilität dieser Renditen berücksichtigt. Hier verwenden wir das Sharpe-Verhältnis mit einer Anpassung, um das Verhältnis zu annualisieren: Let8217s laufen nun jede Strategie, um die Stats zu sehen. Wir beginnen mit der Buy-and-Hold-Strategie (tägliche Renditen) und gehen dann zu den beiden anderen wie folgt: Der vorhergehende Code erzeugt die folgende Ausgabe: Der vorhergehende Code erzeugt die folgende Ausgabe: Der vorhergehende Code erzeugt die folgende Ausgabe: Wie du kannst Sehen, die Buy-and-Hold-Strategie hat die höchste mittlere Rendite sowie die höchste Standardabweichung der drei. Dies hat auch die größte tägliche Drawdown (Verlust). Beachten Sie auch, dass, obwohl die Overnight-only-Strategie hat fast die gleiche mittlere Rendite wie die Intraday-Strategie, hat es deutlich weniger Volatilität. Dies wiederum gibt ihm ein Sharpe-Verhältnis, das höher ist als die Intraday-Strategie. An diesem Punkt haben wir eine solide Grundlinie, um unsere zukünftigen Strategien zu vergleichen. Jetzt werde ich Ihnen von einer Strategie erzählen, die alle drei dieser Strategien aus dem Wasser weht. Let8217s werfen einen Blick auf die Statistiken für diese neue Mystery-Strategie: Mit dieser Strategie habe ich fast die Sharpe-Ratio über Kauf und Halten verdreifacht, die Volatilität erheblich gesenkt, den maximalen Gewinn erhöht und den maximalen Verlust um fast die Hälfte reduziert. Wie habe ich diese Markttrunktionstrategie entwickelt. Warten Sie auf it8230. Ich tat dies, indem ich 1.000 Versuche von zufälligen über Nacht Signalen (entweder zu kaufen oder nicht) für den Test Zeitraum und dann ausgewählt die am besten ausführen. Das gab mir die Strategie mit den besten 1.000 zufälligen Signalen. Dies ist offensichtlich nicht der Weg, um den Markt zu schlagen. Also, warum habe ich das getan, habe ich es getan, um zu zeigen, dass, wenn Sie genug Strategien testen, die Tatsache ist, dass nur durch zufällige Chance, werden Sie über ein paar Strategien, die scheinen, um erstaunlich zu kommen. Dies wird als Data Mining-Irrtum bezeichnet. Und es ist ein echtes Risiko in der Handelsstrategieentwicklung. Deshalb ist es so wichtig, dass eine Strategie in einem realen Verhaltensverhalten verankert ist, das systematisch aufgrund einer realen Einschränkung vorgespannt ist. Wenn Sie eine Kante im Handel wollen, Sie don8217t Handel die Märkte, handeln Sie mit den Menschen, die Märkte handeln. Unsere Kante kommt von nachdenklich zu verstehen, wie Menschen auf bestimmte Situationen reagieren könnten. Verlängerung unserer Analyseperiode Let8217s verlängern nun unsere Analyse. Zuerst werden die Daten für den Index ab dem Jahr 2000 gezogen: Let8217s sehen uns jetzt unser Diagramm an: Der vorhergehende Code erzeugt folgende Ausgabe: Hier sehen wir die Preisaktion für den SPY von Anfang 2000 bis 1. März, 2016. Es gab sicherlich eine Menge Bewegung in dieser Zeit, da der Markt sowohl sehr positive als auch sehr negative Regime erlebt hat. Let8217s erhalten unsere Grundlinie für unsere neue erweiterte Periode für unsere drei Basisstrategien. Zuerst richten wir unsere Variablen für jeden von ihnen ein, wie folgt: Nun sehen wir, wie die Punktsummen für jeden von ihnen sind. Zuerst in der Nähe: Der vorhergehende Code erzeugt die folgende Ausgabe: Dann öffnet man zu schließen: Der vorhergehende Code erzeugt die folgende Ausgabe: Schließlich schließt der folgende Code: Der vorhergehende Code erzeugt die folgende Ausgabe: Nun sehen Sie bitte die Statistik für jeder von ihnen. Zuerst erhalten wir die Statistik für nahe zu schließen: Der vorhergehende Code erzeugt die folgende Ausgabe: Als nächstes holen wir die intra-day return statistics ab: Der vorhergehende Code erzeugt die folgende Ausgabe: Schließlich erhalten wir die overnight return statistics: Der vorhergehende code Erzeugt die folgende Ausgabe: Wir können sehen, dass die Unterschiede zwischen den drei noch länger ausgeprägter sind. Wenn wir diese SampP ETF während des Tages in den vergangenen 16 Jahren nur gehalten hätten, hätten wir Geld verloren. Wenn wir die ETF nur über Nacht hielten, hätten wir unsere Renditen um mehr als 50 verbessert. Offensichtlich geht das keine Handelskosten und keine Steuern zusammen mit perfekten Fills, aber egal, das ist ein bemerkenswerter Befund. 4) Bauen und bewerten Sie das maschinelle Lernmodell Ich baue die erste Handelsstrategie mit Hilfe einer Unterstützungsvektorregression und die 2. Handelsstrategie mit dynamischer Zeitverzerrung. Bauen Sie unser Modell mit einer Unterstützung Vektor Regression Nun, da wir eine Grundlinie zu vergleichen haben, let8217s bauen unser erstes Regressionsmodell. We8217re gehen mit einem sehr grundlegenden Modell mit nur die stock8217s vorherigen Schlusswerte zu prognostizieren den nächsten Tag8217s schließen zu starten. Wir werden dieses Modell mit Hilfe einer Unterstützungsvektorregression aufbauen. Mit diesem, let8217s eingerichtet unser Modell. Der erste Schritt besteht darin, ein DataFrame-Objekt einzurichten, das den Preisverlauf für jeden Tag enthält. We8217re gehen, um die Vergangenheit 20 schließt in unserem Modell, wie folgt: Der vorhergehende Code generiert die folgende Ausgabe: Dieser Code gibt uns jeden day8217s Schlusskurs zusammen mit dem vorherigen 20 alle auf der gleichen Zeile. Dies wird die Basis des X-Arrays bilden, dass wir unser Modell füttern werden. Doch bevor wir fertig sind, gibt es ein paar zusätzliche Schritte. Zuerst werden wir unsere Spalten umgekehrt, so dass die Zeit von links nach rechts verläuft, wie folgt: Der vorhergehende Code erzeugt die folgende Ausgabe: Jetzt lassen Sie uns unsere Support-Vektor-Maschine importieren und unsere Trainings - und Testmatrizen und unsere Zielvektoren für jeden setzen: Wir hatten Nur ein bisschen über 4.000 Datenpunkte zu arbeiten, und wählen Sie die letzten 1.000 zum Testen verwenden. Let8217s passen nun zu unserem Modell und verwenden es, um out-of-sample Daten wie folgt auszuprobieren: Nun, da wir unsere Vorhersagen haben, vergleicht let8217s sie mit unseren tatsächlichen Daten: Der vorhergehende Code erzeugt die folgende Ausgabe: Auswertung unserer model8217s Leistung Let8217s jetzt Schauen Sie sich die Leistung unseres Modells an. We8217re gehen, um den nächsten Tag zu kaufen8217s öffnen, wenn das Schließen vorhergesagt wird, höher zu sein als das offene. We8217ll dann verkaufen am Ende der gleichen Tag. Als nächstes fügen wir ein paar zusätzliche Datenpunkte zu unserem DataFrame-Objekt hinzu, um unsere Ergebnisse wie folgt zu berechnen: Der vorhergehende Code erzeugt die folgende Ausgabe: Hier fügen wir den folgenden Code hinzu, um unser Signal und unseren Gewinn und Verlust für das Signal zu erhalten: Der vorhergehende Code Generiert die folgende Ausgabe: Let8217s sehen nun, ob wir den nächsten day8217s Preis mit dem Preisverlauf erfolgreich voraussagen konnten. Wir beginnen, indem wir die gewonnenen Punkte wie folgt berechnen: Der vorhergehende Code erzeugt die folgende Ausgabe: Ouch Nicht so gut zu schauen. Aber was ist mit der Zeit, die wir getestet haben Wir haben es niemals isoliert ausgewertet. Wie viele Punkte würde unsere grundlegende Intraday-Strategie in diesen letzten 1000 Tagen generiert haben: Der vorhergehende Code erzeugt die folgende Ausgabe: So sieht es so aus, als ob unsere Strategie nicht mit der grundlegenden Intraday-Kaufstrategie übereinstimmt. Let8217s bekommen die volle Statistik, um die beiden zu vergleichen. Zuerst ist die grundlegende Intraday-Strategie für den Zeitraum wie folgt: Der vorhergehende Code erzeugt die folgende Ausgabe: Nun sind die Ergebnisse für unser Modell wie folgt: Der vorhergehende Code erzeugt die folgende Ausgabe: Das sieht schlecht aus. Was wäre, wenn wir unsere Handelsstrategie geändert hätten. Was wäre, wenn wir nur Trades einnahmen, von denen erwartet wurde, dass sie um einen Punkt oder mehr ansteigen würden, anstatt nur einen größeren Betrag zu haben. Würde dies helfen Let8217s probieren es aus. Wir führen unsere Strategie mit einem modifizierten Signal wie folgt aus: Der vorhergehende Code erzeugt die folgende Ausgabe: Jetzt sind die Stats wie folgt: Der vorhergehende Code erzeugt die folgende Ausgabe: Wir sind von schlechter zu schlechter gegangen. Es scheint, dass, wenn die Vergangenheit Preis Geschichte schlägt gute Dinge zu kommen, können Sie genau das Gegenteil erwarten. Wir scheinen einen konträren Indikator mit unserem Modell entwickelt zu haben. Was, wenn wir das erforschen, sehen wir, wie unsere Gewinne aussehen würden, wenn wir unser Modell umdrehen würden, so dass wir, wenn wir starke Gewinne vorhersagen, den Handel planen, aber ansonsten tun wir wie folgt: Der vorhergehende Code erzeugt die folgende Ausgabe: Let8217s erhalten unsere Stats : Dies führt zu folgendem Ausgang: Es sieht so aus, als hätten wir hier einen konträren Indikator. Wenn unser Modell einen starken Wachstum des nächsten Tages prognostiziert, unterschreitet der Markt (zumindest für unsere Testperiode) deutlich. Wäre das in den meisten Szenarien wahr. Nicht wahrscheinlich. Märkte neigen dazu, von Regimen der mittleren Reversion zu Regimes der Trend Persistenz zu kippen. Let8217s re-run unser Modell für einen anderen Zeitraum, um es weiter zu testen: Der vorhergehende Code erzeugt die folgende Ausgabe: So können wir sehen, dass unser neues Modell und Testzeitraum über 33 Punkte zurückgegeben hat. Let8217s vergleichen dies mit der intraday-Strategie für den gleichen Zeitraum: Das ergibt die folgende Ausgabe: So scheint es, dass unser konträres Modell auch in unserer neuen Testperiode deutlich übertraf. An dieser Stelle gibt es eine Reihe von Erweiterungen, die wir zu diesem Modell machen konnten. Wir haben uns sogar mit technischen Indikatoren oder den fundamentalen Daten in unserem Modell berührt, und wir haben unsere Trades auf einen Tag beschränkt. All dies könnte gezwickt und erweitert werden. Doch an dieser Stelle möchte ich ein weiteres Modell vorstellen, das einen völlig anderen Algorithmus verwendet. Dieser Algorithmus wird als dynamische Zeitverzerrung bezeichnet. Was es tut, gibt Ihnen eine Metrik, die die Ähnlichkeit zwischen zwei Zeitreihen darstellt. Modellierung mit dynamischer Zeitverzerrung Um loszulegen, müssen wir die Fastdtw-Bibliothek von der Kommandozeile mit Pip installieren, um schnell zu installieren. Sobald dies geschehen ist, importieren wir die zusätzlichen Bibliotheken, die wir benötigen, wie folgt: Als nächstes schaffen wir die Funktion, die in zwei Serien übernommen wird und den Abstand zwischen ihnen zurückgibt: Jetzt haben wir unsere 16-jährigen Zeitreihendaten in deutlich fünf aufgeteilt Tagesperioden. Wir paaren jede Periode mit einem zusätzlichen Punkt zusammen. Dies wird dazu beitragen, unsere x - und y-Daten wie folgt zu erstellen: Wir können einen Blick auf unsere erste Serie werfen, um eine Vorstellung davon zu bekommen, wie die Daten aussehen: Der vorhergehende Code erzeugt die folgende Ausgabe: Jetzt haben wir jede Serie Kann sie durch unseren Algorithmus laufen lassen, um die Distanzmetrik für jede Serie gegen jede andere Serie zu erhalten: Sobald wir das haben, können wir sie in ein DataFrame-Objekt stellen. We8217ll Drop-Serie, die null Abstand haben, da sie die gleiche Serie darstellen. We8217ll auch nach dem Datum der Serie und schau nur auf die, wo die erste Serie ist chronologisch vor dem zweiten: Schließlich, wir8217ll beschränken unsere Trades, wo die Distanz ist weniger als 1 und die erste Serie hat eine positive Rendite: Die vorherigen Code generiert die folgende Ausgabe: Let8217s sehen, was eines unserer Top-Muster aussieht, wenn geplottet: Der vorhergehende Code generiert die folgende Ausgabe: Nun, wir8217ll zeichnen die zweite: Der vorhergehende Code wird die folgende Ausgabe erzeugen: Wie wir sehen können, Kurven sind fast identisch, was genau das ist, was wir wollen. Wir werden versuchen, alle Kurven zu finden, die positive Nächte haben. Dann, sobald wir eine Kurve haben, die einer dieser gewinnbringenden Kurven sehr ähnlich ist, kauft man es in Erwartung eines weiteren Gewinns. Let8217s konstruieren nun eine Funktion zur Bewertung unserer Trades. Wir kaufen die ähnlichen Kurven, wenn sie nicht ein positives Ergebnis zurückgeben. Wenn dies geschieht, beseitigen wir sie: Jetzt haben wir alle Rücksendungen aus unseren Trades, die in der Rückmeldung gespeichert sind, let8217s wertet die Ergebnisse aus: Der vorhergehende Code erzeugt die folgende Ausgabe: Diese Ergebnisse sind bei weitem das Beste, was wir gesehen haben. Das Winloss-Verhältnis und der Mittelwert liegen weit über unseren anderen Modellen. Es scheint, dass wir auf etwas mit diesem neuen Modell vorgehen können, besonders im Vergleich zu den anderen, die wir gesehen haben. An diesem Punkt, um unser Modell weiter zu vertiefen, sollten wir seine Robustheit erforschen, indem wir andere Zeiträume für unsere Spiele untersuchen. Gibt es über die vier Tage hinaus, um das Modell zu verbessern. Sollten wir immer die Muster ausschließen, die einen Verlust erzeugen, gibt es viele weitere Fragen, die wir an dieser Stelle erforschen könnten, aber ich werde es als eine Übung für den Leser überlassen. Wenn Sie diese Techniken nutzen, wissen Sie, dass wir gerade die Oberfläche gekratzt haben, und dass weit mehr Tests über zusätzliche Fenster erforderlich sind, um diese Modelle ordnungsgemäß zu testen. Erstellen eines Handelscomputers. Kd2013 Jun 3, 2013, 3:31 AM Ich überlege mit einem benutzerdefinierten System gebaut. Mein Computer ist gestorben und ich weiß, dass beim Bauen Sie in der Regel ein besseres Angebot als Kauf eines fertigen Modells. Beim Aufbau eines Computers, was sind die wichtigsten Merkmale, die einen Unterschied machen, wenn der Handel Aktien. Welche Arten von Technologie die meisten Online-Broker-Netzwerke, Systemsplatforms verwenden Ich lese irgendwo, dass thinkorswim hat maximale Grenzen für RAM-Nutzung. Ich möchte nicht Hunderte auf Features verbringen, die wirklich nicht so viel von einem Unterschied machen. Grundsätzlich einige Anleitungen und Meinungen darüber, was wirklich notwendig ist und was wird einen drastischen Unterschied in der Ausführung Geschwindigkeit, Muster Anerkennung etc. im Allgemeinen wo ist Geschwindigkeit und Speicher wirklich beginnen, sich zu unterscheiden, wenn es um Standards Upgrades geht, wenn Tag Handel diese sind allgemeine Fragen, die ich Ich versuche, irgendeine Hilfe zu sortieren, wird geschätzt 1. CPU (Prozessor) A. Does Multi-Core-Verarbeitung wirklich beschleunigen die Ergebnisse Die meisten Prozessoren jetzt ein Tag haben irgendwo zwischen 2-8 Kerne, die 2 und 4 Kern cpus scheinen ziemlich beliebt. Also einige Prozessoren haben die gleiche GHz, aber mehrere Kerne ist, dass etwas signifikant, die Aufgaben sind über mehrere Kerne verteilt, was bedeutet, dass die höheren Kernprozessor in Theorie sollte viel schneller bei Abschluss der gleichen Aufgabe B. Haben Unterschiede in GHz-Geschwindigkeiten spürbar Verbesserung der Leistung 2. Ghz vs 3ghz vs 4ghz usw. die meisten Prozessoren fallen in der Mitte 3 bis 4 Bereich, wird 3,5 Ghz wirklich alles, was anders als 4.0ghz 2.Memory (ram). Ich weiß, RAM ist im Grunde aktuelle TaskMultitasking memory. So schnell zuverlässige Speicher sollte etwas zu investieren und die Preisunterschiede arent wirklich alle, die signifikant. Ramm Geschwindigkeit machen einen riesigen Unterschied DDR3-1600 vs DDR3-2800 Ich weiß, die Menge der nutzbaren RAM ist entscheidend, aber wie viel ist wirklich benötigt, 4gb, 6gb, 8gb, 16gb Ich plane nur auf das Betriebssystem laufen, die Plattform, Internet, Antivirus - keine Hintergrundprogramme. Ist es wahrscheinlich mit nur laufenden Charts und eine Broker Online-Plattform, die ich werde ich jemals eine Wand bei der Verwendung von 4-8gb von ram 3. Speicher ssd-Solid State Drive ist schneller, Ive lesen seine für sicher wert das Upgrade vs typisch sata hart Laufwerk - was ist mit Hybirds (msata - ich denke, msata ist Hybrid zwischen den beiden).SSDs sind teuer, wenn ich glücklich bin, kann ich eine billige SSD für den gleichen Preis wie eine Standard 1T 7200rpm Festplatte abholen. Im Denken 120gb ssd, es sei denn, ein 250gb geht auf Verkauf 4.graphic-video card (s) - muss in der Lage sein, mehrere Monitore laufen. Aber die Qualität des Bildes von Diagrammen ist wirklich nicht so hohe Priorität, Geschwindigkeit mehr als Knusprigkeit oder Bildqualität, also denke ich versuchen, den höchsten Video-RAM zu bekommen und etwas Kreuzfeuer zu bekommen oder sli fähig, wenn Im mit mehreren Karten. 5.psu Stromversorgung und CPU-Kühler-Grundsätzlich hängt davon ab, was Ihr Watt und Nutzung sind, offensichtlich sollte ich für Qualität gehen, aber nicht overkill 6.same geht für Motherboard und Fall gehen für Qualität, aber die Besonderheiten von dem, was ich brauche auf basieren All das oben und wirklich was das System braucht - für mich der schwierigste Teil wird die Auswahl der Spezifikationen der CPU-Prozessor und Grafikkarte, die ich will. Ich brauche minium ein System, das 3 Monitore laufen kann und möglicherweise auf Preisdifferenz basiert etwas, das bis zu 6 laufen kann. Ich denke, die meisten modernen Prozessoren werden die Arbeit gut gemacht, und eine anständige Grafik Grafikkarte (n) mit notwendigen Adaptern als Solange sie zusammenarbeiten und meinen Desktop erweitern und nicht lagern. Also ich denke intel i3 serie cpu, vielleicht i5. Geben Sie oder nehmen Sie die i3-Serie sind etwa die Hälfte der Kosten für die i5, ist i5 und i7 2-4x schneller, weil der Preis geben oder nehmen 2x mehr. Wenn Im nicht Kopfhaut Handel mit 10 Tausenden von Aktien und riesige Lose wird ein modernisierter Prozessor vorteilhaft sein und die Investition wert Ich weiß, ich kann eine viel bessere AMD für ähnliche Preise, aber die Computer, die ich mit AMD-Prozessoren wirklich scheinen, nach Zeit zu verlangsamen Und Im ziemlich sicher, dass es mehr mit der Prozessor-Haltbarkeit zu tun hatte als der RAM und Festplatte meiner früheren Computer. Meine Intelcomputer dauerten länger, sie wurden auch langsamer mit dem Alter nicht so spürbar. Im Budgetierung etwa 100-150 pro größeren Teil einige werden unter 100 und wird sich für die etwas teureren Teile. Meine Hoffnung ist es, ein anständiges System für 500-700 Im nicht sicher, wie realistisch, dass Ziel ist, aber ich fühle mich der Computer wird wahrscheinlich besser als das, was ich in dieser Preisspanne kaufen könnte - im Grunde der Build vs Kauf Preisdifferenz wäre meist Die Anwesenheit von Grafikkarte (n), ssd Speicher und ram mehr undein schneller ram. Was Sie für 500-700 kaufen wird wahrscheinlich nicht in der Lage sein, mehrere Monitore anzeigen - möglicherweise nicht in der Lage, RAM Gedächtnis zu erweitern, wird wahrscheinlich etwas langsamer ram sowie langsamer Speicher-Festplatte 1 Antwort haben Letzte Antwort 3. Juni 2013 Mehr über Bauhandelscomputer

No comments:

Post a Comment