POINTVALUE
POINTVALUE gibt den Geldwert einer Bewegung von einem Punkt für das aktuelle Instrument in ProBacktest und ProOrder zurück, verwendet für Risiko-Sizing und Gewinnumrechnung.
Syntax
POINTVALUESo funktioniert es
POINTVALUE ist eine nur lesbare Marktkonstante. Sie nimmt keine Argumente und gibt den Geldwert in der Währung des Instruments für eine Kursbewegung von einem Punkt für einen Kontrakt, Lot oder Anteil des Instruments zurück, auf dem die Strategie läuft. In ProBuilder ist sie synonym mit PIPVALUE.
Die Konstante wird durch die Kontraktspezifikation definiert und variiert stark zwischen den Märkten. Ein Punkt auf einem Index-CFD kann 1 Währungseinheit pro Kontrakt wert sein, während ein Punkt auf einem Futures-Kontrakt 25 wert ist, daher müssen Strategien, die zwischen Punkten und Geld umrechnen, POINTVALUE zur Laufzeit auslesen, anstatt einen Wert anzunehmen.
Zwei Umrechnungen decken die meisten Anwendungen ab. Geld in Punkte: Teilen Sie einen Gewinn oder Verlust durch POINTVALUE (und durch die Position Size, wenn der Betrag mehrere Kontrakte umfasst). Punkte in Geld: Multiplizieren Sie einen Punktabstand mit POINTVALUE und der Anzahl der Kontrakte. Kombiniert mit POINTSIZE, das misst, wie groß ein Punkt in Kurseinheiten ist, macht dies Gewinn-, Risiko- und Sizing-Arithmetik über Instrumente hinweg portabel.
Beispiele
Beispiel 1, Täglicher Gewinn- und Verlustschutz in Punkten (ProOrder)
once MaxProfit = 50 // daily profit objective in points
once MaxLoss = 40 // daily loss limit in points
// Reset the daily counter on a new day
if day <> day[1] then
strategyprofitpoint = 0
endif
// Convert each realized profit change into points
if (strategyprofit <> strategyprofit[1]) then
pnl = strategyprofit - strategyprofit[1]
size = max(1, abs(countofposition[1]))
onepos = pnl / size
pointprofit = onepos / pointvalue
strategyprofitpoint = strategyprofitpoint + pointprofit
endif
allowtrading = 1
if (strategyprofitpoint >= MaxProfit or strategyprofitpoint <= -MaxLoss) then
allowtrading = 0
endifJede Veränderung des realisierten Gewinns wird durch die Position Size und durch POINTVALUE geteilt, womit Geld in Punkte umgewandelt wird. Das Trading wird für den Rest des Tages deaktiviert, sobald die laufende Punktsumme eines der beiden Tageslimits erreicht. Dies ist das Referenzbeispiel aus der Originaldokumentation mit neu geschriebenen Kommentaren.
Beispiel 2, Schwebender Gewinn der offenen Position (ProBacktest)
// Unrealized profit converted from points into cash
IF onmarket THEN
floatingProfit = ((close - positionprice) / pointsize) * pointvalue * countofposition
ELSE
floatingProfit = 0
ENDIF
GRAPH floatingProfit AS "Open position profit"Der Abstand zum durchschnittlichen Einstieg wird mit POINTSIZE in Punkte normalisiert, dann mit POINTVALUE in Geld umgerechnet und mit der vorzeichenbehafteten Position Size skaliert.
Beispiel 3, Kontraktanzahl aus einem Geld-Risikobudget bestimmen (ProOrder)
// Size the trade so a 40 point stop risks about 150 in cash
riskCash = 150
stopPoints = 40
contracts = max(1, floor(riskCash / (stopPoints * pointvalue)))
IF NOT onmarket AND close CROSSES OVER average[20](close) THEN
BUY contracts CONTRACTS AT MARKET
ENDIF
SET STOP PLOSS stopPointsDas Geldrisiko eines Kontrakts über die Stop-Distanz beträgt stopPoints * pointvalue, sodass die Division des Budgets durch diesen Wert die Kontraktanzahl ergibt, die das Risiko über Instrumente hinweg nahezu konstant hält.
Häufige Fehler und Stolperfallen
- Wert pro Kontrakt. POINTVALUE beschreibt einen Kontrakt. Die Umrechnung des Gewinns einer Position mit mehreren Kontrakten erfordert zusätzlich das Teilen oder Multiplizieren mit der Position Size, wie im Beispiel des täglichen Schutzes oben.
- Wert mit Größe verwechseln. POINTVALUE ist Geld, POINTSIZE ist ein Kursabstand. Eines dort zu verwenden, wo das andere hingehört, erzeugt Ergebnisse, die um das Verhältnis der beiden falsch sind, oft um mehrere Größenordnungen.
- Den Wert eines Instruments annehmen. Eine auf ein Index-CFD abgestimmte Konstante ist bei einem Forex-Paar bedeutungslos. Jeder fest einprogrammierte Punktwert zerstört unbemerkt die Portabilität; lesen Sie stattdessen das Schlüsselwort aus.
- Einschränkung des Gültigkeitsbereichs. Das Schlüsselwort kompiliert nur in ProBacktest und ProOrder. Indikatoren und Screener können nicht auf Kontraktspezifikationen zugreifen und müssen solche Werte als Benutzereingaben übernehmen.
Verwandte Befehle
PIPVALUE, Synonym von POINTVALUE, der Geldwert eines Pip.POINTSIZE, die Größe eines Punkts in Kurseinheiten.PIPSIZE, die Größe eines Pips in Kurseinheiten.TICKSIZE, das kleinste handelbare Kursinkrement.STRATEGYPROFIT, realisierter Strategiegewinn in Geld.COUNTOFPOSITION, die vorzeichenbehaftete Größe der offenen Position.POSITIONPRICE, der durchschnittliche Einstiegskurs der offenen Position.GRAPH, zeichnet einen Wert im Backtest-Grafikbereich.