Bli medlem idag
Indikatorer/probuilder · probacktest · proorder · proscreener

DynamicZoneRsiUp

DynamicZoneRsiUp i ProBuilder returnerar den övre dynamiska tröskeln för Dynamic Zone RSI, ett Bollinger Band applicerat på RSI-värden. Syntax och exempel.

Syntax

probuilder
DynamicZoneRsiUp[RSIperiod, BBperiod](price)

Parametrar

NamnTypStandardBeskrivning
RSIperiodheltal14Perioden för den underliggande RSI-beräkningen.
BBperiodheltal20Perioden för Bollinger Band-statistiken (medelvärde och standardavvikelse) som tillämpas på RSI-värdena.
pricepriskällaclosePrisserien som matas in i RSI, vanligtvis close.

Formel

kod
DynamicZoneRsiUp = Average[BBperiod](RSI[RSIperiod](price))
                   + STD[BBperiod](RSI[RSIperiod](price)) * 0.8

Ett övre band av Bollinger-typ beräknat på RSI-serien i stället för på priset, med en standardavvikelsemultiplikator på 0.8.

Så fungerar det

Den traditionella RSI:n markerar överköpt vid fasta 70. Den konstanten fungerar ojämnt: i starka uppgångstrender kan RSI ligga över 70 under långa sträckor, medan den i stillsamma marknader kanske aldrig kommer dit. Dynamic Zone RSI anpassar tröskeln genom att behandla de senaste RSI-värdena som en fördelning. DynamicZoneRsiUp tar medelvärdet av RSI över BBperiod barer och adderar 0.8 gånger standardavvikelsen för RSI över samma fönster.

Den resulterande överköpta linjen stiger och faller med RSI:s egen nivå och volatilitet. Under utdragna uppgångar skiftar bandet uppåt, så vanlig trendstyrka registreras inte längre som överköpt, bara statistiskt ovanliga momentumspikar gör det. I flacka marknader dras bandet åt kring RSI-medelvärdet och flaggar för mindre avvikelser.

Funktionen returnerar bara bandet. Signallogik kräver att RSI beräknas separat med identiska RSIperiod och price, och sedan jämföra de två, vanligtvis för att bevaka om RSI korsar tillbaka under bandet efter en överköpt rörelse. DynamicZoneRsiDown ger det matchande nedre bandet, och paret ramar in RSI i en adaptiv kanal.

Exempel

Exempel 1, Plotta det övre dynamiska bandet (Indikator)

probuilder
// Upper Dynamic Zone RSI band, 14-period RSI, 20-period bands
a = dynamiczonersiup[14,20](close)
return a coloured(0,255,0) style(line,1)

Ritar den övre dynamiska tröskeln som en grön linje. Lagd över RSI markerar den den adaptiva överköpta zonen.

Exempel 2, Dynamisk överköpt exit för longs (ProBacktest)

probuilder
// Enter on a moving average cross, exit when RSI leaves its dynamic overbought zone
fast = Average[20](close)
slow = Average[50](close)
myRSI = RSI[14](close)
upperband = DynamicZoneRsiUp[14,20](close)

IF NOT LongOnMarket AND fast CROSSES OVER slow THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

IF LongOnMarket AND myRSI CROSSES UNDER upperband THEN
  SELL AT MARKET
ENDIF

Behåller long-positionen medan momentum förblir starkt och exitar när RSI faller tillbaka under sin adaptiva överköpta gräns, en exit som själv anpassar sig till rörelsens volatilitet.

Exempel 3, Screening av adaptivt överköpta instrument (ProScreener)

probuilder
// Instruments whose RSI trades above the upper dynamic band
myRSI = RSI[14](close)
upperband = DynamicZoneRsiUp[14,20](close)
excess = myRSI - upperband
SCREENER[myRSI > upperband](excess AS "RSI above band")

Listar instrument vars momentum är statistiskt uttöjt i förhållande till sin egen senaste RSI-fördelning och rangordnar dem efter avvikelsens storlek.

Tolkning

VillkorAvläsning
RSI över det övre bandetMomentum är ovanligt starkt i förhållande till sitt eget senaste intervall, adaptivt överköpt.
RSI korsar tillbaka under bandetMöjlig baissesignal, momentum avtar från den överköpta zonen.
Bandet stigerSjälva RSI-regimen stärks, högre värden blir normala.
Bandet snävt kring RSI-medelvärdetLugn momentumregim, små ryck kvalificerar redan som uttöjda.

Ett RSI-värde över det dynamiska bandet identifierar statistiskt ovanlig styrka snarare än absolut styrka. I trendföljande sammanhang talar sådana värden ofta för att behålla positionen snarare än att gå emot, så bandet används ofta för exits och screening snarare än för entries mot trenden.

Vanliga fel och fallgropar

  • Omatchade RSI-inställningar. Bandet är bara meningsfullt mot en RSI byggd med samma RSIperiod och price. Att jämföra RSI[7] till DynamicZoneRsiUp[14,20] blandar två olika oscillatorer.
  • Att använda bandet som oscillator. Funktionen returnerar tröskeln, inte RSI. Ett villkor som DynamicZoneRsiUp[14,20](close) > 70 mäter var bandet ligger, inte om marknaden är överköpt.
  • Bracketorder. Båda perioderna delar ett par hakparenteser, priset anges i parenteser, DynamicZoneRsiUp[14,20](close). Andra upplägg går inte att kompilera.
  • Fast 0.8-multiplikator. Bandbreddsfaktorn kan inte ändras via parametrar. En egen multiplikator kräver att bandet byggs om från Average, STD, och RSI direkt.
  • DynamicZoneRsiDown, den matchande nedre dynamiska tröskeln för Dynamic Zone RSI.
  • DynamicZoneStochasticUp, samma koncept tillämpat på Stochastic-oscillatorn.
  • DynamicZoneStochasticDown, nedre dynamiska band för Dynamic Zone Stochastic.
  • RSI, det underliggande Relative Strength Index.
  • BollingerUp, övre Bollinger-bandet på pris, samma bandkonstruktion.
  • STD, standardavvikelse, en byggsten i bandet.
  • Average, enkelt glidande medelvärde, den andra byggstenen.
  • Stochastic, alternativ begränsad oscillator som kan användas med dynamiska zoner.