Prop Firm Circuit Breaker
- Utilitys
-
Seckin Erkut
Algo Trading Systems Developer. I develop strategies and portfolios not by hypes but from solid academic literature. - Version: 1.50
Strenge Limits für Prop-Firm- und Challenge-Konten
Die Regeln von Prop-Firmen sind keine Empfehlungen. Wer das tägliche Verlustlimit auch nur um einen Dollar überschreitet, verliert sein Konto – ganz gleich, wie die Kapitalkurve eine Stunde zuvor aussah. Das Problem ist, dass die Regel auf dem Server der Firma gespeichert ist, während Ihre Positionen in Ihrem Terminal liegen, und es in MetaTrader 5 keine Verbindung zwischen beiden gibt. „Prop Firm Circuit Breaker“ befindet sich auf einem Chart und überwacht das gesamte Konto. Der Name ist wörtlich zu nehmen: So wie eine Börse den Handel aussetzt, wenn ein Schwellenwert überschritten wird, tut dies auch dieses Tool. Sobald ein von Ihnen festgelegtes Limit erreicht ist, schließt es alle Positionen und verhindert, dass das Konto wieder handelt, bis die Bedingung zurückgesetzt ist. Es überwacht jede Position auf dem Konto, einschließlich derer, die Sie manuell eröffnet haben, und derer, die von anderen Expert Advisors eröffnet wurden. Es gibt keinen Filter für „magische Zahlen“.
Was es schützt
- Täglicher Drawdown. Gemessen entweder anhand des zu Beginn Ihres Handelstages festgelegten Guthabens oder als Trailing-Wert des während des Handelstages erreichten höchsten Eigenkapitals. Der Trailing-Modus ist der strengere: Er erfasst den Trader, der zur Mittagszeit 800 im Plus liegt und bis zum Handelsschluss alles wieder verliert. Das Limit wird in Ihrer Kontowährung oder als Prozentsatz angegeben, und der Referenzwert wird täglich zu einem von Ihnen gewählten Zeitpunkt (in Broker-Serverzeit) neu berechnet.
- Regel „1 % in 1 Stunde für korrelierte Paare“. EURUSD und GBPUSD verlieren nicht unabhängig voneinander Geld, ebenso wenig wie NAS100 und SP500. Definieren Sie bis zu fünf Gruppen. Wenn der kombinierte Verlust innerhalb einer Gruppe Ihr Limit innerhalb eines rollierenden Zeitfensters überschreitet, wird diese Gruppe für die Dauer des Zeitfensters gesperrt, und jede neue Position auf diesen Symbolen wird sofort geschlossen. Die anderen Gruppen handeln weiter.
- Kapitalziel. Challenge-Konten gehen nach Erreichen des Ziels weitaus häufiger verloren als zuvor. Legen Sie das Ziel fest, und sobald das Kapital dieses erreicht, schließt der EA alle Positionen und sperrt das Konto dauerhaft. Die Sperre wird auf die Festplatte geschrieben, sodass ein Neustart des Terminals oder des VPS dem Konto keinen erneuten Versuch mit demselben Wert ermöglicht.
- Die Uhr. Schließen Sie täglich zu einer festgelegten Zeit alle Positionen und erneut am Freitag vor der Wochenendlücke. Beides erfolgt nach der Zeit des Broker-Servers.
- Ein- und Auszahlungen sind keine Verluste. Eine Auszahlung verringert das Eigenkapital, ohne dass ein einziger Trade platziert wird. Der EA erkennt Kontostandsänderungen und verschiebt den täglichen Referenzwert sowie den Höchststand um denselben Betrag, sodass der Spielraum, den Sie eine Sekunde zuvor hatten, der Spielraum ist, den Sie weiterhin haben. Ohne diese Funktion würde eine Auszahlung als sofortiger Drawdown gewertet und das Konto liquidieren.
- Fehlende Stop-Losses. Jede Position, die ohne Stop-Loss erscheint, erhält innerhalb einer Viertelsekunde einen, dessen Größe so bemessen ist, dass der Verlust beim Erreichen des Stop-Loss dem von Ihnen festgelegten Betrag entspricht. Die Mindestabstände des Brokers werden eingehalten.
So ist er aufgebaut
- Ein 250-ms-Watchdog, kein Tick-Handler. Das Chart-Symbol kann minutenlang inaktiv sein, während das Konto bei einem anderen Symbol Verluste verzeichnet. Dieser EA wartet nicht auf einen Tick.
- Der Status bleibt bei Neustarts erhalten. Die tägliche Referenz, der Intraday-Höchststand, jede Sperre und jede Markierung für einen geplanten Abschluss werden sowohl in die globalen Variablen des Terminals als auch in eine Datei geschrieben. Ein Neustart kann dem Konto keine neue Tagesquote zuweisen.
- Jede Kontowährung. Alle Geldeinstellungen werden in der Währung des Kontos gelesen und mit den für diese Währung typischen Dezimalstellen formatiert. USD-, EUR-, GBP-, JPY- und Cent-Konten verhalten sich alle korrekt.
- Die Symbelnamen der Broker werden automatisch aufgelöst. Geben Sie `EURUSD` ein, und der EA findet `EURUSD.pro`, `mEURUSD` oder wie auch immer Ihr Broker es nennt. Präfix und Suffix können auch explizit angegeben werden.
- Keine DLL, kein Internetzugang, keine externen Abhängigkeiten.
Ehrliche Einschränkungen – bitte vor der Installation lesen
- Dieser EA kann nicht verhindern, dass ein anderer Expert Advisor einen Trade eröffnet. MQL5 bietet keinen Mechanismus dafür. Er erkennt die neue Position jedoch innerhalb von Millisekunden und schließt sie. In der Praxis besteht die Position für den Bruchteil einer Sekunde und kostet Sie den Spread. Wenn Sie einen Hochfrequenz-EA parallel zu einem Lock-EA laufen lassen, müssen Sie mit diesen Spread-Kosten rechnen.
- Er kann die Schaltfläche „AutoTrading“ nicht deaktivieren. Dies ist eine terminale Steuerung ohne API.
- Ein geplanter Schluss, der verpasst wurde, während das Terminal ausgefallen war, wird nicht nachträglich ausgeführt. Wenn Ihr täglicher Schluss um 23:50 Uhr ist und Sie das Terminal um 01:00 Uhr starten, markiert der EA diesen Vorgang als erledigt, anstatt Positionen zu liquidieren, die danach eröffnet wurden. Ein Neustart innerhalb von fünf Minuten nach dem geplanten Zeitpunkt führt weiterhin zum Schluss.
- Der EA muss laufen. Es handelt sich um ein terminalseitiges Tool. Wenn MetaTrader geschlossen ist, wird nichts geschützt. Verwenden Sie einen VPS.
- Dies ersetzt nicht das Lesen des Regelwerks Ihrer Prop-Firma. Sie konfigurieren die Werte; der EA setzt um, was Sie konfiguriert haben, nicht das, was Ihre Firma tatsächlich verlangt.
MetaTrader 5, beliebiger Broker, beliebige Kontowährung, Hedging oder Netting. Ein Chart, beliebiges Symbol, beliebiger Zeitrahmen. Algo-Trading aktiviert.
INSTALLATION
- Fügen Sie den EA nur einem Chart hinzu. Das Symbol und der Zeitrahmen spielen keine Rolle – er liest niemals die eigenen Kursdaten des Charts aus. Wenn Sie zwei Instanzen auf demselben Konto ausführen, konkurrieren diese um dieselben Schlusskurse.
- Aktivieren Sie den Algo-Handel im Terminal.
- Stellen Sie `InpDayStartTime` auf die von Ihrer Prop-Firma verwendete tägliche Rücksetzzeit ein, angegeben in der Serverzeit Ihres Brokers. Wenn Ihre Firma um 17:00 Uhr New Yorker Zeit zurücksetzt und Ihr Broker GMT+2 verwendet, ist das `00:00`. Überprüfen Sie die Serverzeit Ihres Brokers im Fenster „Marktbeobachtung“, anstatt davon auszugehen.
- Aktivieren Sie nur die Module, die Sie benötigen. Standardmäßig ist alles deaktiviert, mit Ausnahme des Panels und der Terminal-Benachrichtigungen.
- Lassen Sie das Terminal laufen. Ein VPS wird dringend empfohlen – ein Risikomanager, der nicht läuft, schützt nichts.
Erster Start. Das Journal gibt eine Zeile aus, in der die Kontonummer, der Kontotyp, die Währung, die aktiven Module und die Rücksetzzeit bestätigt werden. Wenn diese Zeile nicht erscheint, überprüfen Sie die Registerkarte „Experts“ auf einen Parameterfehler.
SO FUNKTIONIERT JEDES MODUL
Täglicher Drawdown
Der Referenzwert wird zu jedem Tageswechsel aus dem höheren Wert von Saldo und Eigenkapital neu berechnet. Bei der saldo-basierten Berechnung wird der Verlust anhand dieses festen Wertes gemessen; bei der eigenkapital-basierten Berechnung erfolgt die Messung anhand des höchsten Eigenkapitals seit dem Tageswechsel, sodass die Rückgabe Ihres Limits auch dann ausgelöst wird, wenn Sie an diesem Tag im Plus liegen. Ein prozentuales Limit ist ein Prozentsatz des Referenzwerts zu Tagesbeginn, der für die Sitzung festgesetzt ist. Ein- und Auszahlungen verschieben den Referenzwert und den Höchststand gemeinsam, sodass eine Auszahlung niemals als Verlust ausgewiesen wird. Bei Überschreitung werden alle Positionen geschlossen und bleiben bis zum nächsten Reset geschlossen.
Sperre für korrelierte Gruppen
Fünf Gruppen von durch Kommas getrennten Symbolen teilen sich eine Fensterlänge und ein Verlustlimit. Unbekannte Symbole werden gemeldet und übersprungen. „Geschlossene Trades“ summiert nur die innerhalb des Fensters geschlossenen Geschäfte, einschließlich Swap und Provision, und sperrt ab dem letzten Verlustgeschäft. „Geschlossene Trades plus offener Gewinn“ addiert das schwankende Ergebnis der Gruppe und sperrt ab dem Auslösepunkt. Es handelt sich um Alternativen, nicht um zwei Budgets.
Beispiel: Fenster 60, Limit 1000, Gruppe EURUSD, GBPUSD. EURUSD schließt um 10:00 Uhr mit −500 und GBPUSD um 10:40 Uhr mit −500, sodass die Gruppe bis 11:40 Uhr gesperrt bleibt, während der Handel mit NAS100 weiterläuft. Bei einem Abstand von vier Stunden wird nichts gesperrt: Zwei Verluste innerhalb einer Stunde bei korrelierten Paaren stellen ein korreliertes Ereignis dar, zwei Verluste über eine gesamte Handelssitzung hinweg sind normaler Handel.
Nach Ablauf einer Sperre zählen nur die seit ihrem Ende geschlossenen Trades für die nächste Sperre.
Eigenkapitalziel
Das Eigenkapital erreicht das Ziel, alles wird geschlossen, das Konto wird über Neustarts hinweg dauerhaft gesperrt. Um die Sperre aufzuheben, setzen Sie „InpUseEquityTarget“ auf „false“ und starten Sie neu – eine Sperre, aus der Sie sich durch einen Neustart befreien können, ist keine Sperre.
Tagesabschluss und Freitagsabschluss
HH:MM nach Broker-Serverzeit, einmal pro Ereignis. Ein Termin, der während eines Terminalausfalls verpasst wurde, wird als „bearbeitet“ und nicht als „verspätet“ markiert; ein Neustart innerhalb von fünf Minuten nach diesem Zeitpunkt führt dennoch zur Schließung.
Automatischer Stop-Loss
Es werden nur Positionen ohne Stop-Loss berücksichtigt. Der Abstand ergibt sich aus Lotgröße und Tick-Wert, sodass der Verlust beim Stop-Loss Ihrem angegebenen Wert entspricht; „Prozent“ bezieht sich auf den Prozentsatz des Guthabens, niemals auf das Eigenkapital. Ein Stop-Loss innerhalb des Mindestabstands des Brokers wird auf den nächstgelegenen zulässigen Kurs angepasst.
FRAGEN
Wird das Programm Trades schließen, die von meinem anderen EA eröffnet wurden? Ja. Es gibt keinen Filter für „magische Zahlen“ – jede Position auf dem Konto fällt in den Anwendungsbereich. Das ist der springende Punkt, und genau darüber sollten Sie sich im Klaren sein, bevor Sie das Programm installieren.
Kann es meinen anderen EA daran hindern, den Trade überhaupt erst zu eröffnen? Nein. MQL5 bietet keine Möglichkeit, dies zu tun. Die Position wird innerhalb von Millisekunden erkannt und geschlossen, was den Spread kostet. Es gibt kein Produkt auf der Plattform, das dies besser kann, egal was in der Beschreibung behauptet wird.
Funktioniert es im Strategietester? Es läuft fehlerfrei und wechselt dort zu einem 1-Sekunden-Timer anstelle des Live-Watchdogs mit 250 ms, sodass ein Test nicht durch Millionen von Timer-Ereignissen verlangsamt wird. Es eröffnet keine eigenen Trades, daher gibt es wenig zu sehen, und Warnmeldungen sowie Push-Benachrichtigungen werden unterdrückt. Dies ist ein Live-Tool.
Mein Konto lautet auf EUR / GBP / JPY. Muss ich die Limits in Dollar angeben? Nein. Alle Geldeinstellungen erfolgen in Ihrer Kontowährung, und das Bedienfeld sowie das Journal kennzeichnen jeden Wert damit. Nichts in diesem Produkt geht von Dollar aus.
Mein Broker nennt es „EURUSD.pro“. Was gebe ich in das Feld „Gruppe“ ein? „EURUSD“. Die Erkennung kümmert sich um den Rest. Füllen Sie die Felder für Präfix und Suffix nur aus, wenn die automatische Auswahl falsch ist.
Zwei Instanzen auf zwei Charts? Tun Sie das nicht. Sie würden bei denselben Schlusskursen miteinander konkurrieren. Ein Chart reicht aus – der EA liest niemals das eigene Symbol des Charts.
Die tägliche Sperre wurde ausgelöst. Wie kann ich wieder handeln? Warten Sie auf „InpDayStartTime“. Die Sperre wird mit dem täglichen Reset aufgehoben. Es gibt keine manuelle Übersteuerung, denn ein Limit, das man einfach außer Kraft setzen kann, ist kein Limit.
Die Equity-Ziel-Sperre wurde ausgelöst und ich möchte weiter handeln. Setze „InpUseEquityTarget“ auf „false“ und starte den EA neu. Er wird die Aufhebung im Journal vermerken.
Ich habe eine Auszahlung vorgenommen und das Konto wurde nicht geschlossen. Ist das richtig? Ja. Eine Ein- oder Auszahlung verschiebt die tägliche Referenz und den Höchststand um denselben Betrag, sodass eine Auszahlung nicht mit einem Handelsverlust verwechselt werden kann. Das Journal protokolliert die Anpassung.
Netting oder Hedging? Beides wird unterstützt.
Benötigt es einen Internetzugang, einen Lizenzserver oder eine DLL? Keines von dreien.
Dies ist ein Sicherheitsgurt, kein Fahrer. Es verbessert keine Strategie, wählt keine Einstiegspunkte aus und macht ein verlustreiches System nicht profitabel. Es sorgt lediglich dafür, dass eine einzige schlechte Stunde nicht das Konto ruinieren kann, dessen Aufbau Wochen gedauert hat.
Es ist zudem nur so korrekt wie die Zahlen, die Sie eingeben. Lesen Sie das Regelwerk Ihres Unternehmens, überprüfen Sie die Serverzeit Ihres Brokers und legen Sie Ihre Limits etwas unterhalb der vom Unternehmen vorgegebenen Grenzwerte fest, anstatt genau auf diesen.
Der Support erfolgt über den Kommentarbereich des Produkts.
