Jetzt beitreten
ProBacktest/probacktest · proorder

LOSS

LOSS setzt mit SET STOP LOSS x in ProBacktest und ProOrder einen Stop Loss, der einen Verlusttrade schließt, sobald sich der Kurs x Kurseinheiten gegen den durchschnittlichen Einstiegskurs bewegt.

Syntax

probuilder
SET STOP LOSS x

Parameter

NameTypStandardBeschreibung
xnumerischkeineAbstand vom durchschnittlichen Positionspreis, ausgedrückt in den Kurseinheiten des gehandelten Instruments.

So funktioniert es

SET STOP LOSS registriert einen Schutzstop bei der Ausführungsengine. Der Abstand x wird vom durchschnittlichen Positionspreis gemessen, bei einer Long-Position liegt der Stop also beim Einstieg minus x, und für eine short-Position beim Einstieg plus x. Derselbe positive Wert funktioniert für beide Richtungen, die Engine dreht die Seite automatisch.

Der Abstand wird in rohen Kurseinheiten angegeben. Bei einem Instrument, das mit fünf Dezimalstellen notiert wird, SET STOP LOSS 0.0050 setzt den Stop 50 Pips entfernt. Bei einem Index, der in ganzen Punkten notiert, würde dieselbe Anweisung ihn einen halben Cent entfernt setzen, was fast sicher falsch ist. Für Abstände in Punkten oder Pips unabhängig von der Notierung, SET STOP PLOSS ist die sicherere Variante, und SET STOP %LOSS drückt den Abstand als Prozentsatz des Einstiegskurses aus.

Der Befehl ist deklarativ. Einmal ausgeführt, bleibt der Stop an die aktuelle Position und an nachfolgende Positionen gebunden, bis ein anderer SET STOP Anweisung ersetzt sie oder SET STOP LOSS 0 hebt sie auf. Üblich ist, die Anweisung direkt nach der Einstiegsorder zu platzieren, damit beide immer synchron sind.

In ProBacktest wird der Stop gegen Intrabar-Hochs und -Tiefs geprüft, im Live-Betrieb von ProOrder liegt er beim Broker und kann in schnellen Märkten mit Slippage ausgeführt werden.

Beispiele

Beispiel 1, MACD-Einstieg mit Stop in festem Abstand (ProOrder)

probuilder
myMACD = MACD[12,26,9](close)
long = myMACD crosses over 0

IF NOT LongOnMarket AND long THEN
  BUY 1 CONTRACTS AT MARKET
  // stop placed 0.0050 price units below the average entry price
  SET STOP LOSS 0.0050
ENDIF

Eine Long-Position wird eröffnet, wenn die MACD-Linie über null kreuzt, mit einem Stop 0.0050 Kurseinheiten unter dem Einstieg. Der Wert passt zu einem Instrument, das mit fünf Dezimalstellen notiert wird, etwa einem wichtigen Währungspaar.

Beispiel 2, Volatilitätsskalierter Stop-Abstand (ProBacktest)

probuilder
// distance adapts to current volatility
atr = AverageTrueRange[14](close)

IF NOT OnMarket AND close crosses over Average[50](close) THEN
  BUY 1 CONTRACT AT MARKET
  SET STOP LOSS 2 * atr
ENDIF

Der Stop-Abstand beträgt zwei ATRs, sodass er sich in volatilen Märkten weitet und in ruhigen verengt. Der Ausdruck wird bei jedem Einstieg neu berechnet, wodurch das Risiko proportional zu den Bedingungen bleibt.

Beispiel 3, Stop auf der Short-Seite (ProOrder)

probuilder
short = close crosses under Average[100](close)

IF NOT ShortOnMarket AND short THEN
  SELLSHORT 1 CONTRACT AT MARKET
  // same positive distance, the engine places it above the short entry
  SET STOP LOSS 0.0080
ENDIF

Bei einer Short-Position platziert die Engine den Stop über dem durchschnittlichen Einstiegskurs. Der Abstand bleibt eine positive Zahl, ein Vorzeichenwechsel ist nicht nötig.

Häufige Fehler und Stolperfallen

  • Kurseinheiten, nicht Punkte. x ist ein reiner Preisabstand. SET STOP LOSS 10 bei einem Währungspaar mit fünf Dezimalstellen bedeutet 10.0000 im Kurs, ein enormer Abstand. Für einen 10-Pip-Stop schreiben Sie SET STOP LOSS 10 * PipSize oder verwenden Sie SET STOP PLOSS 10.
  • Gemessen vom Einstieg, nicht vom aktuellen Kurs. Das Stop-Niveau ist am durchschnittlichen Positionspreis verankert. Ein späteres erneutes Aufrufen der Anweisung zieht den Stop nicht vom letzten Schlusskurs nach, sondern verankert denselben Abstand erneut am Einstieg. Nachziehen erfordert $TRAILING, %TRAILING, oder TRAILING Varianten.
  • Die Einstellung bleibt bestehen. A SET STOP LOSS die einmal ausgeführt wurde, gilt weiterhin für jede spätere Position, bis sie ersetzt wird. Eine Strategie, die in einem Zweig einen engen Stop setzt und ihn an anderer Stelle nicht zurücksetzt, trägt diesen Stop in unverwandte Trades hinein.
  • Die Ausführungen im Backtest sind optimistisch. ProBacktest geht davon aus, dass der Stop genau auf seinem Niveau ausgeführt wird. Live-Stops können in schnellen Märkten über das Niveau hinaus rutschen, sodass realisierte Verluste den konfigurierten Abstand übersteigen können.
  • %LOSS, Stop Loss als Prozentsatz des Einstiegskurses.
  • $LOSS, Stop Loss als Geldbetrag.
  • PLOSS, Stop Loss als Abstand in Punkten.
  • Set Target Loss, eine Verlustposition bei einem festen nachteiligen Abstand schließen.
  • Set Stop Profit, Stop, der einen Gewinnabstand absichert.
  • STOP, offene Stop-Orders für Einstiege und Ausstiege.
  • TARGET, Take-Profit-Gegenstück der Stop-Familie.
  • BREAKEVEN, verschiebt den Stop oder das Ziel auf den Einstiegskurs.
  • TRADEPRICE, der Einstiegskurs der aktuellen Position.
  • TRAILING, Trailing Stop, der günstigen Kursbewegungen folgt.