Bli medlem i dag
ProBacktest/probacktest · proorder

Set Target Loss

Set Target Loss plasserer utgangsmålet i en tapsavstand fra inngangen i ProBacktest og ProOrder, i poeng, prosent, valuta eller prisenheter. Syntaks og bruk.

Syntaks

probuilder
SET TARGET PLOSS x
SET TARGET %LOSS x
SET TARGET $LOSS x
SET TARGET LOSS x

Merk: syntaksblokken på kildesiden lister opp PROFIT-enhetsstavemåter, en redigeringsfeil som ikke stemmer med dens egen parameterliste og eksempel. Formene ovenfor følger enhetsdefinisjonene og SET TARGET PLOSS eksempelet som er gitt i kildeteksten.

Parametere

NavnTypeStandardBeskrivelse
xtallingenTapsavstand mellom inngangsprisen og målet, i enheten som varianten innebærer, punkter, prosent, kontovaluta eller prisenheter.

Slik fungerer det

En vanlig SET TARGET PROFIT plasserer utgangsmålet på gevinstsiden av inngangen. Set Target Loss snur dette: målet ligger i en tapsavstand fra inngangen, under den for en long posisjon og over den for en short. Handelen lukkes da med et lite, valgt tap hvis prisen henter seg inn til det nivået, i stedet for å vente på en full rundtur tilbake til breakeven eller forbi.

Kommandoen er en generalisering av SET TARGET BREAKEVEN, som er spesialtilfellet der man går ut på nøyaktig null. Set Target Loss godtar i stedet et kontrollert negativt beløp, noe som er nyttig for å komme ut av en handel som har gått hardt mot posisjonen: hvert tilbakeslag som henter inn deler av drawdown lukker handelen før bevegelsen kan fortsette.

Tidspunktet er den avgjørende detaljen, speilet fra Set Stop Profit. Et mål på tapssiden av inngangen er bare meningsfullt så lenge prisen er forbi det, altså så lenge det åpne tapet overstiger x. Kalles det for tidlig, ligger målet på feil side av gjeldende pris, og posisjonen lukkes umiddelbart til gjeldende marked. Instruksjonen hører derfor bak en vakt som sjekker både at det finnes en åpen posisjon og at det åpne tapet er stort nok.

Eksempler

Eksempel 1, Komme ut av en tapende long på ti punkter (ProOrder)

probuilder
// after 20 points of drawdown, exit on any bounce at a 10-point loss
IF longonmarket AND tradeprice - close >= 20 * pointsize THEN
  SET TARGET PLOSS 10
ENDIF

Når long-posisjonen er 20 poeng under vann, flyttes utgangsmålet til 10 poeng under inngangen. Den SET TARGET PLOSS 10 -kallet er eksemplet fra den offisielle referansen, pakket i de nødvendige vaktene; en gjeninnhenting av halve drawdown lukker nå handelen med et begrenset tap.

Eksempel 2, Prosentbasert utgangsnivå (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

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

// two percent against the position: aim to get out at a one percent loss
IF longonmarket AND close <= tradeprice * 0.98 THEN
  SET TARGET %LOSS 1
ENDIF

Handelen starter med en vid stop på 3 prosent. Etter en ugunstig bevegelse på 2 prosent flyttes målet til nivået for 1 prosent tap, slik at en delvis gjeninnhenting avslutter handelen godt før stopen.

Eksempel 3, Trinnvise utgangsnivåer i prisenheter (ProBacktest)

probuilder
// deepen the accepted exit loss as the drawdown grows
IF shortonmarket THEN
  drawdown = close - tradeprice
  IF drawdown >= 100 THEN
    SET TARGET LOSS 50
  ELSIF drawdown >= 50 THEN
    SET TARGET LOSS 20
  ENDIF
ENDIF

For en short-posisjon er tapssiden over inngangen. Det aksepterte utgangstapet utvides trinnvis med drawdown, 20 prisenheter etter en bevegelse på 50 enheter, 50 enheter etter en bevegelse på 100 enheter, sortert med den største først slik at det dypeste nivået holdes aktivt.

Vanlige feil og fallgruver

  • Kalt før tapet finnes. Hvis det åpne tapet er mindre enn x, ligger målet på feil side av gjeldende pris og posisjonen avsluttes umiddelbart. Par alltid kommandoen med en betingelse på drawdown, for eksempel tradeprice - close >= threshold for en long.
  • Én plass for mål. Set Target Loss skriver til det samme interne målet som SET TARGET PROFIT og SET TARGET BREAKEVEN. Det siste kallet vinner, så et senere profittmål forkaster stille escape-nivået.
  • Forveksling av enheter mellom varianter. PLOSS er punkter, %LOSS prosent, $LOSS kontovaluta, LOSS prisenheter. På instrumenter der punktstørrelse og prisenhet er forskjellige, plasserer feil variant nivået langt fra den tiltenkte prisen.
  • Skrivefeil i syntaksen i kilden. Referansedokumentasjonen oppstrøms skriver PROFIT-varianter i syntaksblokken sin mens den beskriver tapsenheter. LOSS-variantene vist ovenfor stemmer med parameterdefinisjonene og det gjennomgåtte eksempelet.
  • Set Stop Profit, den speilvendte kommandoen, en stopp plassert på en gevinstavstand.
  • SET, prefiks for alle ordrehåndteringsdeklarasjoner.
  • TARGET, utgangsmålsiden av SET-instruksjonen.
  • PLOSS, tapsavstand målt i punkter.
  • %LOSS, tapsavstand målt i prosent.
  • $LOSS, tapsavstand målt i kontovaluta.
  • LOSS, tapsavstand målt i prisenheter.
  • BREAKEVEN, går ut på nøyaktig null, spesialtilfellet av denne kommandoen.
  • TRADEPRICE, inngangsprisen for den gjeldende posisjonen.