Word nu lid
Instructies/probuilder · probacktest · proorder · proscreener

LowestBars

LowestBars in ProBuilder geeft de offset in bars naar de laagste waarde van een reeks over een periode, waarbij 0 betekent dat de huidige bar de laagste waarde bevat.

Syntaxis

probuilder
offset = LowestBars[Period](source)

Parameters

NaamTypeStandaardBeschrijving
Periodgeheel getalverplichtAantal voorgaande bars dat in de zoekopdracht wordt meegenomen, de huidige bar meegerekend.
sourcereeksverplichtDe te scannen datareeks, zoals close, low, high, of een willekeurige berekende reeks.

Hoe het werkt

LowestBars scant de laatste Period bars van de gegeven reeks en meldt de positie van het minimum als offset vanaf de huidige bar. De telling begint bij nul: 0 is de huidige bar, 1 is één bar terug. De bijbehorende functie Lowest geeft de minimumwaarde zelf, terwijl LowestBars teruggeeft waar dat minimum zich bevindt, en dat is wat timinglogica meestal nodig heeft.

Wanneer meerdere bars dezelfde minimumwaarde hebben, rapporteert de functie het voorkomen dat het dichtst bij de huidige bar ligt, dus de kleinste offset. Als de grafiek minder bars bevat dan Period, dekt de zoekactie simpelweg de bars die beschikbaar zijn.

De offset past van nature in bar-geïndexeerde expressies. Bijvoorbeeld, close[LowestBars[20](low)] leest de close van de bar waarop de laagste low over 20 bars werd gezet. Het resultaat werkt ook als versheidsmaat: een kleine offset betekent dat de markt zijn periodelow recent heeft gezet, een grote offset betekent dat de low ouder wordt en al veel bars niet is uitgedaagd.

Volgens het gedrag van de bron geeft de functie -1 wanneer binnen het gevraagde bereik geen lagere waarde kan worden bepaald, dus code die het resultaat als index gebruikt moet zich beschermen tegen negatieve waarden.

Voorbeelden

Voorbeeld 1, De laagste low over 20 bars lokaliseren (Indicator)

probuilder
// Offset in bars to the lowest low of the last 20 bars
a = LowestBars[20](low)
RETURN a

De geplotte waarde valt terug naar 0 zodra de huidige bar een nieuwe 20-bar low maakt, en klimt daarna met één op elke bar die deze niet doorbreekt.

Voorbeeld 2, Alleen instappen wanneer de low oud is (ProOrder)

probuilder
// The 50-bar lowest low must be at least 20 bars old,
// meaning no fresh low has printed recently
lowAge = LowestBars[50](low)

IF lowAge >= 20 AND close crosses over average[20](close) THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

SET STOP %LOSS 2

LowestBars werkt als stabilisatiefilter: de strategie koopt alleen wanneer de meest recente periodelow minstens 20 bars geleden is gezet.

Voorbeeld 3, Screenen op een nieuwe periodelow (ProScreener)

probuilder
// Flag instruments that printed their 100-bar low within the last 3 bars
recentLow = LowestBars[100](low)

SCREENER[recentLow <= 3 AND recentLow >= 0] (recentLow AS "Bars since low")

De screener somt markten op die op of dicht bij een nieuwe 100-bar low handelen en laat zien hoeveel bars geleden die low optrad.

Veelvoorkomende fouten en valkuilen

  • Offset verward met waarde. LowestBars geeft een aantal bars terug, geen prijs. Om het minimum zelf te lezen, gebruik Lowest[Period](source), of index de reeks met de offset.
  • Nulgebaseerde telling. Een resultaat van 0 verwijst naar de huidige bar. 0 behandelen als "geen low gevonden" gooit stilzwijgend het belangrijkste geval weg, een nieuwe low op de bar die wordt geëvalueerd.
  • Negatief resultaat gebruikt als index. Wanneer de functie geen lagere waarde kan bepalen geeft hij -1 terug, en uitdrukkingen zoals low[LowestBars[20](low)] en indexeer dan een negatieve offset. Controleer het resultaat voordat je het als index gebruikt.
  • Gelijke waarden worden toegewezen aan de dichtstbijzijnde bar. Wanneer twee bars precies hetzelfde minimum hebben, wint de kleinere offset. Logica die het oudste voorkomen verwacht, leest vlakke of gegapte reeksen verkeerd.
  • Lowest, geeft de laagste waarde van een reeks over een periode.
  • Highest, geeft de hoogste waarde van een reeks over een periode.
  • HighestBars, offset in bars naar de hoogste waarde, de spiegelfunctie.
  • BarsSince, telt bars sinds een voorwaarde voor het laatst waar was.
  • BarIndex, nulgebaseerde positie van de huidige bar in de geladen historie.
  • Summation, sommeert een reeks over een periode.
  • DRAWTEXT, print waarden op de grafiek, nuttig om offsets te controleren.