POINTSIZE
POINTSIZE restituisce la dimensione di un punto in unità di prezzo per lo strumento corrente, usato in ProBacktest e ProOrder per convertire i prezzi in numeri di punti.
Sintassi
POINTSIZECome funziona
POINTSIZE è una costante di mercato in sola lettura che non accetta argomenti. Riporta la dimensione di un singolo punto per lo strumento a cui è associata la strategia, espressa nelle unità di prezzo dello strumento stesso. Su un indice quotato a 18000 un punto potrebbe essere 1.0, mentre su una coppia forex quotata a cinque decimali è una piccola frazione, quindi la costante permette a una stessa strategia di adattarsi a qualsiasi convenzione di quotazione.
Il suo compito principale è la conversione di unità. Le serie basate sul prezzo come close o AverageTrueRange sono espressi in unità di prezzo, mentre istruzioni come SET STOP PLOSS e le soglie di profitto sono spesso espresse in punti. Dividere una distanza di prezzo per POINTSIZE la converte in punti, e moltiplicare un numero di punti per POINTSIZE la riporta a una distanza di prezzo confrontabile con le quotazioni.
POINTSIZE descrive solo la distanza. Il valore in denaro di un movimento di un punto è una costante separata, POINTVALUE. Un calcolo completo in denaro usa tipicamente entrambe, normalizzando prima un movimento di prezzo in punti e convertendo poi i punti in denaro.
Esempi
Esempio 1, profitto latente della posizione aperta (ProBacktest)
// Unrealized gain of the open trade in account currency
floatingprofit = (((close - positionprice) * pointvalue) * countofposition) / pointsize
GRAPH floatingprofit AS "Floating profit"La distanza tra il prezzo corrente e l'ingresso medio è scalata per il valore in denaro di un punto, moltiplicata per la position size e normalizzata per POINTSIZE, ottenendo il profitto non realizzato in denaro. Questo è l'esempio di riferimento della documentazione originale con i commenti riscritti.
Esempio 2, spostamento a breakeven dopo un guadagno fisso in punti (ProOrder)
// Move the stop to entry once the long is 10 points in profit
IF longonmarket AND (high - positionprice) >= 10 * pointsize THEN
SET STOP BREAKEVEN
ENDIFMoltiplicare 10 per POINTSIZE converte il target in punti in una distanza di prezzo che può essere confrontata direttamente con lo scarto tra il massimo e il prezzo medio di ingresso.
Esempio 3, stop su ATR convertito in punti interi (ProBacktest)
// Express a two-ATR stop distance as an integer point count
atr = AverageTrueRange[14](close)
stopPoints = max(1, round((2 * atr) / pointsize))
IF NOT onmarket AND close > average[50](close) THEN
BUY 1 CONTRACTS AT MARKET
ENDIF
SET STOP PLOSS stopPointsATR è una distanza di prezzo, quindi dividerlo per POINTSIZE produce il numero di punti che SET STOP PLOSS si aspetta, con arrotondamento e un minimo di un punto per mantenere valido il valore.
Errori e insidie comuni
- POINTSIZE non è POINTVALUE. POINTSIZE è una distanza in unità di prezzo, POINTVALUE è il valore in denaro di quella distanza. Scambiarli corrompe silenziosamente ogni calcolo del rischio, perché entrambi sono semplici numeri e il compilatore non può individuare l'errore.
- Punto e pip possono differire. Sugli strumenti quotati con incrementi frazionari, PIPSIZE e POINTSIZE possono non essere uguali. Il codice che li considera interscambiabili si comporta in modo diverso tra coppie forex e indici; verifica entrambe le costanti per il mercato di destinazione.
- Conversioni fissate nel codice. Sostituire POINTSIZE con un valore letterale come 0.0001 lega la strategia a una sola convenzione di quotazione. Lo stesso codice produce quindi distanze di stop errate su qualsiasi altro strumento.
- Restrizione di ambito. La costante si compila solo in ProBacktest e ProOrder. Il codice di indicatori o screener che necessita di aritmetica sui punti deve usare parametri di input fissi.
Istruzioni correlate
POINTVALUE, il valore in contanti di un movimento di un punto.PIPSIZE, la dimensione di un pip in unità di prezzo.PIPVALUE, il valore in denaro di un pip, sinonimo di POINTVALUE.TICKSIZE, il più piccolo incremento di prezzo negoziabile.POSITIONPRICE, il prezzo medio di ingresso della posizione aperta.COUNTOFPOSITION, la dimensione con segno della posizione aperta.BREAKEVEN, sposta lo stop o il target al prezzo di ingresso.PLOSS, stop loss espresso in punti.