Saturday, 30 September 2017

Trading Backtest System Spreadsheet


Auto Trade System Backtesting Einführung Wenn Sie die Tabellenkalkulation für Trading-Studien verwenden oder eine ACSIL-Studie (Advanced Custom Study and Interface Language) erstellt haben, die die ACSIL Trading-Funktionen verwendet, können Sie Back-Tests unter Verwendung von Trade Simulation durchführen Modus und Wiedergabe des Diagramms. Oder durch einen Bar Based Back Test. Um zu bewerten, wie Ihr Trading-System historisch durchgeführt wurde und um die historischen Trades für vergangene Daten zu sehen, ist es notwendig, einen Back-Test durchzuführen. Ein Bar Based Back Test verwendet die Open, High, Low, Close Daten der geladenen Chart Bars selbst, um das automatisierte Handelssystem zu bewerten. Diese Daten werden während des Backtests inkrementell zum Diagramm hinzugefügt. Diese Methode der Back-Testing ist schneller im Vergleich zu einem Replay Back Test, aber es ist weniger genau als ein Replay Back Test. Ein Replay Back Test verwendet die zugrunde liegenden Daten die Intraday-Datendatei, um das automatisierte Handelssystem auszuwerten. Diese zugrunde liegenden Daten haben einen Zeitrahmen pro Datensatz von 1 Tick bis 1 Minute (abhängig von verschiedenen Faktoren, einschließlich Data / Trading-Dienst, historische Daten verfügbar und Sierra Chart-Einstellungen). Es sind diese detaillierteren Daten in der Intraday-Datendatei, die dem Diagramm während des Back-Tests inkrementell hinzugefügt werden. Dies ist eine langsamere Methode der Back-Test im Vergleich zu einem Bar Based Back-Test, aber es ist genauer. Bei beiden Methoden des Back-Tests kann ein vollständiger Trade Statistics-Bericht auf der Grundlage aller während des Back-Tests generierten Order-Fills betrachtet werden. Siehe Testergebnisse anzeigen. Bar Based Back Testing Unterstützt für Historische und Intraday Charts. Back-Tests an belasteten Balken ist ein Back-Testverfahren mit den Open-, High-, Low - und Close-Werten der geladenen Balken. Die zugrunde liegenden Daten in der Datendatei werden nicht direkt verwendet, sondern nur die geladenen Balken selbst. Dies führt in der Regel nicht so hohe Genauigkeit eines Back-Tests im Vergleich zu einem Replay Back Test. Allerdings ist es in der Regel schneller und die empfohlene Methode, wenn schnelle Back-Testing ist wichtig. Stellen Sie sicher, es gibt ein Häkchen von Trade gtgt Auto Trading Enabled, wenn es nicht bereits ein. Andernfalls wird das automatisierte Handelssystem keine Trades generieren. Trennen Sie die Verbindung zum Daten - und Handelsserver, wenn dies noch nicht geschieht, indem Sie Datei gtgt Disconnect wählen. Es ist nicht möglich, einen Bar Based Back Test durchzuführen, während er mit dem Daten - oder Handelsserver verbunden ist. Um einen High-Speed-Back-Test basierend auf geladenen Balken durchzuführen, wählen Sie Trade gtgt Autom. Sie werden aufgefordert, die Bar Processing Increment. Der Standardwert ist 250. Hier wird die Anzahl der Balken angegeben, die sofort verarbeitet werden, bevor die Benutzerschnittstelleneingabe verarbeitet wird. Das bedeutet, wenn Sie 250 angeben, dann werden 250 Bars auf einmal verarbeitet und dann wieder 250. Zwischen jedem dieser Blöcke können Sie den Back Test durch Drücken der Escape-Taste auf der Tastatur unterbrechen. Je größer die angegebene Nummer ist, desto länger dauert die Benutzung der Benutzeroberfläche. Um detaillierte Ergebnisse des Back-Tests anzuzeigen, lesen Sie den Abschnitt Back Testergebnisse anzeigen. Bar Based Back Testing Notes Die Studien werden in der Tabelle viermal für jede Bar berechnet. Für jeden Balken in der Tabelle werden die Studien zuerst mit dem Open-Preis, dann mit dem High und Low der Bar berechnet. Entweder wird das Hoch zuerst verwendet oder das Tief wird zuerst verwendet, abhängig von der bestimmten Richtung der Kursbewegung. Das Niedrige wird zuerst verwendet, wenn das Schließen der Leiste näher zum Hoch der Leiste ist. Der Hochwert wird zuerst verwendet, wenn die Naht der Leiste näher an dem Niedrigwert der Leiste ist oder die Naht einen gleichen Abstand zu dem Hoch und Niedrig hat. Schließlich wird der Close-Preis der Leiste verarbeitet. Die Füllpreise für Aufträge werden auf den Werten "Offen", "Hoch", "Niedrig" und "Schließen" oder innerhalb eines Häcksets von ihnen basieren, sofern es sich nicht um Aufträge handelt (nicht marktführende Aufträge, die nicht sofort füllen). Weitere Informationen finden Sie unter Wie Bestellungen gefüllt werden. Beachten Sie dies bei der Betrachtung der Füllpreise. Der Zeitstempel einer Auftragsfüllung ist die Startzeit der Leiste, in der die Auffüllung erfolgt ist. Es gibt nichts besonderes, was Sie brauchen, um mit der Entwicklung eines ACSIL-Handelssystems oder ein Spreadsheet-Handelssystem zu tun, wenn bar-basierte Back-Tests. Wenn Sie einen Handel am Ende der Bar machen wollen, wenn Ihre Regeln erfüllt sind, werden Sie wissen, dass Ihr System gegen den Schlusskurs ausgewertet wird, wenn Sie sehen, dass die sc. LastTradePrice. Im Falle eines ACSIL-Handelssystems, gleich dem Bar-Close-Wert oder innerhalb eines Tick-Wertes ist. Bar-basierte Back-Tests ist eine schnelle Methode der Back-Test, es sei denn, Sie benötigen hohe Präzision Tick Replay-basierte Back-Tests. Replay Back Testing - Automatisch Unterstützt nur für Intraday-Charts. In diesem Abschnitt wird beschrieben, wie Sie einen Back-Test durchführen, indem Sie den Befehl Trade gtgt Auto Trade System Replay Back Test verwenden. Dies vereinfacht die Durchführung eines Replay-basierten Backtests. Trennen Sie die Verbindung zum Daten-Feed, indem Sie im Menü Datei gtgt Disconnect wählen. Wählen Sie Diagramm gtgt Diagrammeinstellungen aus, und legen Sie die zu ladenden Tage auf die Anzahl der Tage fest, zu denen Sie den Backtest durchführen möchten. Drücke OK . Sobald dies gesetzt ist, muss es nicht erneut geändert werden. Stellen Sie sicher, es gibt ein Häkchen von Trade gtgt Auto Trading Enabled, wenn es nicht bereits ein. Andernfalls wird das automatisierte Handelssystem keine Trades generieren. Wählen Sie Trade gtgt Auto Trade System Replay Zurück Test im Menü. Dieser Befehl löscht alle simulierten Handelsdaten für das Chartsymbol und wiederholt das gesamte Diagramm von Beginn an mit hoher Geschwindigkeit. Sierra Chart ist während des Back-Tests belegt. Sie können die Back-Test aber durch Drücken der Stopp-Taste auf dem Chart Replay-Fenster zu stoppen. Sie haben die Möglichkeit, diese Taste alle paar Sekunden zu drücken. Um detaillierte Ergebnisse des Back-Tests anzuzeigen, lesen Sie den Abschnitt Back Testergebnisse anzeigen. Replay Back Testing - Manual Unterstützt nur für Intraday-Charts. Manuelle Back-Tests werden verwendet, wenn Sie den Back-Test mit einer langsameren Geschwindigkeit ausführen, um zu beobachten, was es tut, und es kann notwendig sein, diese Art von Back-Test verwenden, wenn Sie zurück testen ein Handelssystem, das mehrere Charts umfasst. Stellen Sie sicher, es gibt ein Häkchen von Trade gtgt Trade Simulation Mode On, wenn es nicht bereits ein. Allerdings wird Sierra Chart in diesem Modus sowieso platziert werden, wenn Sie einen Back-Test starten. Stellen Sie sicher, es gibt ein Häkchen von Trade gtgt Auto Trading Enabled, wenn es nicht bereits ein. Andernfalls wird das automatisierte Handelssystem keine Trades generieren. Wählen Sie Diagramm gtgt Replay Chart, um das Replay-Fenster anzuzeigen. Im Replay-Fenster wählen Sie Accurate Trading System Back Test Mode. Wenn Sie mehrere Diagramme in einem Handelssystem wiederholen möchten, das mehrere Diagramme verwendet, aktivieren Sie für alle Diagramme im Chartbuch im Replay-Fenster. Ansonsten muss diese Option deaktiviert sein. Weitere Informationen finden Sie unter Durchführen von Backtests auf einem Handelssystem, das mehrere Charts verwendet. Blättern Sie zu dem Punkt im Diagramm, an dem Sie den Back-Test starten möchten, und drücken Sie die Play-Taste im Replay-Fenster. Wenn die Wiedergabe gestartet wird, werden die aktuelle simulierte Handelsposition für das Symbol, falls vorhanden, die simulierten Aufträge für das Symbol, falls vorhanden, und alle simulierten Auftragsvorgänge für das Symbol gelöscht. Weitere Informationen finden Sie auf der Seite Wiedergebende Diagramme. Um detaillierte Ergebnisse des Back-Tests anzuzeigen, lesen Sie den Abschnitt Back Testergebnisse anzeigen. Durchführen von Backtests auf einem Handelssystem, das mehrere Charts verwendet Wenn Sie ein Handelssystem haben, das mehrere Charts umfasst, ist die Frage, ob Sie Replay oder BackTest nur das Diagramm, auf dem sich die Handelssystemstudie befindet, oder alle Charts, die die Handelssystem bezieht sich auf. Sie wollen alle Charts wiedergeben, die ein Handelssystem referenziert, indem Sie die Methode Replay Back Testing - Manuell verwenden, wenn Sie möchten, dass Ihr Handelssystem den Kurs verwendet und die Werte von Stäben bewertet, die sich im Prozess der Bildung und nicht in der Studie befinden Und Preiswerte in den Quelldiagrammen, die vollständige und abschließende Werte aufweisen. Betrachten Sie zum Beispiel ein 5-minütiges Balken-Diagramm. In dem Quellendiagramm, auf das sich das Handelssystem bezieht, wird es, wenn es nicht zur gleichen Zeit wiedergegeben wird, vollständige 5-Minuten-Balken aufweisen. Wenn Sie es wiederholen, schrittweise über den Fünf-Minuten-Zeitrahmen, wird ein 5-Minuten-Bar bauen und die Studienwerte werden sich ändern. Wenn es wichtig ist, Barwerte und Studienwerte für Ihr Handelssystem zu ändern, und nur Sie diese Frage beantworten können, dann möchten Sie alle Charts wiedergeben, die das Handelssystem verwendet. Sie wollen nicht alle Charts wiederholen, die ein Handelssystem referenziert und stattdessen nur einen Backtest auf dem bestimmten Chart, auf dem das Handelssystem aktiviert ist, wiederholen oder durchführen, wenn es für Sie akzeptabel ist, vollständige und finalisierte Bar - und Studienwerte zu haben Im Quelldiagramm oder in den Diagrammen. Wenn ein Handelssystem Verweise auf andere Diagramme macht, muss es eine von zwei Methoden verwenden, um dies zu tun. Es muss die Studie / Preis-Overlay-Studie verwenden. Oder im Fall eines ACSIL-Handelssystems kann es Verweise auf andere Diagramme unter Verwendung der Methode, die auf dem Referenzieren anderer Zeitrahmen und Symbole bei der Verwendung der ACSIL-Seite dokumentiert wird, vornehmen. Wenn Sie das Studien - / Preis-Overlay verwenden, um Preis - oder Studiendaten auf das Diagramm zu legen, auf dem das Handelssystem aktiviert ist, und die Diagrammbarren auf Volume, Anzahl der Trades, Range, Renko, Umkehrung, Delta-Volumen oder Preisänderungen basieren Müssen Sie die Input-Methode für den Datenkopiermodus verwenden, um den frühesten Wert aus dem entsprechenden Zeitrahmen zu verwenden. Andernfalls werden in dem Fall, wenn das andere angezeigte Diagramm nicht wiedergegeben wird und nicht zeitlich synchron zum Zieldiagramm synchronisiert wird, Daten von dem letzten Strich in dem Diagramm, auf das verwiesen wird, für die gerade zurückgetestete aktuelle Leiste verwendet. Die referenzierten Daten wären also nicht korrekt. Wenn Sie mehrere Diagramme gleichzeitig wiederholen, um einen Rücktest durchzuführen, müssen Sie die Methode Replay Back Testing - Manual verwenden. Im Replay-Fenster müssen Sie die Option Für alle Charts im Chartbook aktivieren. Wählen Sie im Replay-Fenster die Option Accurate Trading System Zurück Testmodus oder Berechnen bei jedem Tick / Trade. Wenn Sie dies tun, wird ein synchronisierter Backtest durchgeführt. Für diesen Backtest-Typ empfiehlt es sich, die Verbindung zu den Daten - und Handelsservern zu trennen, indem Sie Datei gtgt Disconnect wählen. Bei einem synchronisierten Backtest wird die Abhängigkeit zwischen den Diagrammen bestimmt und die Berechnungen in der richtigen Reihenfolge durchgeführt. Das garantiert Konsistenz und Genauigkeit. Sie können jede Replay Speed ​​verwenden. Wenn Sie die synchronisierte Rücktestwiedergabe starten, werden Sie nach dem Zeitschrittinkrement gefragt, in dem der Rücktest durchgeführt werden soll (Eingabeverarbeitungsschritt in Sekunden). Die Voreinstellung ist 60 Sekunden. Je kleiner der Zeitrahmen, desto genauer der Back-Test, aber es dauert länger, um abzuschließen. Je größer der Zeitrahmen, desto schneller wird der Back-Test sein, aber er wird weniger genau sein. Die Genauigkeit hängt jedoch von dem Zeitrahmen der Quell - und Zieltabellen ab. Sie möchten nicht ein Zeitschrittinkrement verwenden, das länger ist als der Zeitrahmen der Balken, die am Handelssystem beteiligt sind. Sie können einen Zeitrahmen wählen, der ungefähr 25 der durchschnittlichen Stabzeitlänge ist. Anzeigen von Back-Testergebnissen Sie können detaillierte Ergebnisse Ihres Handelssystems anzeigen, indem Sie im Menü den Eintrag Trade gtgt Trade Activity Log gtgt Trade Statistics wählen. Wählen Sie am oberen Rand des Handelsaktivitätsprotokolls das Symbol, mit dem der Rücktest durchgeführt wurde. Sie müssen das Symbol auswählen, das SIM vor sich hat. Am oberen Rand des Handelsaktivitätsprotokolls müssen Sie Simuliert aus der Liste der Auftragsaktivitätsquellen auswählen, um die Auftrags - und Fülltätigkeit für den Rücktest anzuzeigen. Eine vollständige Anleitung finden Sie auf der Registerkarte Handelsstatistik. Es gibt viele Felder, die detaillierte Ergebnisse des Handels liefern. Für ein Trade by Trade-Protokoll wählen Sie Trade gtgt Trade Activity Log gtgt Trades aus dem Menü. Eine vollständige Anleitung finden Sie im Tab "Trades". Um die Auftragsabwicklung visuell auf dem Chart anzuzeigen, aktivieren Sie Trade gtgt Order Order Fills im Menü des Hauptfensters oder des Chartfensters. Um genau zu wissen, wann ein Auftrag gefüllt wurde, müssen Sie die Auftragsfüllungen auf dem Diagramm betrachten, anstatt die Pfeile anzuzeigen, die von einem Handelssystem auf dem Diagramm platziert werden, da diese Pfeile nicht notwendigerweise tatsächliche Aufträge darstellen und füllen. Weitere Informationen hierzu finden Sie unter Ignorierte Signale mit Spreadsheet-Systemen oder Alerts (dies gilt für das Spreadsheet-System für Handelsstudien). Verbesserung der Back-Test-Performance Es gibt einige Dinge, die getan werden können, um Back-Test-Performance zu verbessern. Die schnellste Back-Testing wird sein, wenn mit dem Bar Based Back Testing Back-Test-Methode. Im Fall der Verwendung der Spreadsheet-System für den Handel. Beziehen Sie sich auf die Verbesserung der Back-Test-Performance von Tabellenkalkulationssystemen zusätzlich zu den folgenden Punkten. Die Entwicklung eines automatisierten Trading-Systems mit dem Advanced Custom Study Interface und Sprache wird immer geben die beste Leistung im Vergleich zu mit Spreadsheets. Wenn Sie einen Wiederholungstyp des Rücktests ausführen, werden die Testtests im Vergleich zu höheren Zeitrahmendatensätzen in der Intraday-Datendatei langsamer, wenn die Daten in der Intraday-Diagrammdatendatei 1 Tick oder 1 Zweite Datensätze enthalten. Erhöhen Sie daher die globalen Einstellungen gtgt Data / Trade Service Settings gtgt Intraday Data Storage Time Unit. Danach laden Sie die Intraday-Chartdaten erneut herunter, indem Sie in das Intraday-Diagramm wechseln und Bearbeiten gtgt Löschen Alle Daten und Herunterladen wählen. Dies muss nur einmal pro Symbol erfolgen. Dies wird dazu beitragen, die Zeit für Back-Tests. Das nächste, was zu überprüfen, um die Quelle der langsamen Rück-Tests zu bestimmen ist, entfernen Sie alle Studien aus dem Diagramm oder Diagrammen, die wiedergegeben werden, oder aus dem Diagramm ein barbasierter Backtest durchgeführt wird. Führen Sie den Rücktest erneut aus und sehen Sie, ob Sie bessere Leistung erhalten. Wenn ja, dann ist es eine jener speziellen Studien, die das Problem verursacht. Sie können dann Studien zurück allmählich eins nach dem anderen, um zu sehen, welche ist eine längere Zeit zu berechnen. Wenn eine benutzerdefinierte Studie ein Leistungsproblem verursacht, muss der Entwickler dieser Studie die Leistungsfähigkeit dieser Studie verbessern. Die benutzerdefinierte Studie muss sc. FreeDLL 0 im sc. SetDefaults-Codeblock setzen, um die Leistung zu verbessern. Verbesserung der Back-Test-Performance von Spreadsheet-Handelssystemen Im Falle der Verwendung der Spreadsheet-System für Trading-Studie, Back-Testing ist in der Regel nicht sehr schnell. Der Grund dafür ist, dass alle Diagrammdaten in ein separates Tabellenobjekt ausgegeben werden. Jedes Mal, wenn während des Back-Tests eine neue Leiste hinzugefügt wird, müssen alle Diagrammdaten erneut in die Tabelle eingefügt werden. Dies verursacht eine Menge von Berechnungen auftreten. Inhärent mit ACSIL ist viel schneller. Sie können jedoch die Leistung verbessern, indem Sie die folgenden Schritte ausführen. Schauen Sie sich Ihre Formeln in Zellen K-Z (letzte Formel Spalte bei Verwendung von 16 Formel Spalten). Bestimmen Sie, wie viele Zeilen der aktuellen Zeile 3 sie zurückverweisen. Wenn beispielsweise die Formeln nicht weiter als Zeile 12 referenzieren, muss die Spreadsheet-Studie nur 10 Zeilen von Daten an die Spreadsheet ausgeben. Verringern Sie die Anzahl der Zeilen, die im Fenster Studieneinstellungen für das Tabellenkalkulationssystem für Trading-Studie eingegeben wurden, auf die minimale Anzahl von Zeilen, die erforderlich sind. Löschen Sie die Daten aus den Tabellenzeilen, die nun nicht mehr in der Tabellenkalkulation verwendet werden. Markieren Sie dazu die Zeilen, indem Sie die Zeilennummern auf der linken Seite des Tabellenblatts auswählen und die Löschtaste auf der Tastatur drücken oder die Option Spreadsheet gtgt löschen wählen. Entfernen Sie unbenutzte Tabellen in der Tabellenkalkulation. Wählen Sie oben links im Tabellenblatt das nicht verwendete Blatt aus, und wählen Sie Tabellenblatt gtgt Löschen. Wenn es auch eine Advanced Custom Study auf dem Diagramm, die Sie selbst entwickelt haben, stellen Sie sicher, dass es sc. FreeDLL auf 0 gesetzt ist. Dies ist wichtig für die Leistung. Führen Sie den Back-Test mit einer der auf dieser Seite beschriebenen Methoden durch. Der schnellste Backtest wird ein Bar Based Back Test sein. Unterschiede zwischen Back-Tests und Echtzeit-Auto Trade System Evaluation Die BuyEntry, BuyExit, SellEntry, SellExit Order Actions werden ausgewertet, wenn die Handelsstudie berechnet wird. Während der normalen Aktualisierung des Echtzeit-Diagramms erfolgt diese Berechnung im Diagramm-Aktualisierungsintervall, das unter Allgemeine Einstellungen gtgt Allgemeine Einstellungen festgelegt ist. Wenn jedoch das Chart-Aktualisierungsintervall abgelaufen ist, werden die Handelsstudien nur berechnet, wenn Daten aus dem Daten-Feed empfangen werden oder neue / aktualisierte Handelsaufträge oder Positionsdaten vorhanden sind. Während eines Back-Tests gibt es definitive Regeln, die steuern, wenn Trading-Studien berechnet werden. Für einen Bar Based Back Test. Werden die Handelsstudien für jeden der Werte Open, High, Low, Close in der Leiste berechnet. Während eines Replay Back-Tests. Werden die Handelsstudien berechnet, wenn dem Diagramm eine neue Leiste hinzugefügt wird, und wenn die Daten über die Intraday-Diagrammdatendatei mit den High-, Low - und Close-Werten des letzten Balkens im Diagramm verarbeitet werden. Während der Echtzeitaktualisierung. Zwischen den Zeiten, in denen die Handelsstudien berechnet werden, die sich im Chartaktualisierungsintervall befinden. Gibt es möglicherweise mehr als ein Datensatz hinzugefügt, um das Diagramm. Dies trifft vor allem auf Häckchen durch Häkchen zu. Daher wird die Studie nicht bei jedem einzelnen Tick berechnet. Wenn Sie Ihre Order Actions während der Echtzeitaktualisierung so schnell wie möglich auswerten möchten, können Sie das Chart-Aktualisierungsintervall verringern. Wir empfehlen nicht, unter 50 bis 100 ms zu gehen. Der Punkt dieser Diskussion ist, dass es einige Inkonsistenzen zwischen einem Handelssystem, das in Echtzeit und während eines Back-Tests aufgrund der Bedingungen und Häufigkeit, wenn die Studien einschließlich der Handelsstudie berechnet werden. Sie haben die größte Übereinstimmung zwischen Back-Tests und Echtzeit-Trading System-Auswertung, wenn Sie einen replaybasierten Back-Test durchführen, indem Sie Tick-Daten ankreuzen. Um sicherzugehen, dass Sie in den Intraday-Datendokumenten über Tick-Daten verfügen, siehe Tick by Tick Data Configuration. Im Fall der Spreadsheet-System für Trading-Studie, wenn Sie Ihre Bedingungsformeln nur auf eine bar schließen auswerten möchten. Dann setzen Sie das entsprechende Signal nur auf einen Bar Close-Eingaben mit dem Spreadsheet-System für Trading-Studie auf Ja. Dies gibt Ihrem System größere Stabilität und nicht durch das Chart Update Interval betroffen sein. Im Fall eines ACSIL-Handelssystems sollten Sie sc. GetBarHasClosedStatus () verwenden. Im Falle eines Handelssystems, das mehrere Diagramme verwendet, während der Echtzeitaktualisierung von Diagrammen, um die Berechnungsreihenfolge der Diagramme basierend auf der Abhängigkeit zwischen ihnen zu steuern, müssen Sie die globalen Einstellungen aktivieren gtgt Allgemeine Einstellungen gtgt Verwenden Sie Kontrollierte Order Chartaktualisierung. Dies bietet eine höhere Konsistenz zwischen Back-Tests und Echtzeit-Handelssystem-Auswertung für Handelssysteme, die mehrere Charts verwenden. Back-Test - und Continuous-Futures-Kontraktcharts Es wird unterstützt, Back-Testing durchzuführen, wenn Sie eines der Chart gtgt-Diagrammeinstellungen gtgt Erweiterte Einstellungen gtgt Kontinuierliche Kontraktoptionen verwenden. Bei der Durchführung von Back-Tests in einem Continuous Futures-Kontraktdiagramm, obwohl die abgelaufenen Futures-Kontrakte in das Diagramm geladen werden, hat das Diagramm nur ein Symbol, das für den Handel verwendet wird, obwohl Sie Back-Testing über historische Daten sind. Die Trades sind also nach Ablauf der Vertragspreise, aber mit dem aktuellen Symbol angegeben. Daher sehen Sie nur ein Symbol, wenn Sie die Handelsergebnisse im Handelsaktivitätsprotokoll überprüfen. Konsistenz zwischen Backtests Wenn Sie Backtesting durchführen, müssen Sie eine der auf dieser Seite dokumentierten Methoden verwenden und den Vorgehensweisen folgen. Wenn Sie einen Replay-basierten Backtest durchführen, müssen Sie im Replay-Fenster den Accurate Trading System Back-Test-Modus auswählen, um Konsistenz zu erhalten, wenn Back-Test das gleiche automatisierte Handelssystem unter den gleichen Bedingungen. Während eines Backtests werden die Bid - und Ask-Preise aus den zugrunde liegenden Datensätzen in der Intraday-Datendatei festgelegt, wenn Sierra Chart durch die zugrunde liegenden Datensätze für einen Replay-basierten Backtest oder die Bardaten für einen Bar Based Back Test verarbeitet Oder werden aus den Open High Low Close-Bardaten abgeleitet. Diese Bid - und Ask-Preise dienen dazu, die Aufträge, die von einem automatisierten Handelssystem eingereicht werden, auszufüllen. Es gibt immer eine Übereinstimmung mit der Einstellung der Bid - und Ask-Preise zwischen Back-Tests an den gleichen Diagrammdaten wie die Daten verarbeitet werden. Wenn Ihr Trading-System zwischen den Back-Tests inkonsistente Ergebnisse liefert, ohne irgendwelche Änderungen an den Chart-Daten, den Chart-Einstellungen oder den Study-Einstellungen vorzunehmen, müssen Sie sich Ihre eigenen Trading-System-Code / Formeln für eine Ursache ansehen. Bei Inkonsistenzen kann dies nur Ihrem eigenen Code zugeschrieben werden. Es ist sehr unwahrscheinlich, dass das Ergebnis davon ist, wie Sierra Chart den Rücktest verarbeitet. Inkonsistenzen zeigen, dass Ihr eigenes Handelssystem produziert inkonsistente Ergebnisse auf die Art, wie es konzipiert und funktioniert. Auch wenn Sie nicht bekommen ein konsistentes Ergebnis zwischen Back Tests, in der Regel bedeutet dies nicht unbedingt sehr viel, denn obwohl Sie vielleicht ein konsistentes Ergebnis sehen, jedes Mal, wenn Sie einen Back-Test, vorausgesetzt, dass Ihre Studie arbeitet konsequent und Sierra Chart tut Haben keine Kontrolle darüber, es ändert sich nicht die Tatsache, dass mit Live-Handel erhalten Sie noch ein anderes Ergebnis aus Ihrem Handelssystem. Versuchen Sie eine der Sierra Chart bereitgestellt Handelssysteme. Führen Sie es viele Male. Sie erhalten ein konsistentes Ergebnis jedes Mal. Wenn Sie ein konsistentes Ergebnis erhalten, jedes Mal, und mit Ihrem eigenen Handelssystem, das Sie nicht tun, dann beweist dies höchstwahrscheinlich das Inkonsistenz-Problem ist in Ihrem eigenen Handelssystem. Die Sierra Chart Beispiel Handelssysteme finden Sie in Analysis gtgt Studien gtgt Add Custom Study gtgt Sierra Chart Custom Studies und Beispiele gtgt Trading Beispiel:. Wenn Sie Back-Testing ein Handelssystem, die Wiederholung von mehreren Charts zur gleichen Zeit, dann ist dies etwas, was viel mehr Komplexität beinhaltet. Dies ist etwas zu beachten, wenn Sie Unstimmigkeiten zwischen Back Tests haben. Verwenden von Actual Bid und Ask-Preisen während des Back-Tests Sierra Chart unterstützt die Verwendung der tatsächlichen Bid - und Ask-Preise während eines Replay Based Back-Tests. Diese Bid - und Ask-Preise dienen dazu, Aufträge auszufüllen. Dies bietet eine sehr hohe Genauigkeit, wenn Back-Testing. Historische Bid - und Ask-Preise sind verfügbar, wenn Sie historische Daten der Sierra Chart Historical Data-Services verwenden. In den meisten Fällen wird dieser Dienst für historische Daten für Diagramme verwendet. Diese historischen Bid - und Ask-Preisdaten beginnen am 23. Juni 2014. Folgen Sie diesen Schritten, um die tatsächlichen Bid - und Ask-Preise während der Backtests zu verwenden. Setzen Sie Sierra Chart, um die Daten zu speichern, indem Sie ankreuzen. Siehe Tick by Tick Data Configuration. Dies ist ein wesentlicher Schritt. Führen Sie einen automatischen oder manuellen Replay Back Test durch. Es muss ein Replay Back Test sein. Letzte Änderung am Donnerstag, den 15. Dezember, 2016.Using Excel zu Back Trading-Strategien Test Wie Back-Test mit Excel Ive getan eine angemessene Menge an Trading-Strategie Back-Tests. Ive verwendet anspruchsvolle Programmiersprachen und Algorithmen und Ive auch getan es mit Bleistift und Papier. Sie brauchen nicht, ein Raketenwissenschaftler oder ein Programmierer zu sein, zum der vielen Handelsstrategien zurück zu prüfen. Wenn Sie ein Tabellenkalkulationsprogramm wie Excel betreiben können, dann können Sie testen viele Strategien. Das Ziel dieses Artikels ist es, Ihnen zu zeigen, wie Sie eine Trading-Strategie mithilfe von Excel und einer öffentlich zugänglichen Datenquelle testen können. Dies sollte nicht kostet Sie mehr als die Zeit es braucht, um den Test zu tun. Bevor Sie eine Strategie testen, benötigen Sie einen Datensatz. Mindestens dies ist eine Reihe von Datum / Zeiten und Preise. Realistisch brauchen Sie das Datum / Uhrzeit, offen, hoch, niedrig, enge Preise. Sie benötigen normalerweise nur die Zeitkomponente der Datenreihe, wenn Sie Intraday-Trading-Strategien testen. Wenn Sie zusammenarbeiten und lernen, wie Sie zurück mit Excel testen, während Sie dies lesen, dann folgen Sie den Schritten, die ich in jedem Abschnitt skizzieren. Wir müssen einige Daten für das Symbol, dass wir gehen zurück zu erhalten. Gehen Sie zu: Yahoo Finance Geben Sie im Feld Enter Symbol (s) Folgendes ein: IBM und klicken Sie auf GO Unter Quotes auf der linken Seite klicken Sie auf Historische Kurse und geben Sie die gewünschten Datumsbereiche ein. I Ausgewählt aus 1 Jan 2004 bis 31 Dez 2004 Scrollen Sie bis zum Ende der Seite und klicken Sie auf Download To Spreadsheet Speichern Sie die Datei mit einem Namen (wie ibm. csv) und einem Ort, den Sie später finden können. Vorbereiten der Daten Öffnen Sie die Datei (die Sie oben heruntergeladen haben) mit Excel. Aufgrund der dynamischen Natur des Internets können sich die Anweisungen, die Sie oben gelesen haben, und die Datei, die Sie öffnen, durch die Zeit, die Sie lesen, geändert haben. Wenn ich diese Datei heruntergeladen, die oberen paar Zeilen sah so aus: Sie können jetzt löschen Sie die Spalten, die Sie nicht verwenden werden. Für den Test, dass Im zu tun, werde ich nur das Datum verwenden, öffnen und schließen Werte, so habe ich gelöscht die High, Low, Volume und Adj. Schließen. Ich auch die Daten sortiert, so dass das älteste Datum war zuerst und das späteste Datum war am unteren Rand. Verwenden Sie dazu die Menüoptionen Data - gt Sort. Anstatt eine Strategie an sich zu testen, werde ich versuchen, den Tag der Woche zu finden, der die beste Rendite zur Verfügung stellte, wenn man einem offenen Spiel folgte und die enge Strategie verkaufte. Denken Sie daran, dass dieser Artikel hier ist, um Ihnen vorzustellen, wie zu verwenden, um Excel-Teststrategien zurück. Darauf können wir bauen. Hier ist die Datei ibm. zip, die die Tabelle mit den Daten und Formeln für diesen Test enthält. Meine Daten befinden sich nun in den Spalten A bis C (Datum, Öffnen, Schließen). In den Spalten D bis H habe ich Platzformeln, um die Rendite an einem bestimmten Tag zu bestimmen. Eingabe der Formeln Der schwierige Teil (außer youre ein Excel-Experte) ist die Ausarbeitung der Formeln zu verwenden. Dies ist nur eine Frage der Praxis und je mehr Sie üben die mehr Formeln youll entdecken und die mehr Flexibilität youll haben mit Ihrer Prüfung. Wenn Sie die Tabelle heruntergeladen haben, dann werfen Sie einen Blick auf die Formel in Zelle D2. Es sieht so aus: Diese Formel wird auf alle anderen Zellen in den Spalten D bis H (mit Ausnahme der ersten Zeile) kopiert und braucht nicht angepasst zu werden, sobald sie kopiert wurde. Ill erklären kurz die Formel. Die IF-Formel hat eine Bedingung, einen wahren und einen falschen Teil. Die Bedingung ist: Wenn der Wochentag (umgerechnet auf eine Zahl von 1 bis 5, die Montag bis Freitag entspricht) mit dem Wochentag in der ersten Zeile dieser Spalte (D1) identisch ist. Der wahre Teil der Anweisung (C2-B2) gibt uns einfach den Wert von Close-Open. Dies zeigt, dass wir die Open gekauft und verkauft die Close und das ist unser Gewinn / Verlust. Der falsche Teil der Anweisung ist ein Paar von doppelten Anführungszeichen (), die nichts in die Zelle setzen, wenn der Tag der Woche nicht übereinstimmt. Die Zeichen links von dem Spaltenbuchstaben oder der Zeilennummer sperren die Spalte oder Zeile, so dass, wenn sein kopierter Teil der Zellreferenz nicht ändert. Wenn also die Formel in das Beispiel kopiert wird, ändert die Referenz auf die Datumszelle A2 die Zeilennummer, wenn sie in eine neue Zeile kopiert wird, aber die Spalte in Spalte A bleibt. Sie können die Formeln verschachteln und außergewöhnlich leistungsfähige Regeln bilden Und Ausdrücke. Die Ergebnisse Am unteren Rand der Wochentagsspalten habe ich einige Zusammenfassungsfunktionen platziert. Bemerkenswert sind die Durchschnitts - und Summenfunktionen. Diese zeigen uns, dass im Jahr 2004 der profitabelste Tag, um diese Strategie umzusetzen war an einem Dienstag und dies wurde von einem Mittwoch dicht gefolgt. Als ich die Expiry Freitags - Bullish oder Bearish-Strategie getestet und schrieb, dass Artikel, den ich einen sehr ähnlichen Ansatz mit einer Kalkulationstabelle und Formeln wie diese. Das Ziel dieses Tests war, zu sehen, wenn Expiry freitags allgemein bullish oder bearish waren. Versuch es. Laden Sie einige Daten von Yahoo Finanzen. Laden Sie es in Excel und probieren Sie die Formeln und sehen, was Sie kommen können. Stellen Sie Ihre Fragen im Forum. Viel Glück und profitable Strategie hunting06 / 17/2013 Neueste Version von TraderCode (v5.6) umfasst neue Indikatoren für technische Analyse, Point-and-Figure Charting und Strategie Backtesting. 06/17/2013 Neueste Version von NeuralCode (v1.3) für Neural Networks Trading. 06/17/2013 ConnectCode Barcode Font Pack - ermöglicht Barcodes in Office-Anwendungen und enthält ein Add-In für Excel, das die Massenerzeugung von Barcodes unterstützt. 06/17/2013 InvestmentCode, eine umfassende Palette von Finanzrechnern und Modellen für Excel ist ab sofort verfügbar. 09/01/2009 Einführung von Free Investment und Financial Calculator für Excel. 02/1/2008 Freigabe von SparkCode Professional - Add-In zur Erstellung von Dashboards in Excel mit Sparklines 12/15/2007 Ankündigung von ConnectCode Duplicate Remover - ein leistungsfähiges Add-In zum Finden und Entfernen von doppelten Einträgen in Excel 09/08/2007 Launch of TinyGraphs - Open Source Add-In zur Erstellung von Sparklines und kleinen Diagrammen in Excel. Strategien Backtesting in Excel Strategien Backtesting Expert Der Backtesting Expert ist ein Tabellenkalkulationsmodell, mit dem Sie Handelsstrategien mithilfe der technischen Indikatoren erstellen und die Strategien durch historische Daten ausführen können. Die Performance der Strategien kann dann schnell und einfach gemessen und analysiert werden. Während des Backtesting-Prozesses durchläuft der Backtesting Expert die historischen Daten zeilenweise von oben nach unten. Jede angegebene Strategie wird bewertet, um zu ermitteln, ob die Einreisebedingungen erfüllt sind. Wenn die Bedingungen erfüllt sind, wird ein Handel eingegeben. Wenn andererseits die Austrittsbedingungen erfüllt sind, wird eine Position, die zuvor eingegeben wurde, verlassen. Verschiedene Variationen von technischen Indikatoren können zu einer Handelsstrategie generiert und kombiniert werden. Das macht den Backtesting Expert zu einem äußerst leistungsstarken und flexiblen Werkzeug. Backtesting Expert Der Backtesting Expert ist ein Tabellenkalkulationsmodell, das Ihnen erlaubt, Trading-Strategien unter Verwendung der technischen Indikatoren zu erstellen und die Strategien durch historische Daten laufen zu lassen. Die Performance der Strategien kann dann schnell und einfach gemessen und analysiert werden. Das Modell kann eingerichtet werden, um in Long - oder Short-Positionen einzutreten, wenn bestimmte Bedingungen auftreten und die Positionen verlassen, wenn ein anderer Satz von Bedingungen erfüllt ist. Durch den automatischen Handel auf historische Daten kann das Modell die Rentabilität einer Handelsstrategie bestimmen. Backtesting Expert Schritt für Schritt Tutorial 1. Starten des Backtesting Expert Der Backtesting Expert kann über die Windows Startmenüs - TraderCode - Backtesting Expert gestartet werden. Dies startet ein Tabellenkalkulationsmodell mit mehreren Arbeitsblättern für Sie, um technische Analyseindikatoren zu generieren und Tests für die verschiedenen Strategien auszuführen. Sie werden feststellen, dass der Backtesting-Experte viele vertraute Arbeitsblätter wie DownloadedData, AnalysisInput, AnalysisOutput, ChartInput und ChartOutput aus dem Technical Analysis Expert-Modell enthält. Dadurch können Sie alle Ihre Back-Tests schnell und einfach aus einer vertrauten Arbeitsblattumgebung ausführen. 2. Wählen Sie zuerst das DownloadedData-Arbeitsblatt aus. Sie können Daten aus allen Tabellenkalkulationen oder kommagetrennten Werten (csv) - Dateien in dieses Arbeitsblatt für die technische Analyse kopieren. The format of the data is as shown in the diagram. Alternatively, you can refer to the Download Stock Trading Data document to download data from well-known data sources such as Yahoo Finance, Google Finance or Forex for use in the Backtesting Expert. 3. Once you have copied the data, go to the AnalysisInput worksheet and click on the Analyze and BackTest button. This will generate the different technical indicators into the AnalysisOutput worksheet and perform backtesting on the strategies specified in the StrategyBackTestingInput worksheet. 4. Click on the StrategyBackTestingInput worksheet. In this tutorial you will only need to know that we have specified both a long and short strategies using moving average crossovers. We will be going into details of specifying strategies in the next section of this document. The diagram below shows the two strategies. 5. Once the back tests are completed, the output will be placed in the AnalysisOutput, TradeLogOutput and TradeSummaryOutput worksheets. The AnalysisOutput worksheet contains the full historical prices and the technical indicators of the stock. During the back tests, if the conditions for a strategy are satisfied, information such as the buying price, selling price, commission and profit/loss will be recorded in this worksheet for easy reference. This information is useful if you like to trace through the strategies to see how the stock positions are entered and exited. The TradeLogOutput worksheet contains a summary of the trades carried out by the Backtesting Expert. The data can be easily filtered to only show data for a specific strategy. This worksheet is useful for determining the overall profit or loss of a strategy at different time frames. The most important output of the back tests is placed in the TradeSummaryOutput worksheet. This worksheet contains the total profit of the strategies carried out. As shown in the diagram below, the strategies generated a total profit of 2,548.20 by making a total of 10 trades. Of these trades, 5 are Long positions and 5 are Short positions. The Ratio win/loss of greater than 1 indicates a profitable strategy. Explanation of the different Worksheets This section contains the detailed explanation of the different worksheets in the Backtesting Expert model. The DownloadedData, AnalysisInput, AnalysOutput, ChartInput and ChartOutput worksheets are the same as in the Technical Analysis Expert model. Thus they will not be described in this section. For a complete description of these worksheets, please refer to the Technical Analysis Expert section. StrategyBackTestingInput worksheet All the inputs for backtesting including the strategies are entered using this worksheet. A strategy is basically a set of conditions or rules which you will buy in a stock or sell a stock. For example, you may want to execute a strategy to go Long (purchase stocks) if the 12 days moving average of the price crosses above the 24 days moving average. This worksheet works together with the technical indicators and price data in the AnalysisOutput worksheet. Hence the moving average technical indicators have to be generated in order to have a trading strategy based on moving average. The first input required in this worksheet (as shown in the diagram below) is to specify whether to Exit All Trades at the End of the Back Testing Session. Imagine the scenario where conditions for purchasing a stock has occurred and the Backtesting Expert entered a Long (or Short) trade. However the time frame is too short and has ended before the trade can meet the exit conditions, resulting in some trades not exited when the backtesting session ends. You can set this to Y to force all trades to be exited at the end of the backtesting session. Else, the trades will be left opened when backtesting session ends. Strategies A maximum of 10 strategies can be supported in one single back test. The diagram below shows the inputs required for specifying a strategy. Strategy Initials - This input accepts a maximum of two alphabets or numbers. The Strategy Initials is used in the AnalysisOutput and TradeLog worksheets for identifying the strategies. Long(L)/Short(S) - This is used to indicate whether to enter a Long or Short position when the entry conditions of the strategy are met. Entry Conditions A Long or Short trade will be entered when the Entry Conditions are met. The Entry Conditions can be expressed as a formula expression. The formula expression is case sensitive and it can make use of Functions, Operators and Columns as described below. crossabove(X, Y) - Returns True if column X cross above column Y. This function checks the previous periods to ensure that a crossover has actually occurred. crossbelow(X, Y) - Returns True if column X cross below column Y. This function checks the previous periods to ensure that a crossover has actually occurred. and(logicalexpr,) - Boolean And. Returns True if all the logical expressions are True. or(logicalexpr,) - Boolean Or. Returns True if any of the logical expressions are True. daysago(X,10) - Returns the value (in column X) of 10 days ago. previoushigh(X,10) - Returns the highest value (in column X) of the last 10 days including today. previouslow(X,10) - Returns the lowest value (in the column X) of the last 10 days including today. Operators Greater than Equal Not equal Greater than or equal Addition - Subtraction Multiplication / Division Columns (from AnalysisOutput) A - Column A B - Column B C .. .. YY - Column YY ZZ - Column ZZ This is the most interesting and flexible part of the Entry Conditions. It allows columns from the AnalysisOutput worksheet to be specified. When the back tests are carried out, each row from the column will be used for evaluation. For example, A 50 means each of the rows in column A of the AnalysisOutput worksheet will be determined whether it is greater than 50. A B In this example, if the value in column A in AnalysisOutput worksheet is greater than or equal the value of column B, the entry condition will be satisfied. and(A B, CD) In this example, if the value in column A in AnalysisOutput worksheet is greater than the value of column B and the value of column C is greater than column D, the entry condition will be satisfied. crossabove(A, B) In this example, if the value of column A in AnalysisOutput worksheet crosses above the value of B, the entry condition will be satisfied. crossabove means that A originally has a value that is less than or equal to B and the value of A subsequently becomes greater than B. Exit Conditions The Exit Conditions can make use of Functions, Operators and Columns as defined in the entry conditions. On top of that it can also make use of Variables as shown below. Variables for Exit Conditions profit This is defined as the selling price minus the purchase price. The selling price must be greater than the purchase price for a profit to be made. Otherwise the profit will be zero. loss This is defined as the selling price minus the purchase price when the selling price is less than the purchase price. profitpct (selling price - purchase price) / purchase price Note. selling price must be greater than or equal to purchase price. Otherwise profitpct will be zero. losspct (selling price - purchase price) / purchase price Note. selling price must be less than purchase price. Otherwise losspct will be zero. Examples profitpct 0.2 In this example, if the profit in terms of percentage is greater than 20, the exit conditions will be satisfied. Commission - Commission in terms of a percentage of the trading price. If the trading price is 10 and Commission is 0.1 then commission will be 1. The percentage commission and commission in dollars will be summed up to calculate the total commission. Commission - Commission in dollar terms. The percentage commission and commission in dollars will be summed up to calculate the total commission. No. of Shares - Number of shares to purchase or sell when the entry/exit conditions of the strategy are met. TradeSummaryOutput worksheet This is a worksheet that contains a summary of all the trades carried out during the back tests. The results are categorised into Long and Short Trades. A description of all the fields can be found below. Total Profit/Loss - Total profit or loss after commission. This value is calculated by summing all the profits and losses of all the trades simulated in the back test. Total Profit/Loss before Commission - Total profit or loss before commission. If commission is set to zero, this field will have the same value as Total Profit/Loss. Total Commission - Total commission required for all the trades simulated during the back test. Total number of Trades - Total number of trades carried out during the simulated back test. Number of winning Trades - Number of trades that make a profit. Number of losing Trades - Number of trades that make a loss. Percent winning Trades - Number of winning trades divided by Total number of trades. Percent losing Trades - Number of losing trades divided by Total number of trades. Average winning Trade - The average value of the profits of the winning trades. Average losing Trade - The average value of the losses of the losing trades. Average Trade - The average value (profit or loss) of a single trade of the simulated back test. Largest winning Trade - The profit of the largest winning trade. Largest losing Trade - The loss of the largest losing trade. Ratio average win/average loss - Average winning Trade divided by the Average losing Trade. Ratio win/loss - Sum of all the profits in the winning trades divided by the sum of all the losses in the losing trades. A ratio of greater than 1 indicates a profitable strategy. TradeLogOutput worksheet This worksheet contains all the trades simulated by the Backtesting Expert sorted by the date. It allows you to zoom in to any specific trade or time frame to determine the profitability of a strategy quickly and easily. Date - The date where a Long or Short position is entered or exited. Strategy - The strategy that is used for executing this trade. Position - The position of the trade, whether Long or Short. Trade - Indicates whether this trade is buying or selling stocks. Shares - Number of shares traded. Price - The price in which the stocks are purchased or sold. Comm. - Total commission for this trade. PL (B4 Comm.) - Profit or Loss before commission. PL (Aft Comm.) - Profit or Loss after commission. Cum. PL (Aft Comm.) - Cumulative profit or loss after commissions. This is calculated as the cumulative total profit/loss from the first day of a trade. PL (on Closing Position) - Profit or loss when the position is closed (exited). Both the entry commission and exit commission will be accounted for in this PL. For example, if we have a Long position where the PL (B4 Comm.) is 100. Assuming when the position is entered, a 10 commission is charged and when the position is exited, another commission of 10 is charged. The PL (on Closing Position) is 100- 10 - 10 80. Both the commission on entering the position and exiting the position are accounted for on position close. Back to TraderCode Technical Analysis Software and Technical Indicators

No comments:

Post a Comment