SHORTONMARKET
SHORTONMARKET i ProBacktest og ProOrder er sann så lenge en short-posisjon er åpen. Bruk den til å sikre short-innganger og -utganger, med gjennomgåtte eksempler.
Syntaks
ShortOnMarketSlik fungerer det
SHORTONMARKET returnerer true så lenge strategien holder en åpen short posisjon, og false når den ikke gjør det. Den leses som en vanlig boolsk verdi, så den passer direkte inn i en IF betingelse, vanligvis negert med NOT for å tillate en ny short bare når ingen er åpen.
Den rapporterer kun om short-posisjoner. For long-posisjoner bruker du LONGONMARKET, og for å teste om en posisjon på en av sidene er åpen, bruk ONMARKET. Å kombinere SHORTONMARKET med en signalbetingelse er standardmåten å styre når en short-inngang eller en short-utgang er tillatt.
Eksempler
Eksempel 1, Sikre en short-inngang (ProBacktest)
// Sell short when MACD crosses below zero, but only if no short is open
myMACD = MACD[12,26,9](close)
short = myMACD CROSSES UNDER 0
IF NOT ShortOnMarket AND short THEN
SELLSHORT 1 CONTRACT AT MARKET
ENDIFDette er mønsteret fra den offisielle referansen. NOT ShortOnMarket hindrer strategien fra å stable en ny short mens én allerede er aktiv.
Eksempel 2, Håndtere en åpen short (ProOrder)
DEFPARAM CumulateOrders = false
// Close the short when price reclaims the 20-period average
IF ShortOnMarket AND close CROSSES OVER Average[20](close) THEN
EXITSHORT AT MARKET
ENDIFUtgangsblokken kjører bare mens en short er åpen, så CROSSES OVER betingelsen sjekkes bare når den er relevant.
Eksempel 3, Én side om gangen (ProOrder)
DEFPARAM CumulateOrders = false
// Allow a long only when neither side is open
IF NOT ShortOnMarket AND NOT LongOnMarket AND close CROSSES OVER Average[50](close) THEN
BUY 1 CONTRACT AT MARKET
ENDIFTesting av begge SHORTONMARKET og LONGONMARKET holder strategien flat før en ny inngang. NOT OnMarket uttrykker samme vern mer kompakt.
Vanlige feil og fallgruver
- Kun short.
SHORTONMARKETignorerer long-posisjoner. En strategi som handler begge sider trengerLONGONMARKETogså, ellerONMARKETfor den kombinerte tilstanden. - Tilstand, ikke et antall. Den rapporterer bare om en short er åpen, ikke størrelsen. For antall aksjer eller kontrakter bruk
COUNTOFSHORTSHARESellerCOUNTOFPOSITION. - Timing på samme bar. En short som åpnes og lukkes innenfor én enkelt bar, etterlater kanskje ikke
SHORTONMARKETtrue slik en posisjon over flere barer ville gjort. For å oppdage en fill på gjeldende bar, brukShortTriggered. - Å glemme vakten. Å utelate
NOT ShortOnMarketpå en inngang lar et vedvarende signal legge til gjentatte shorts, særlig medCumulateOrdersaktivert.
Relaterte instruksjoner
LONGONMARKET, sann så lenge en long-posisjon er åpen.ONMARKET, sann så lenge en posisjon er åpen.ShortTriggered, sann på baren der en short-ordre fylles.NOT, negerer tilstanden for å sikre innganger.SELLSHORT, åpner en short-posisjon.EXITSHORT, lukker en short-posisjon.COUNTOFSHORTSHARES, størrelsen på den åpne short-posisjonen.