Bli medlem i dag
Indikatorer/probuilder · probacktest · proorder · proscreener

WilliamsAccumDistr

WilliamsAccumDistr i ProBuilder returnerer Williams Accumulation Distribution-linjen, som måler kjøps- og salgspress. Syntaks, formel, eksempler.

Syntaks

probuilder
WilliamsAccumDistr(price)

Parametere

NavnTypeStandardBeskrivelse
pricepriskildelukkSerien som brukes til å sammenligne påfølgende sluttkurser. Den vanlige inndataen er close.

Det finnes ikke noe periodeargument. Linjen er kumulativ over hele den synlige historikken.

Formel

For hver bar:

kode
TRH = MAX(close[1], high)      // true range high
TRL = MIN(close[1], low)       // true range low

IF close > close[1] THEN  AD = close - TRL
IF close < close[1] THEN  AD = close - TRH
IF close = close[1] THEN  AD = 0

WilliamsAccumDistr = previous WilliamsAccumDistr + AD

Stigende sluttkurser legger til et positivt beløp (avstanden fra bunnen av true range), fallende sluttkurser legger til et negativt beløp (avstanden fra toppen av true range), og uendrede sluttkurser legger ikke til noe.

Slik fungerer det

Indikatoren stiller et enkelt spørsmål på hver bar: lukket markedet nærmere toppen eller bunnen av sitt true range, og i hvilken retning beveget sluttkursen seg. Når sluttkursen stiger, behandles baren som akkumulering, og avstanden mellom sluttkursen og bunnen av true range legges til den løpende summen. Når sluttkursen faller, behandles baren som distribusjon, og avstanden fra toppen av true range trekkes fra. Å bruke true range (som inkluderer forrige sluttkurs) betyr at gap telles med i stedet for å ignoreres.

Det absolutte nivået på linjen er ikke meningsfullt, det avhenger av hvor mye historikk som er lastet inn. Det som betyr noe er retningen, og framfor alt hvordan den retningen står i forhold til prisen. Dette skiller seg fra AccumDistr, som vekter hver bar etter volum og sluttkursens plassering innenfor barens eget område, og fra OBV, som legger til eller trekker fra hele barvolumet ut fra sluttkursens retning. WilliamsAccumDistr bruker ikke volum i det hele tatt, bare prisgeometri.

Eksempler

Eksempel 1, Tellere for bullish og bearish press (Indikator)

probuilder
// Track whether the accumulation line is above or below zero
i1 = WilliamsAccumDistr(close)
bullish = 0
bearish = 0
IF(i1 > 0) THEN
  // Net accumulation since the start of the data
  bullish = bullish + 1
  bearish = bearish - 1
ELSIF(i1 < 0) THEN
  // Net distribution since the start of the data
  bullish = bullish - 1
  bearish = bearish + 1
ENDIF
RETURN bullish, bearish

Kildeeksempelet, med omskrevne kommentarer. Det konverterer fortegnet til linjen til to enkle tellere som kan mate annen logikk.

Eksempel 2, Divergenssjekk mot prisen (Indikator)

probuilder
// Compare 20-bar direction of price and the accumulation line
wad = WilliamsAccumDistr(close)
priceUp = close > close[20]
wadUp = wad > wad[20]

IF priceUp AND NOT wadUp THEN
  signal = -1   // price rising while accumulation falls, bearish divergence
ELSIF wadUp AND NOT priceUp THEN
  signal = 1    // accumulation rising while price falls, bullish divergence
ELSE
  signal = 0
ENDIF
RETURN signal AS "WAD divergence"

Flagger barer der 20-bars retningen til akkumuleringslinjen er uenig med 20-bars retningen til prisen, standard divergensbruk av denne indikatoren.

Eksempel 3, Utgangsfilter når akkumuleringen stopper (ProOrder)

probuilder
// Close longs when the accumulation line stops rising
wad = WilliamsAccumDistr(close)
trend = Average[50](close)

IF NOT LongOnMarket THEN
  IF close > trend AND wad > wad[10] THEN
    BUY 1 CONTRACT AT MARKET
  ENDIF
ELSE
  IF wad < wad[10] THEN
    SELL AT MARKET
  ENDIF
ENDIF

Krever at akkumuleringslinjen er høyere enn ti barer tilbake før den går long, og går ut når den betingelsen snur, og bruker linjen som en pressmåler rundt et trendfilter.

Tolkning

En stigende linje indikerer at stigende sluttkurser konsekvent tar mer av true range enn fallende sluttkurser, netto kjøpspress. En fallende linje indikerer det motsatte.

Hovedsignalet er divergens. Når prisen setter en lavere bunn, men linjen setter en høyere bunn, bygger kjøpspresset seg opp under overflaten, en bullish divergens. Når prisen setter en høyere topp, men linjen setter en lavere topp, mangler oppgangen press bak seg, en bearish divergens. Divergenser beskriver forhold snarere enn timing, så de kombineres vanligvis med en trigger som en kryssing av et glidende gjennomsnitt eller et breakout fra et prisområde.

Vanlige feil og fallgruver

  • Å legge til et periodeargument. WilliamsAccumDistr[14](close) er ugyldig. Instruksjonen tar bare en pris i parenteser og akkumulerer over alle innlastede barer.
  • Å sammenligne nivåer på tvers av diagrammer. Absoluttverdien avhenger av hvor mye historikk som er lastet inn, så en måling på 500 på ett diagram og 5000 på et annet sier ingenting sammenlignbart. Sammenlign stigningstall og divergenser, ikke nivåer.
  • Å forvente volumsensitivitet. Til tross for navnet bruker denne indikatoren ikke volum. For volumvektet akkumulering bruk AccumDistr, OBV, eller ChaikinOsc.
  • Å forveksle den med Williams. Williams er %R-områdeoscillatoren, en annen indikator av samme opphavsmann. De to har ingenting til felles utover navnet.
  • AccumDistr, volumvektet accumulation distribution-linje.
  • OBV, on-balance volume, kumulativt fortegnsbestemt volum.
  • MoneyFlow, avgrenset mål på kjøps- og salgspress.
  • MoneyFlowIndex, volumvektet RSI-aktig oscillator.
  • ChaikinOsc, oscillator bygget på akkumulasjonsdistribusjonslinjen.
  • PVT, price volume trend, volum skalert med prosentvis endring.
  • ForceIndex, prisendring multiplisert med volum.
  • Williams, %R-oscillatoren fra samme opphavsmann.