Decimals
Decimals geeft het aantal decimalen van het huidige instrument in ProBuilder. Gebruik Decimals om output op te maken of koersoffsets af te stemmen op de precisie van het instrument.
Syntaxis
DecimalsDecimals neemt geen index en geeft één geheel getal voor het instrument waarop de code draait.
Hoe het werkt
Decimals geeft aan hoeveel cijfers er achter de komma staan in de koersen van het instrument. Een aandeel dat met twee decimalen wordt genoteerd geeft 2, een index die in hele punten wordt genoteerd geeft 0, en een valutapaar met vijf decimalen geeft 5.
De waarde is een eigenschap van het instrument, niet van een bar, dus verandert niet van de ene bar op de andere en accepteert geen offset tussen blokhaken. Hij weerspiegelt de koersprecisie die het platform voor die markt gebruikt.
Stand Decimals laat één script zich verstandig gedragen op instrumenten met verschillende precisie. Het is nuttig voor het opbouwen van een offset van één stap, het bepalen hoe een berekend niveau wordt afgerond, of het formatteren van een waarde voor weergave zodat het aantal getoonde cijfers bij de markt past.
Voorbeelden
Voorbeeld 1, De precisie van het instrument rapporteren (Indicator)
// Show how many decimals the current instrument uses
numDecimals = Decimals
RETURN numDecimals AS "Decimals"De indicator plot een vlakke lijn op het aantal decimalen van het instrument en bevestigt zo de notatieprecisie.
Voorbeeld 2, Screenen op notatieprecisie (ProScreener)
// Instruments quoted to more than two decimal places
precise = Decimals > 2
SCREENER[precise] (Decimals AS "Decimals")De screener isoleert instrumenten waarvan de koersen meer dan twee decimalen hebben.
Voorbeeld 3, Precisiebewuste offset (ProOrder)
DEFPARAM CumulateOrders = false
// One smallest price unit, derived from the instrument's decimals
oneUnit = Pow(10, -Decimals)
IF Close CROSSES OVER Average[20](Close) THEN
BUY 1 CONTRACT AT MARKET
ENDIF
// Place the stop one unit below the recent low
IF LONGONMARKET THEN
SELL AT Lowest[10](Low) - oneUnit STOP
ENDIFDe stop-offset is opgebouwd uit Decimals, dus het schaalt mee met de kleinste genoteerde stap van elk instrument.
Veelvoorkomende fouten en valkuilen
- Geen tick size.
Decimalsgeeft het aantal decimalen, niet de minimale prijsstap. Instrumenten die in stappen groter dan één decimale eenheid ticken hebbenPOINTSIZEofTICKSIZEvoor de werkelijke stap. - Vast per instrument. De waarde varieert niet over bars, dus een haakoffset toepassen zoals
Decimals[1]is zinloos. - Nul bij notaties in hele getallen. Instrumenten die in hele eenheden geprijsd zijn geven 0 terug, dus code die deelt door
Decimalsmoet dat geval afvangen.
Gerelateerde instructies
Close, de slotkoers van een bar.Open, de openingsprijs van een bar.High, de hoogste prijs van een bar.Low, de laagste prijs van een bar.Range, de high minus de low van een bar.TypicalPrice, het gemiddelde van high, low en close.Volume, het verhandelde volume van een bar.CustomClose, de door de gebruiker te kiezen prijsbron.