Set Stop Profit
Set Stop Profit placerar en stop på ett bestämt vinstavstånd från entry i ProBacktest och ProOrder, i punkter, procent, valuta eller prisenheter, och låser in vinster.
Syntax
SET STOP PPROFIT x
SET STOP %PROFIT x
SET STOP $PROFIT x
SET STOP PROFIT xParametrar
| Namn | Typ | Standard | Beskrivning |
|---|---|---|---|
x | tal | ingen | Vinstavstånd mellan entrypriset och stoppen, i den enhet som varianten anger, punkter, procent, kontovaluta eller prisenheter. |
Så fungerar det
En normal SET STOP LOSS placerar stoppen på förlustsidan av entryn. Set Stop Profit inverterar det: stoppen placeras på ett vinstavstånd från entryn, över entryn för en long-position och under den för en short. När den är aktiv kan positionen inte längre stängas med förlust, om priset går tillbaka till stoppnivån avslutas affären med x enheter vinst säkrad.
Kommandot är en generalisering av SET STOP BREAKEVEN, vilket är specialfallet att låsa exakt noll. Set Stop Profit låser i stället ett valt positivt belopp. De fyra varianterna skiljer sig bara i hur avståndet mäts: PPROFIT räknar punkter, %PROFIT en procentandel av entrypriset, $PROFIT ett belopp i kontovalutan och PROFIT prisenheter av instrumentet.
Timingen är den avgörande detaljen. En stop som placeras på vinstsidan av entryn är bara meningsfull när priset redan har rört sig förbi den nivån. Anropas den för tidigt ligger stoppnivån på fel sida av det aktuella priset och positionen stängs omedelbart. Instruktionen ligger därför alltid bakom ett villkor som kontrollerar både en öppen position och en tillräcklig öppen vinst.
Exempel
Exempel 1, Låsa 10 punkter när affären har löpt (ProOrder)
// After 20 points of gain, guarantee at least 10 points of profit
IF longonmarket AND close - tradeprice >= 20 * pointsize THEN
SET STOP PPROFIT 10
ENDIFNär long är 20 punkter i vinst flyttas stoppen till 10 punkter över entry. Affären kan nu inte sluta sämre än 10 punkter i plus. Den SET STOP PPROFIT 10 anrop följer exemplet från den officiella referensen, inkapslat i de nödvändiga skydden.
Exempel 2, Procentbaserad vinstlåsning (ProOrder)
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
ENDIFAffären startar med en vanlig stop loss på 1 procent. Efter en vinst på 2 procent flyttas stoppen till vinstsidan och säkrar 1 procent, vilket ersätter den initiala stoppen.
Exempel 3, Stegvis vinstlåsning i prisenheter (ProBacktest)
// 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
ENDIFDet låsta beloppet räknas upp med den öppna vinsten, 20 enheter säkrade efter en rörelse på 50 enheter, 50 enheter efter en rörelse på 100 enheter. Att ordna villkoren från störst till minst håller den högsta låsningen aktiv.
Vanliga fel och fallgropar
- Anropad innan vinsten finns. Om den öppna vinsten är mindre än x ligger stoppnivån bortom aktuellt pris och positionen stängs omedelbart. Kombinera alltid kommandot med ett villkor på den öppna vinsten, till exempel
close - tradeprice >= threshold. - En stop-plats. Set Stop Profit skriver till samma interna stop som
SET STOP LOSS, trailing-varianterna, ochSET STOP BREAKEVEN. Det senaste anropet vinner, så att blanda vinstlås med en trailing stop på varannan bar ger oberäkneliga exits. - Enheter blandas ihop mellan varianterna. PPROFIT är punkter, %PROFIT procent, $PROFIT kontovaluta, PROFIT prisenheter. På instrument där punktstorlek och prisenhet skiljer sig placerar den felaktiga varianten låsningen långt från den avsedda nivån.
- Låst vinst är inte garanterad live. Backtests fyller stoppen exakt på dess nivå. Live kan stoppar slira i snabba marknader, så den realiserade vinsten kan bli något lägre än det låsta beloppet.
Relaterade instruktioner
Set Target Loss, det spegelvända kommandot, ett mål placerat på ett förlustavstånd.SET, prefix för alla deklarationer för orderhantering.STOP, den skyddande stop-sidan av SET-instruktionen.PPROFIT, vinstavstånd mätt i punkter.%PROFIT, vinstavstånd mätt i procent.$PROFIT, vinstavstånd mätt i kontovalutan.PROFIT, vinstavstånd mätt i prisenheter.BREAKEVEN, låser exakt noll, specialfallet av det här kommandot.TRADEPRICE, entrypriset för den nuvarande positionen.