Word nu lid
ProBacktest/probacktest · proorder

%LOSS

De instructie %LOSS stelt een stop loss in als een percentage onder de gemiddelde positieprijs met SET STOP %LOSS in ProRealTime™ ProBacktest- en ProOrder-code.

Syntaxis

probuilder
SET STOP %LOSS x

Parameters

NaamTypeStandaardBeschrijving
xnumeriekgeenProcentuele afstand vanaf de gemiddelde positiekoers waarop de stop loss afgaat. Accepteert decimalen, dus 1.5 betekent 1.5 procent.

Hoe het werkt

%LOSS combineert met SET STOP alleen. De instructie definieert een stop loss als een relatieve afstand: voor een long positie ligt het uitstapniveau x procent onder de gemiddelde positieprijs, en voor een short positie ligt hij x procent erboven. Omdat het niveau wordt afgeleid van de positieprijs in plaats van een vaste prijs, past dezelfde coderegel zich aan elk instrument en elk instapniveau aan.

De instructie is declaratief. Zodra ze wordt uitgevoerd, geldt de stop voor de huidige positie en voor elke toekomstige positie die de strategie opent, totdat een andere SET STOP call hem vervangt. Hem één keer tegen het einde van de code plaatsen is het gebruikelijke patroon. Het aanroepen SET STOP %LOSS 0 verwijdert de stop.

Wanneer meerdere orders worden gecumuleerd in één positie, wordt het percentage berekend over de gemiddelde prijs van de hele positie. Op IG- en PRT-CFD-accounts koppelt het platform de stop aan elke afzonderlijke order, zodat elke order zijn eigen beschermingsniveau draagt.

De tegenhanger aan de targetzijde is SET TARGET %PROFIT. De omgekeerde combinaties, een stop in de winstzone of een target in de verlieszone, worden apart gedocumenteerd onder Set Stop Profit en Set Target Loss.

Voorbeelden

Voorbeeld 1, MACD-instap met een stop van 2 procent (ProBacktest)

probuilder
myMACD = MACD[12,26,9](close)
long = myMACD crosses over 0
IF NOT LongOnMarket AND long THEN
    BUY 1 CONTRACTS AT MARKET
ENDIF
// Protective stop 2 percent below the average position price
SET STOP %LOSS 2

De strategie koopt wanneer de MACD-lijn boven nul kruist. Wat de instapprijs ook blijkt te zijn, de stop ligt altijd 2 procent eronder.

Voorbeeld 2, Procentuele stop op een short positie (ProOrder)

probuilder
fast = Average[10](close)
slow = Average[40](close)
IF NOT ShortOnMarket AND fast crosses under slow THEN
    SELLSHORT 1 CONTRACT AT MARKET
ENDIF
// For shorts the stop sits 1.5 percent ABOVE the position price
SET STOP %LOSS 1.5

Dezelfde instructie beschermt short posities. Het platform spiegelt de afstand automatisch, dus een tekenwisseling in de code is niet nodig.

Voorbeeld 3, Volledige procentuele bracket rond de instap (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

rsiVal = RSI[14](close)
IF NOT OnMarket AND rsiVal < 30 THEN
    BUY 1 CONTRACT AT MARKET
ENDIF

// Risk 1 percent, aim for 2 percent, a fixed 1:2 bracket
SET STOP %LOSS 1
SET TARGET %PROFIT 2

Combineren SET STOP %LOSS met SET TARGET %PROFIT bouwt een symmetrische bracket op procentbasis die meeschaalt met de prijs van het instrument.

Veelvoorkomende fouten en valkuilen

  • Percentage van de prijs, niet van de equity. SET STOP %LOSS 2 riskeert 2 procent van de positieprijs, niet 2 procent van het account. Bij een positie met hefboom kan de impact op de equity veel groter zijn. Reken zorgvuldig om wanneer je een risico-per-traderegel naar deze instructie overzet.
  • Verkeerde SET-combinatie. De gedocumenteerde vorm is SET STOP %LOSS. Het procentuele target is een ander keyword, SET TARGET %PROFIT. Als je die twee verwisselt, compileert het niet of ontstaat er een uitstap aan de verkeerde kant van de instap.
  • De laatste SET STOP wint. %LOSS, $LOSS, PLOSS, %TRAILING en BREAKEVEN schrijven allemaal naar hetzelfde interne stopslot. Alleen de meest recente SET STOP aanroep actief is, dus wisselen tussen vormen per bar leidt tot onvoorspelbare exits.
  • Plaatsing binnen conditionele blokken. De instructie verpakken in een IF die op slechts één bar waar is werkt nog steeds, omdat de instelling behouden blijft, maar hem elke bar opnieuw uitvoeren met een andere waarde verlegt de stop stilzwijgend. Houd hem onvoorwaardelijk, tenzij het verleggen de bedoeling is.
  • $LOSS, stop loss als vast geldbedrag.
  • PLOSS, stop loss als afstand in punten.
  • %PROFIT, take profit als percentage van de positieprijs.
  • %TRAILING, trailing stop als percentage van de positieprijs.
  • BREAKEVEN, verplaatst de stop of het target naar de instapprijs.
  • STOP, pending stoporders en de SET STOP-familie.
  • Set Target Loss, target geplaatst in de verlieszone, de omgekeerde vorm.
  • TRADEPRICE, instapprijs van een bepaalde trade.
  • POSITIONPRICE, gemiddelde prijs van de open positie.
  • LONGONMARKET, waar zolang er een long positie open is.