Lowest
Lowest i ProBuilder returnerar minimivärdet för ett pris eller en serie under de senaste N barerna, används för stödnivåer, kanaler och stoppar. Syntax, exempel.
Syntax
Lowest[N](price)Parametrar
| Namn | Typ | Standard | Beskrivning |
|---|---|---|---|
N | heltal | obligatorisk | Antal barer som genomsöks, inklusive den aktuella baren. Får inte överstiga antalet barer som är laddade i diagrammet eller i backtestet. |
price | serie | close | Vilken priskonstant som helst, till exempel close, open, high, low, eller någon egen variabel eller indikatorutdata. |
Formel
Lowest[N](price) = min( price[0], price[1], ..., price[N-1] )där price[0] är den aktuella baren och price[N-1] den äldsta baren i fönstret.
Så fungerar det
På varje bar skannar ProBuilder ett glidande fönster av de senaste N värden av den angivna serien och returnerar minimum. Fönstret inkluderar alltid den bar som just utvärderas, vilket spelar roll för breakout-logik: på den bar där priset sätter en ny lägsta nivå, Lowest[N](low) är lika med den nya botten, så low < Lowest[N](low) kan aldrig vara sant. Att skifta hela uttrycket en bar bakåt med Lowest[N](low)[1] ger föregående N-bars low, det värde som breakout-system faktiskt jämför mot.
Funktionen accepterar vilken serie som helst, inte bara råa priser. Lowest[20](RSI[14](close)) returnerar det lägsta RSI-värdet under de senaste 20 barerna, ett mönster som används för normalisering, och Lowest[N](low) tillsammans med Highest[N](high) bildar Donchian-kanalen och nämnaren i den stokastiska oscillatorn.
Lowest svarar på "vad är minimum"; motsvarigheten LowestBars besvarar "hur många barer sedan inträffade det".
Exempel
Exempel 1, Adaptivt nedre band (Indikator)
// Use the current low when it undercuts the 30-bar lowest close
IF Low < Lowest[30](close) THEN
bandL = Low
ELSE
bandL = Lowest[30](close)
ENDIF
RETURN bandLBygger ett nedre band av det minsta av aktuell lägstanivå och den lägsta stängningen under de senaste 30 barerna, så spikar inom baren under golvet av stängningspriser fångas omedelbart.
Exempel 2, Donchian-exitstopp (ProOrder)
// Enter on a 20-bar breakout, exit at the 10-bar low
IF NOT OnMarket AND close CROSSES OVER Highest[20](high)[1] THEN
BUY 1 CONTRACT AT MARKET
ENDIF
IF LongOnMarket THEN
SELL AT Lowest[10](low) STOP
ENDIFLägger en stopporder på den lägsta lägstanivån under de senaste 10 barerna, en klassisk trailing exit som följer marknaden uppåt när nya högre bottnar sätts.
Exempel 3, Nära 52-veckorsbottnen (ProScreener)
// Daily scan for instruments within 2 percent of their one-year low
low52 = Lowest[252](low)
distance = 100 * (close - low52) / low52
SCREENER[distance < 2](distance AS "Pct above 52w low")Returnerar instrument vars stängning ligger mindre än 2 procent över den lägsta lägstanivån under de senaste 252 dagsbarerna, ungefär ett handelsår.
Tolkning
Det rullande minimumet är den mest direkta definitionen av stöd: den prisnivå som höll under det valda fönstret. Pris som närmar sig Lowest[N](low) testar det stödet, och en stängning under det är ett brott nedåt ur intervallet. Trendföljare tolkar ett brott av N-barers lägstanivå som ett short-entry eller en long-exit, medan mean reversion-traders läser avståndet mellan priset och den rullande lägstanivån som tillgängligt utrymme nedåt.
Fönsterlängden sätter karaktären. Lowest[10] följer swing lows för snäva trailing stops, Lowest[252] följer ettårsbottnen som används i scanningar av relativ styrka.
Vanliga fel och fallgropar
- Fönstret inkluderar den aktuella baren.
low < Lowest[N](low)är alltid falskt. För att upptäcka breakdown, jämför mot föregående fönster:close CROSSES UNDER Lowest[N](low)[1]. Nutöver inläst historik. När färre änNbarer är tillgängliga beräknas resultatet på det som finns, så tidiga backtest-värden skiljer sig från diagramvärden. Läs in tillräckligt med historik, eller höj i automatiserade systemDEFPARAM PreloadBars.Lowestär inteMIN.MIN(a, b)jämför två uttryck på samma bar;Lowest[N](a)skannar en serie genom tiden.MINkan inte ta en period ochLowestkan inte ta två serier.- Värde kontra position.
Lowestger nivån, inte tidpunkten. För att veta hur många barer tillbaka minimumet inträffade, användLowestBars, till exempel för att mäta hur gammal en stödnivå är.
Relaterade instruktioner
Highest, det symmetriska rullande maximumet.LowestBars, antal barer sedan minimum inträffade.HighestBars, antal barer sedan maximum inträffade.MIN, minimum av två uttryck på samma bar.DonchianChannelDown, färdig kanallinje byggd på den rullande lägstanivån.Stochastic, oscillator normaliserad av intervallet mellan högsta och lägsta.Average, glidande medelvärde, utjämningsmotsvarigheten.Range, aktuell bars högsta minus lägsta.