LOT
LOT anger orderkvantiteten i lots för BUY- och SELL-kommandon i ProBacktest och ProOrder. Utbytbar med enheterna CONTRACT, SHARE och PERPOINT.
Syntax
BUY n LOT AT MARKET
SELL n LOT AT MARKETParametrar
| Namn | Typ | Standard | Beskrivning |
|---|---|---|---|
n | numerisk | 1 vid entry, hela positionen vid exit | Antal lots att handla. När den utelämnas handlar en entryorder 1 enhet och en exitorder stänger hela positionen. |
Så fungerar det
Orderinstruktioner i ProBacktest och ProOrder följer mönstret verb quantity unit AT type. LOT fyller enhetsplatsen och talar om för motorn att kvantiteten uttrycks i lots, ett standardiserat block av enheter av den handlade tillgången.
Enhetsnyckelorden är alias. LOT, LOTS, SHARE, SHARES, CONTRACT, CONTRACTS, och PERPOINT kan ersätta varandra på vilken instrumenttyp som helst, motorn tolkar kvantiteten utifrån instrumentet, inte ordet. Valet handlar om läsbarhet: SHARES läses naturligt för aktier, LOT för Forex, CONTRACT för futures och CFD:er.
På Forex har lotkonventionen en verklig effekt. Den angivna kvantiteten multipliceras med storleken på en lot, så BUY 1 LOT på ett par med en lotstorlek på 100,000 enheter handlar 100,000 enheter av basvalutan.
När kvantiteten utelämnas helt gäller standardvärdena. BUY AT MARKET går in med antalet 1, och SELL AT MARKET stänger hela den öppna positionen oavsett dess storlek.
Exempel
Exempel 1, Villkorad entry på en lot (ProOrder)
// setup defined earlier in the strategy
validsetup = close crosses over Average[50](close)
IF NOT ONMARKET AND validsetup THEN
// NextBarOpen is legacy syntax and can be omitted in current code
BUY 1 LOT AT MARKET NextBarOpen
ENDIFNär strategin är utan position och setupen utlöses köper den en lot till marknadspris. Ordern fylls vid öppningen av nästa bar, vilket är standardbeteendet, så trailing NextBarOpen modifieraren är överflödig i nuvarande versioner.
Exempel 2, Skala ur halva positionen (ProBacktest)
IF NOT OnMarket AND close crosses over Average[20](close) THEN
BUY 2 LOT AT MARKET
ENDIF
// take half off once the trade has moved 50 points
IF LongOnMarket AND close - TradePrice >= 50 * PointSize THEN
SELL 1 LOT AT MARKET
ENDIFStrategin går in med två lots och säljer en lot när affären visar 50 punkters vinst, och låter den återstående loten löpa.
Exempel 3, Short-entry dimensionerad i lots (ProOrder)
short = RSI[14](close) > 70 AND close < close[1]
IF NOT ShortOnMarket AND short THEN
SELLSHORT 1 LOT AT MARKET
SET STOP PLOSS 30
ENDIFLOT fungerar identiskt på short-sidan. En lot säljs short till marknadspris med en skyddsstopp på 30 punkter.
Vanliga fel och fallgropar
- Forex multiplicerar med lotstorleken. På valutapar skalas kvantiteten med instrumentets lotstorlek, ofta 100,000 enheter.
BUY 2 LOTkan därför kontrollera 200,000 enheter basvaluta. Kontrollera instrumentets lot-storlek innan du dimensionerar positioner. - Standardvärdena för utelämnad kvantitet skiljer sig åt beroende på riktning.
BUY AT MARKEThandlar exakt 1 enhet, menSELL AT MARKETstänger hela positionen. Att anta symmetriska standardvärden leder till oavsiktliga fullständiga exits vid nedskalning. - Enhetsnyckelordet ändrar inte beräkningen. Att byta
LOTförCONTRACTellerSHARESpå samma instrument ändrar ingenting i exekveringen. Att läsaCONTRACTsom en annan position size änLOTär en missuppfattning. - Mäklarens miniminivåer gäller fortfarande. I live-ProOrder begränsar mäklarens minimi- och stegstorlekar kvantiteten, och
DEFPARAM MINORDERellerMAXORDERinställningar kan filtrera eller kapa ordern. En syntaktiskt giltigLOTantalet kan ändå avvisas.
Relaterade instruktioner
CONTRACT, alias för enhetsnyckelord som ofta används för futures och CFD:er.SHARES, alias för enhetsnyckelord som ofta används för aktier.CASH, position size baserad på ett kontantbelopp.BUY, öppnar eller utökar en long-position.SELL, stänger hela eller delar av en long-position.SELLSHORT, öppnar eller utökar en short-position.MARKET, omedelbar exekvering till aktuellt marknadspris.ONMARKET, sant så länge någon position är öppen.