Für die 3. Ausgabe unserer TradingMarkets Ausbildung Video-Serie auch abdecken, wie Sie finden können SampP 500 Pullback-Trading-Möglichkeiten mit dem x02026 Watch Video gtgt Dieses Video soll Ihnen unsere neuesten Produkt High Probability Trading Signale vorstellen. Hohe Wahrscheinlichkeit Trading Signals ist entworfen, um x02026 Watch Video gtgt TradingMarkets bietet aktive Trader mit der Ausbildung und Werkzeuge, die sie benötigen, um Trades auf der Grundlage von Daten - nicht Emotionen und liefert Inhalte, Werkzeuge, Daten und Handelssysteme ausgerichtet mit der proprietären Handelsmethoden von entwickelt Connors Forschung. Erfahren Sie mehr über unsere Produkte und Dienstleistungen hierAmibroker Custom Backtester: Schritt für Schritt Tutorium Amibroker ist eines der vielseitigsten Tools für die Entwicklung und das Testen von Handelssystemen. Es hat eine sehr robuste Backtest und Optimierung Motor aus der Box. Darüber hinaus bietet es auch benutzerdefinierte Backtester-Schnittstelle, mit denen Sie spielen können, um die Standard-Backtest-Regeln und Metriken. Es ermöglicht die Anpassung der Operation der backtester8217s zweite Phase, die die Handelssignale verarbeitet. In diesem Beitrag versuchen wir, Amibroker benutzerdefinierte Backtester-Funktionen und Beispiele zu erforschen. Sie sollten bereit sein, schreiben Sie Ihre eigenen benutzerdefinierten Backtest AFL nach dem Lesen dieses Post. Amibroker benutzerdefinierte Backtester-Modell Amibroker verwendet Objekt orientierte Modell für benutzerdefinierte Backtesting. Amibroker stellt ein Backtester-Objekt zur Durchführung von Backtests zur Verfügung. Um das Backtester-Objekt verwenden, müssen Sie zunächst eine Kopie davon bekommen, und weisen Sie die auf Ihre eigene Variable: bo GetBacktesterObject () Die Variable 8220bo8221 ist Ihre eigene Variable, und man kann es nennen, wie Sie innerhalb der Benennungsregeln von AFL mögen. Die Schnittstelle stellt auch das Signalobjekt, das Objektstatusobjekt und das Handelsobjekt bereit, aber nur Objekt, das direkt von AFL zugänglich ist, ist Backtester-Objekt, alle anderen Objekte sind durch Aufrufen von Backtester-Objektmethoden zugänglich (siehe Abbildung unten). Bildquelle: Amibroker Offizielle Dokumentation Jedes dieser Objekte verfügt über mehrere Methoden, die aus dem AFL-Code heraus zugänglich sind. Die detaillierte Dokumentation dieser Methoden finden Sie hier. Die Amibroker benutzerdefinierte Backtester-Schnittstelle bietet drei Ebenen der Benutzer-Anpassung, die einfach als High-Level, Mid-Level und Low-Level. Der High-Level-Ansatz erfordert am wenigsten Programmierkenntnisse und der Low-Level-Ansatz am meisten. High-Level-Ansatz (die einfachste) 8211 Backtest () Methode verwendet und es läuft Standard-Backtest-Verfahren (wie in alten Versionen) 8211 ermöglicht eine einfache Implementierung von kundenspezifischen Metriken Mid-Level-Ansatz 8211 mit Vorprozess () ProcessTradeSignal () Postprocess () Methoden 8211 können Signale zu ändern, abfragen offenen Positionen (gut für die erweiterte Position Sizing) Low-Level-Ansatz (der komplexeste) 8211 Vorprozess () EnterTrade () ExitTrade () ScaleTrade () UpdateStats () HandleStops () Postprocess () Methoden 8211 bietet mit Volle Kontrolle über den gesamten Backtest-Prozess für Hard-Code-Programmierer nur mit dem Amibroker benutzerdefinierte Backtester-Schnittstelle Um Ihre eigenen benutzerdefinierten Backtest-Verfahren verwenden, müssen Sie zuerst zu Amibroker sagen, dass Sie dies tun werden. Es gibt mehrere Möglichkeiten, dies zu tun: Durch Setzen eines Pfades zu der Datei, die die Prozedur in der Portfolio-Seite Automatische Analyseeinstellungen enthält. Dieses Verfahren wird dann mit allen Backtests verwendet, wenn das Kontrollkästchen 8220Enable custom backtest procedure8221 aktiviert ist. Durch Angabe dieser beiden Einstellungen in Ihrem AFL-Code mit den Funktionen SetOption (8220UseCustomBacktestProc8221, True) und SetCustomBacktestProc (8220ltpath auf Prozedur AFL filegt8221). Beachten Sie, dass Pfadtrennzeichen in Zeichenketten zwei Backslashes verwenden müssen, z. B. 8220c: AmiBrokerFormulasCustomBacktestsMyProc. afl8221. Indem Sie die Prozedur in der gleichen Datei wie die anderen AFL-Code und mit der Anweisung SetCustomBacktestProc (82208221). Dies sagt AmiBroker, dass es eine eigene Backtest-Prozedur gibt, aber there8217s keinen Pfad dafür, weil es8217s in der aktuellen Datei. Diese Option wird in den nachfolgenden Beispielen verwendet. Das nächste, was in allen Backtest-Prozeduren erforderlich ist, besteht darin, sicherzustellen, dass das Verfahren nur während der zweiten Phase des Backtests läuft. That8217s mit der folgenden bedingten Anweisung erreicht: Und schließlich, bevor irgendetwas anderes getan werden kann, wird eine Kopie des Backtester Objekt benötigt: Also alle Prozeduren benutzerdefinierte Backtest, wo they8217re in der gleichen Datei wie die anderen AFL-Code, wird eine Vorlage haben wie Diese: Amibroker Custom Backtester Beispiele Beispiel 1: ProfitLoss-Prozentsatz für einzelne Symbole im Portfolio-Backtest Diese AFL berechnet ProfitLoss für jeden einzelnen Scripts im Portfolio Backtesting. Dies kann dazu beitragen, zu bestimmen, auf welchen Wertpapieren das Handelssystem gut funktioniert und an welchen Wertpapieren es sich nicht handelt. Beispiel 2: Relatives durchschnittliches ProfitLoss für jeden Trade Diese AFL fügt eine Metrik in das Trade Log ein, die für jeden gewinnenden Handel spezifiziert, wie weit über oder unter dem durchschnittlichen Gewinngewinn als Prozentsatz liegt, und in ähnlicher Weise für jeden verlierenden Handel, wie weit Über oder unter dem durchschnittlichen Verlust als Prozentsatz. Dazu benötigen wir die Werte 8220WinnersAvgProfit8221 und 8220LosersAvgLoss8221 aus dem Stats-Objekt und den Profit aus den Trade-Objekten für jeden geschlossenen Handel (für dieses Beispiel ignorieren wir offene Positionen). Relative Verlustprozentsätze werden als negative Zahlen angezeigt. Post navigation
No comments:
Post a Comment