Friday, October 7, 2016

Automated Trading Strategies Mit C # Und Ninjatrader 7 - Teil 3 - Backtesting Der Strategie

Willkommen in Teil 3 in dieser kurzen Einführung in Automated Trading-Strategie-Entwicklung mit C # und Ninjatrader! In Teil 1 haben wir über Automated Trading Grundlagen, wie man NainjaTrader installiert werden, und die automatische Erzeugung eines Strategie-Klasse. In Teil 2 in die Strategie Code tauchten wir durch die Implementierung eines grundlegenden Golden Cross-Strategie im C # - Code, und nun werden wir zeigen, wie man Backtest diese Strategie anhand historischer Aktiendaten, um zu sehen, wie es wäre durchgeführt haben. Bevor wir anfangen, würde Ich mag darauf hinweisen, dass sehr wichtiger Teil des Backtesting, vorne Tests, oder Live-Handelsausführung wird immer gutes Instrument, um Daten in Ihre Strategien zu nutzen. Mit der kostenlosen Version von Ninjatrader bietet Kinetick eine kostenlose Daten-Feed mit Ende des Tages Daten - was bedeutet, dass wir täglich Bars kostenlos Backtest. Sie können bestätigen, dass Sie die Kinetic Ende des Tages Futter in der Ninjatrader Menü unten verbunden sind: Sobald wir bestätigt, dass wir in unseren Datenanbieter verbunden sind, lassen Sie uns beginnen, eine neue Strategie Test-Session, indem Sie die Datei = & gt; New = & gt; Menüpunkt Strategy Analyzer: Dies wird eine neue Strategie Analysefenster, das als ein Sandkasten für unsere Backtesting-Funktion wird geöffnet. In diesem offenen Fenster, sehen Sie eine Baumansicht auf der linken Seite mit ein paar Standard-Einträge zu sehen. Für unser erstes Backtesting endeaver, versuchen wir unser Backtesting Crossover-Strategie mit dem Apple-Daten für den letzten 2 Jahren. Wie Sie vielleicht wissen, ist Apple in der Nasdaq unter dem Symbol AAPL gehandelt. Erweitern Sie den NASDAQ 100 Knoten, wählen Sie AAPL der rechten Maustaste, und wählen Sie "Backtest", wie unten dargestellt: Wenn Sie etwas besonders adventerous, könnten Sie sogar testen Sie die Strategie gegen die gesamte NASDAQ-100-Liste - auch wenn die Ergebnisse sich ein wenig schwieriger zu interpretieren. Wenn Sie diese Option wählen, wird ein fixierbares Fenster von der rechten Seite des Bildschirms angezeigt. Pin dieses auf dem Bildschirm mit dem Pin-Symbol in der oberen rechten, und stellen Sie die Parameter wie unten gezeigt: Hier sind einige Highlights der Parameter, die wir hier einstellen: MyInput0: Dies ist das öffentliche Eigentum, das wir in Teil 1 dieser Serie erwähnt. Obwohl dieser Wert überhaupt nicht auf unsere Strategie, sollte dies zu veranschaulichen, wie ist es möglich, Variablen zur Verfügung, um die Backtester zu machen, so können Sie versuchen, mehrere Werte. Data Series: Hier findest wir unser Bar Größe - und da wir mit freien End-of-Day-Daten, werden wir dies Tag, 1 gesetzt. Zeitrahmen: Dies legt die Dauer, die wir werden Backtesting. Ich werde zurück an den Anfang des Jahres 2011 gehen Beenden in der Nähe: Achten Sie darauf, diese auf "false" gesetzt, sonst werden die Aufträge, die wir in nicht mehr als eine Nacht gehalten werden soll. Fügen Comission: In unserem Beispiel werden wir nicht einschließlich der Provision, die aufgeladen würde, um die Trades durchzuführen. Das ist eine etwas fortgeschrittenere Thema, das in einem zukünftigen Artikel abgedeckt werden. Nachdem diese Werte eingestellt worden sind, gehen Sie vor und klicken Sie auf "Run Backtest", die Dinge Auftakt. Nach einer kurzen Zeit, sollten Sie sehen, Ergebnisse, die in der Registerkarte Zusammenfassung im mittleren Bereich! Wie Sie sehen können, war unsere Strategie profitablen Gesamt während dieser Zeit (siehe "Total Net Profit"), die Ausführung 10 Geschäfte, von denen 5 profitabel waren! Nehmen Sie diesen Erfolg mit einem Körnchen Salz obwohl, wie es viele Faktoren, die berücksichtigt werden sollten bei der Beurteilung, ob eine Strategie erfolgreich sein wird, wenn er gegen Live-Daten ausführen (Nachhinein ist 20/20, oder?). Für weitere Informationen zu den Daten, die in dieser Tabelle angezeigt wird, lesen Sie diesen Ninjatrader Seite für Dokumentation. Klick auf die Registerkarte Grafik, können wir eine visuelle represnetation wie Trades der Strategie im Laufe der Zeit durchgeführt, zu sehen: Und indem Sie auf "Trades" können wir die Details der einzelnen Handels, die ausgeführt war zu sehen: Mit diesen Werkzeugen können wir ziemlich gründlich bewerten, wie gut unsere Strategie getan hätte, haben sie ausgeführt wurden während eines vergangenen Zeitperiode - verblüffend leistungsfähige! Nun lassen Sie uns sagen, Sie wollen ein zwicken, um Ihre Strategie zu machen und die Ergebnisse sehen - es kann erfolgen durch: Wechseln zurück in den NinjaScript Editor Stellen Sie die gewünschte Änderung Neu kompilieren mit einem F5 Kommen Sie zurück in der Strategy Analyzer Rechtsklicken Sie auf Backtest Hoffentlich Serie bietet eine Starthilfe für die C # Entwickler, die Interesse an Automated Trading, sondern sind davon ausgegangen, dass die Hürde ist zu hoch - es ist wirklich sehr einfach und FREI, um loszulegen! Es gibt sicher noch viel mehr zu decken, einschließlich Visual Studio Debuggen und Strategie-Optimierung - hoffentlich werde ich das Hinzufügen dieser Themen in Zukunft Beiträge!


No comments:

Post a Comment