Bli medlem i dag
ProBacktest/probacktest · proorder

Set Stop Profit

Set Stop Profit plasserer en stop i en fast gevinstavstand fra inngangen i ProBacktest og ProOrder, i poeng, prosent, valuta eller prisenheter, og låser inn gevinster.

Syntaks

probuilder
SET STOP PPROFIT x
SET STOP %PROFIT x
SET STOP $PROFIT x
SET STOP PROFIT x

Parametere

NavnTypeStandardBeskrivelse
xtallingenGevinstavstand mellom inngangsprisen og stoppen, i enheten som varianten innebærer, punkter, prosent, kontovaluta eller prisenheter.

Slik fungerer det

En vanlig SET STOP LOSS plasserer stoppen på tapssiden av inngangen. Set Stop Profit snur dette: stoppen plasseres i en gevinstavstand fra inngangen, over inngangen for en long posisjon og under den for en short. Når den først er aktiv, kan posisjonen ikke lenger lukkes med tap, og hvis prisen trekker seg tilbake til stoppnivået, går handelen ut med x enheter gevinst sikret.

Kommandoen er en generalisering av SET STOP BREAKEVEN, som er spesialtilfellet der man låser nøyaktig null. Set Stop Profit låser i stedet et valgt positivt beløp. De fire variantene skiller seg bare i hvordan avstanden måles: PPROFIT teller punkter, %PROFIT en prosentandel av inngangsprisen, $PROFIT et beløp i kontovalutaen, og PROFIT prisenheter av instrumentet.

Timing er den kritiske detaljen. En stopp plassert på gevinstsiden av inngangen er bare meningsfull når prisen allerede har beveget seg forbi det nivået. Kalles den for tidlig, ligger stoppnivået på feil side av gjeldende pris og posisjonen lukkes umiddelbart. Instruksjonen ligger derfor alltid bak en sjekk som kontrollerer både at en posisjon er åpen og at den åpne gevinsten er stor nok.

Eksempler

Eksempel 1, Låse 10 punkter når handelen har løpt (ProOrder)

probuilder
// After 20 points of gain, guarantee at least 10 points of profit
IF longonmarket AND close - tradeprice >= 20 * pointsize THEN
  SET STOP PPROFIT 10
ENDIF

Når long-posisjonen er 20 poeng i gevinst, flyttes stoppen til 10 poeng over inngangen. Handelen kan nå ikke ende dårligere enn 10 poeng i pluss. Den SET STOP PPROFIT 10 kallet følger eksempelet fra den offisielle referansen, pakket inn i de påkrevde vaktvilkårene.

Eksempel 2, Prosentbasert gevinstlås (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

IF NOT onmarket AND close CROSSES OVER Average[50](close) THEN
  BUY 1 CONTRACT AT MARKET
  SET STOP %LOSS 1
ENDIF

// Once up 2 percent, lock in 1 percent of profit
IF longonmarket AND close >= tradeprice * 1.02 THEN
  SET STOP %PROFIT 1
ENDIF

Handelen starter med en vanlig stop loss på 1 prosent. Etter en gevinst på 2 prosent flyttes stoppen til gevinstsiden og sikrer 1 prosent, og erstatter den opprinnelige stoppen.

Eksempel 3, Trinnvis gevinstlåsing i prisenheter (ProBacktest)

probuilder
// Raise the locked profit in steps as the trade extends
IF longonmarket THEN
  gain = close - tradeprice
  IF gain >= 100 THEN
    SET STOP PROFIT 50
  ELSIF gain >= 50 THEN
    SET STOP PROFIT 20
  ENDIF
ENDIF

Det låste beløpet skrur seg opp med den åpne gevinsten, 20 enheter sikret etter en bevegelse på 50 enheter, 50 enheter etter en bevegelse på 100 enheter. Å sortere betingelsene fra største til minste holder den høyeste låsen aktiv.

Vanlige feil og fallgruver

  • Kalt før gevinsten finnes. Hvis den åpne gevinsten er mindre enn x, ligger stoppnivået bortenfor gjeldende pris og posisjonen lukkes umiddelbart. Kombiner alltid kommandoen med en betingelse på den åpne gevinsten, for eksempel close - tradeprice >= threshold.
  • Én plass for stop. Set Stop Profit skriver til den samme interne stoppen som SET STOP LOSS, trailing-variantene, og SET STOP BREAKEVEN. Det siste kallet vinner, så å blande profittlåser med en trailing stop på vekslende barer gir uforutsigbare utganger.
  • Forveksling av enheter mellom varianter. PPROFIT er punkter, %PROFIT prosent, $PROFIT kontovaluta, PROFIT prisenheter. På instrumenter der punktstørrelse og prisenhet er forskjellige, plasserer feil variant låsen langt fra det tiltenkte nivået.
  • Låst gevinst er ikke garantert live. Backtester fyller stoppen nøyaktig på nivået. Live stopper kan gli i raske markeder, så den realiserte gevinsten kan bli litt lavere enn det låste beløpet.
  • Set Target Loss, den speilvendte kommandoen, et mål plassert på en tapsavstand.
  • SET, prefiks for alle ordrehåndteringsdeklarasjoner.
  • STOP, den beskyttende stop-siden av SET-instruksjonen.
  • PPROFIT, gevinstavstand målt i punkter.
  • %PROFIT, gevinstavstand målt i prosent.
  • $PROFIT, gevinstavstand målt i kontovaluta.
  • PROFIT, gevinstavstand målt i prisenheter.
  • BREAKEVEN, låser nøyaktig null, spesialtilfellet av denne kommandoen.
  • TRADEPRICE, inngangsprisen for den gjeldende posisjonen.