Word nu lid
ProBacktest/probacktest · proorder

SELLSHORT

SELLSHORT in ProBacktest en ProOrder opent een short positie tegen marktprijs of met pending orders. SELLSHORT opent shorts terwijl SELL longs sluit. Voorbeelden inbegrepen.

Syntaxis

probuilder
SELLSHORT quantity SHARES AT MARKET
probuilder
SELLSHORT x CONTRACT AT MARKET
probuilder
SELLSHORT x CONTRACT AT price LIMIT
SELLSHORT x CONTRACT AT price STOP

Parameters

NaamTypeStandaardBeschrijving
quantitygetalgeenAantal eenheden om short te gaan. Het keyword voor de eenheid dat volgt, SHARES, CONTRACT of LOT, past bij het type instrument.
pricegetalgeenTriggerniveau voor de pending LIMIT- of STOP-vormen.

Hoe het werkt

SELLSHORT is de instap-instructie aan de shortkant. SELLSHORT quantity SHARES AT MARKET opent een short positie van de opgegeven grootte tegen de volgende beschikbare prijs. Het unit-keyword past zich aan het instrument aan: SHARES voor aandelen, CONTRACT voor futures en CFD's, LOT voor forex.

Pending vormen zijn ook beschikbaar. SELLSHORT ... AT price LIMIT wacht om te shorten op het opgegeven niveau of beter boven de huidige markt, en stapt in op kracht. SELLSHORT ... AT price STOP gaat short zodra de koers door een niveau onder de markt valt, een breakdown-instap. Zoals bij alle openstaande orders in ProBacktest en ProOrder wordt een order dat aan het eind van de volgende bar niet is uitgevoerd geannuleerd en moet het opnieuw worden ingelegd zolang de instapregel geldig blijft.

Het onderscheid met SELL is belangrijk. SELL sluit een open long positie en opent nooit iets; SELLSHORT opent een nieuwe short positie. De vier orderinstructies vormen paren: BUY met SELL voor de long kant, en SELLSHORT met EXITSHORT voor de short kant. Een strategie die SELL uitgeeft terwijl ze short wil gaan doet niets zolang ze geen positie heeft, en de fout is stil omdat de order simpelweg wordt genegeerd.

Voorbeelden

Voorbeeld 1, Voorwaardelijke short entry tegen marktprijs (ProBacktest)

probuilder
// Short when the trend filter turns down and no short is open
ShortConditions = close CROSSES UNDER Average[50](close)
IF NOT ShortOnMarket AND ShortConditions THEN
    SELLSHORT 1 SHARES AT MARKET
ENDIF

De guard NOT ShortOnMarket voorkomt dat een tweede short op een bestaande wordt gestapeld; de order gaat alleen af wanneer aan de instapregel wordt voldaan terwijl er geen short open staat. Dit volgt het voorbeeld uit de officiële referentie, met de instapvoorwaarde expliciet gemaakt.

Voorbeeld 2, Short met een volledige exit-bracket (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

// Short an RSI overbought signal
IF NOT onmarket AND RSI[14](close) > 70 THEN
  SELLSHORT 1 CONTRACT AT MARKET
ENDIF

// Protective bracket, stop above and target below the entry
SET STOP PLOSS 30
SET TARGET PPROFIT 60

De short opent tegen marktprijs en heeft een stop van 30 punten met een target van 60 punten. Bij een short positie ligt de stop boven de entryprijs en het target eronder.

Voorbeeld 3, Pending breakdown-entry (ProOrder)

probuilder
// Short a breakdown through the 20-bar low
supportLevel = lowest[20](low)

IF NOT onmarket THEN
  // Resubmit the pending order each bar while flat
  SELLSHORT 1 CONTRACT AT supportLevel STOP
ENDIF

De pending STOP-order ligt onder de markt en wordt alleen uitgevoerd als de prijs de low van 20 bars doorbreekt. Door hem elke bar opnieuw in te leggen blijft het niveau actueel terwijl de low beweegt.

Veelvoorkomende fouten en valkuilen

  • SELLSHORT is niet SELL. SELLSHORT opent shorts; SELL sluit longs. SELL gebruiken om een short positie te openen mislukt stil, de order wordt genegeerd zolang de strategie geen positie heeft, en er wordt geen fout gemeld.
  • Een short sluiten vereist EXITSHORT. Een short die met SELLSHORT is geopend wordt gesloten met EXITSHORT, niet met BUY. Op platforms waar CumulateOrders uit staat draait een BUY tegen een open short de positie om in plaats van hem simpelweg te sluiten, wat zelden de bedoeling is.
  • Pending entries verlopen na één bar. Een rustende SELLSHORT ... STOP of SELLSHORT ... LIMIT order wordt geannuleerd als hij na de volgende bar niet is uitgevoerd. Plaats hem op elke bar opnieuw zolang de setup geldig is, zoals in voorbeeld 3.
  • Onbeschermde entries stapelen posities op. Met CumulateOrders aan blijft een SELLSHORT die op opeenvolgende bars afgaat de short vergroten. Scherm instappen af met NOT ShortOnMarket of NOT onmarket, of schakel cumulatie uit met DEFPARAM.
  • BUY, opent een long positie.
  • SELL, sluit een open long positie.
  • EXITSHORT, sluit een open short positie.
  • SHARES, sleutelwoord voor de hoeveelheidseenheid bij aandelenorders.
  • CONTRACT, keyword voor de hoeveelheidseenheid bij derivaten.
  • MARKET, onmiddellijke uitvoering tegen de huidige prijs.
  • LIMIT, pending order tegen een opgegeven prijs of beter.
  • SHORTONMARKET, waar zolang er een short positie open is.
  • ONMARKET, waar zolang er een positie open is.
  • TRADEPRICE, de instapprijs van de huidige positie.