AccumDistr
AccumDistr i ProBuilder returnerar Accumulation/Distribution-linjen, en kumulativ volymindikator som följer penningflödet in i eller ut ur ett instrument.
Syntax
AccumDistr(price)Parametrar
| Namn | Typ | Standard | Beskrivning |
|---|---|---|---|
price | priskälla | close | Prisserien som matas in i beräkningen. Vanliga val är close, open, high, eller low. |
Formel
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)
// A/D line based on the open price, value from 30 bars ago
ind1 = AccumDistr(Open)[30]
RETURN ind1Hakparentessuffixet 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)
// 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
ENDIFA/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)
// 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
| Observation | Avläsning |
|---|---|
| Linjen stiger med priset | Volymen bekräftar upptrenden. |
| Linjen faller med priset | Volymen bekräftar nedtrenden. |
| Priset sätter ny högsta nivå, linjen gör det inte | Baisseartad divergens, köptrycket avtar. |
| Priset sätter ny lägsta nivå, linjen gör det inte | Hausseartad 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.
Relaterade instruktioner
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.