HighestBars
HighestBars gibt in ProBuilder den Offset in Bars zum höchsten Wert einer Reihe über eine Periode zurück, wobei 0 bedeutet, dass der aktuelle Bar den höchsten Wert hält.
Syntax
HighestBars[Period](source)Parameter
| Name | Typ | Standard | Beschreibung |
|---|---|---|---|
| Periode | Ganzzahl | erforderlich | Anzahl der zu durchsuchenden vergangenen Bars, einschließlich des aktuellen Bars. |
| Quelle | numerische Reihe | erforderlich | Die zu durchsuchende Serie, wie close, high, volume, oder ein Indikator. |
Formel
Für ein Fenster von Period Bars, die bei der aktuellen Bar enden:
HighestBars[Period](x) = offset k in [0, Period - 1]
where x[k] is the maximum of the windowWenn innerhalb des Fensters kein Maximum bestimmt werden kann, gibt die Funktion -1 zurück.
So funktioniert es
HighestBars ermittelt die Position des Maximums statt des Maximums selbst. Wo Highest[20](close) beantwortet "Was war der höchste Schlusskurs der letzten 20 Bars", HighestBars[20](close) beantwortet die Frage "wie lange ist es her". Das Ergebnis ist ein Bar-Offset, rückwärts vom aktuellen Bar gezählt, und lässt sich daher direkt zur Indexierung von Serien verwenden: close[HighestBars[20](close)] liest den höchsten Close des Fensters.
Der Offset ist nullbasiert. Ein Rückgabewert von 0 bedeutet, dass der aktuelle Bar den höchsten Wert trägt, was selbst ein nützliches Signal ist und neue Hochs des Fensters markiert. Teilen mehrere Bars denselben Maximalwert, meldet die Funktion das erste Vorkommen, das beim Rückwärtssuchen ab dem aktuellen Bar gefunden wird, also das jüngste.
Der Wert wird auf jedem Bar aktualisiert. Während das Fenster vorwärts gleitet, fällt ein altes Hoch irgendwann aus dem Fenster heraus, und die Funktion springt zum Offset des nächsthöchsten Bars, der noch darin liegt.
Beispiele
Beispiel 1, Den höchsten Close beschriften (Indikator)
myHighest = HighestBars[10](close)
IF myHighest > 0 THEN
// Place a label on the bar that holds the highest close of the window
DRAWTEXT("Highest close in last 10 bars", barindex - myHighest, close[myHighest])
ENDIFHighestBars ermittelt, wie viele Bars zurück der höchste Close der letzten 10 Bars auftrat, und DRAWTEXT verankert eine Beschriftung an diesem Bar. Die Prüfung myHighest > 0 überspringt Bars, bei denen der aktuelle Schlusskurs selbst das Maximum ist.
Beispiel 2, Bars seit dem 50-Bar-Hoch (Indikator)
// Plot the age of the highest high inside a 50-bar window
RETURN HighestBars[50](high) AS "bars since 50-bar high"Die gezeichnete Linie fällt auf 0, sobald ein neues 50-Bar-Hoch ausgebildet wird, und steigt auf jedem Bar, der es nicht übertrifft, um eins, ein kompaktes Maß dafür, wie alt das aktuelle Hoch ist.
Beispiel 3, Einstieg nur bei frischen Hochs (ProOrder)
recency = HighestBars[20](close)
// An offset of 0 means this bar set the highest close of the window
IF recency = 0 AND NOT ONMARKET THEN
BUY 1 CONTRACT AT MARKET
ENDIF
SET STOP PLOSS 40Die Strategie kauft nur auf Bars, die ein neues 20-Bar-Schlusskurshoch ausbilden, und verwendet den Offset Null als breakout-Bestätigung.
Häufige Fehler und Stolperfallen
- Offset, nicht Wert. HighestBars gibt eine Anzahl von Bars zurück, keinen Kurs. Es als Hochpunktwert zu plotten erzeugt einen Sägezahn zwischen 0 und Period. Verwenden Sie
Highestfür den Wert selbst. - Nullbasierte Zählung. 0 bezeichnet den aktuellen Bar, der größtmögliche Rückgabewert ist also
Period - 1. Logik, die so geschrieben ist, als würde die Zählung bei 1 beginnen, verpasst neue Hochs vollständig. - Der Fall -1. Wenn das Fenster kein Maximum liefern kann, gibt die Funktion -1 zurück. Diesen Wert direkt in einen Reihenindex wie
close[-1]ist ungültig, sichern Sie das Ergebnis daher vor dem Indexieren ab. - Gleichstände werden zum jüngsten Bar aufgelöst. Bei mehrfach vorkommenden Maxima im Fenster gewinnt der kleinste Offset. Berechnungen, die vom ältesten Auftreten ausgehen, weichen um den Abstand zwischen den Duplikaten ab.
Verwandte Befehle
Highest, der höchste Wert selbst über eine Periode.Lowest, der niedrigste Wert über eine Periode.LowestBars, Offset zum niedrigsten Wert, das Gegenstück zu HighestBars.BarsSince, Anzahl der Bars seit dem Zutreffen einer beliebigen Bedingung.BarIndex, absolute Bar-Nummer, verwendet, um Offsets in Chartpositionen umzurechnen.DRAWTEXT, zeichnet eine Bezeichnung an einem Bar, der über den zurückgegebenen Offset bestimmt wird.Summation, Aggregation einer Reihe über ein festes Fenster.