Bli medlem idag
ProBacktest/probacktest · proorder

SHARES

SHARES i ProBacktest och ProOrder anger en orders storlek som ett antal aktier för aktie- och CFD-strategier. Täcker syntax, val av enhet och genomgångna exempel.

Syntax

probuilder
[BUY|SELLSHORT] quantity SHARES [AT MARKET|AT price LIMIT|AT price STOP]

Så fungerar det

SHARES anger enheten som orderkvantiteten räknas i. BUY 100 SHARES AT MARKET köper 100 aktier till nästa tillgängliga pris. Nyckelordet följer efter talet och står före ordertypen, vare sig den är AT MARKET, en AT price LIMIT, eller en AT price STOP.

Storleksenheten bör matcha instrumentet. SHARES passar aktier och aktie-CFD:er, CONTRACT passar futures och CFD:er, och LOT passar forex. Att välja fel enhet dimensionerar positionen felaktigt för den marknaden. Om upprepade ordrar staplas till en större position styrs av CumulateOrders, precis som med alla andra storleksenheter.

Exempel

Exempel 1, Short-entry med storlek i aktier (ProBacktest)

probuilder
// Sell short one share when MACD crosses below zero and no short is open
myMACD = MACD[12,26,9](close)
shortCondition = myMACD CROSSES UNDER 0
IF NOT ShortOnMarket AND shortCondition THEN
    SELLSHORT 1 SHARES AT MARKET
ENDIF

Detta är mönstret från den officiella referensen. Ordern säljer en aktie till marknadspris när MACD-histogrammet korsar ned under noll och det inte redan finns någon öppen short-position.

Exempel 2, Long-entry med ett fast antal aktier (ProOrder)

probuilder
DEFPARAM CumulateOrders = false
// Buy 100 shares on a break above the 20-bar high
IF NOT LongOnMarket AND close CROSSES OVER Highest[20](high) THEN
    BUY 100 SHARES AT MARKET
ENDIF

Positionen är alltid 100 aktier varje gång entryn utlöses, och positionsskyddet hindrar en andra entry när man redan är long.

Exempel 3, Väntande stopporder med storlek i aktier (ProOrder)

probuilder
DEFPARAM CumulateOrders = false
// Rest a stop entry above the market for 50 shares
entryLevel = Highest[20](high)
IF NOT OnMarket THEN
    BUY 50 SHARES AT entryLevel STOP
ENDIF

Den väntande stopporden fylls bara om priset handlas upp genom 20-barershögsta, och köper 50 aktier på den nivån.

Vanliga fel och fallgropar

  • Fel enhet för marknaden. SHARES på ett forexpar eller ett terminskontrakt dimensionerar inte ordern som avsett. Använd CONTRACT för futures och CFD:er och LOT för forex.
  • Delar av aktier. Mäklarens regler avgör om ett antal aktier med decimaler accepteras. Ett heltal är det säkra valet för de flesta instrument.
  • Oavsiktlig staplning. CumulateOrders är aktiverat som standard, så en entry som förblir sann över flera barer lägger till aktier på var och en av dem. Sätt DEFPARAM CumulateOrders = false eller skydda med NOT LongOnMarket.
  • Endast enheten, inte hela ordern. SHARES är en del av en orderrad. Den följer alltid efter en kvantitet och står inuti BUY eller SELLSHORT sats med en ordertyp.
  • CONTRACT, kvantitetsenhet för futures och CFD:er.
  • LOT, kvantitetsenhet för forex.
  • BUY, öppnar en long-position dimensionerad i en vald enhet.
  • SELLSHORT, öppnar en short-position dimensionerad i en vald enhet.
  • SELL, stänger en long-position.
  • EXITSHORT, stänger en short-position.
  • MARKET, LIMIT, STOP, ordertyperna som en order angiven i aktier kan använda.