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

AccumDistr

AccumDistr i ProBuilder returnerar Accumulation/Distribution-linjen, en kumulativ volymindikator som följer penningflödet in i eller ut ur ett instrument.

Syntax

probuilder
AccumDistr(price)

Parametrar

NamnTypStandardBeskrivning
pricepriskällaclosePrisserien som matas in i beräkningen. Vanliga val är close, open, high, eller low.

Formel

kod
CLV = ((Close - Low) - (High - Close)) / (High - Low)
AD  = cumulative sum of (Volume * CLV)

CLV är close location value. Det är +1 när baren stänger på sin högsta, -1 när den stänger på sin lägsta och 0 när den stänger exakt i mitten av intervallet. Multiplikation med volymen omvandlar den placeringen till en skattning av penningflödet, och den kumulativa summan gör flödena per bar till en enda linje.

Så fungerar det

På varje bar kontrollerar ProBuilder var stängningen ligger inom barens high-low-intervall. En stängning nära högsta nivån betyder att köparna kontrollerade sessionen, så en stor andel av den barens volym läggs till den löpande summan. En stängning nära lägsta nivån betyder att säljarna dominerade, så volymen subtraheras. Barer som stänger mitt i intervallet bidrar lite i någon riktning.

Eftersom linjen är kumulativ har dess absoluta värde ingen betydelse. Bara riktningen och lutningen spelar roll, och hur de förhåller sig till priset. När priset sätter en ny högsta nivå men Accumulation/Distribution-linjen inte gör det, bekräftar volymen inte rörelsen, ett tillstånd som ofta läses som en varning om en möjlig vändning. Samma logik gäller i spegelbild vid nya lägsta nivåer.

Indikatorn kräver volymdata. På instrument där dataflödet inte tillhandahåller någon volym förblir linjen platt och är inte användbar.

Exempel

Exempel 1, Läsa ett tidigare värde av A/D-linjen (Indicator)

probuilder
// A/D line based on the open price, value from 30 bars ago
ind1 = AccumDistr(Open)[30]
RETURN ind1

Hakparentessuffixet efter funktionsanropet flyttar läsningen bakåt i tiden. Det här exemplet returnerar Accumulation/Distribution-värdet som det stod 30 barer tidigare, användbart när aktuellt flöde jämförs mot ett historiskt ankare.

Exempel 2, Volymbekräftad trendentry (ProOrder)

probuilder
// Enter long only when price and money flow rise together
ad     = AccumDistr(close)
adUp   = ad > Average[50](ad)
trend  = close > Average[100](close)

IF NOT LongOnMarket AND trend AND adUp THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

IF LongOnMarket AND ad < Average[50](ad) THEN
  SELL AT MARKET
ENDIF

A/D-linjen över sitt eget 50-bars genomsnitt bekräftar att volymen stöder prisuppgången. Positionen stängs när penningflödet faller tillbaka under sitt genomsnitt.

Exempel 3, Screening för uthållig ackumulation (ProScreener)

probuilder
// Instruments whose A/D line has risen over the last 20 bars
ad = AccumDistr(close)
change = ad - ad[20]
SCREENER[change > 0](change AS "AD 20-bar change")

Returnerar instrument där Accumulation/Distribution-linjen är högre än 20 barer tidigare, ett enkelt filter för stadigt köptryck.

Tolkning

ObservationAvläsning
Linjen stiger med prisetVolymen bekräftar upptrenden.
Linjen faller med prisetVolymen bekräftar nedtrenden.
Priset sätter ny högsta nivå, linjen gör det inteBaisseartad divergens, köptrycket avtar.
Priset sätter ny lägsta nivå, linjen gör det inteHausseartad divergens, säljtrycket avtar.

Divergenssignaler identifierar tillstånd, inte timing. Linjen kan divergera från priset under långa perioder innan någon vändning inträffar, så de flesta arbetsflöden kombinerar den med ett trendfilter eller en separat entrytrigger.

Vanliga fel och fallgropar

  • Den absoluta nivån är meningslös. Linjen är en kumulativ summa, så att jämföra dess värde med ett fast tröskelvärde, eller mellan instrument, ger nonsens. Jämför endast lutning och riktning.
  • Ingen volym, ingen signal. På CFD:er, forexpar eller index där flödet inte levererar någon handlad volym är linjen platt eller baserad på tick-volym. Kontrollera vad dataleverantören faktiskt levererar innan du litar på utdata.
  • Gap ignoreras. Close location value tittar bara inuti den aktuella barens intervall. Ett instrument som gapar kraftigt nedåt men stänger nära sin intraday-högsta registreras fortfarande som ackumulation, vilket kan ge en missvisande bild av sessionen.
  • Division med noll på platta barer. När high är lika med low är CLV-nämnaren noll. ProBuilder hanterar den degenererade baren internt, men egna omimplementeringar av formeln behöver ett explicit skydd.
  • OBV, on-balance volume, en enklare kumulativ volymlinje som använder hela barens riktning.
  • MoneyFlow, begränsat money flow-mått mellan -1 och 1.
  • MoneyFlowIndex, volymviktad oscillator begränsad till 0 till 100.
  • ChaikinOsc, momentum i Accumulation/Distribution-linjen via två EMA:er.
  • WilliamsAccumDistr, Williams variant av Accumulation/Distribution.
  • PVT, price-volume trend, kumulativ volym skalad med procentuell förändring.
  • ForceIndex, prisförändring multiplicerad med volym.
  • Volume, rå volym per bar som används inuti beräkningen.