Syntax
public AccumDist(WealthLab.Bars bars, string description)
public static AccumDist Series(WealthLab.Bars bars)
Parameter Description
Description
Accumulation/Distribution (created by L. Williams) uses the closing price's proximity to the high or low to determine if accumulation or distribution is occurring in the market. The proximity value is multiplied by volume to give more weight to moves with higher volume.
You can often spot divergences between price action and the AccumDist indicator. For example, if prices make a new high but the move is not accompanied by sufficient volume, AccumDist will fail to make a new high. Divergences can be a sign the trend is nearing completion.
Interpretation
- The actual value of the AccumDist is unimportant, concentrate on its direction.
- When both price and AccumDist are making higher peaks and higher troughs, the up trend is likely to continue.
- When both price and AccumDist are making lower peaks and lower troughs, the down trend is likely to continue.
- When price continues to make higher peaks and AccumDist fails to make higher peak, the up trend is likely to stall or fail.
- When price continues to make lower troughs and AccumDist fails to make lower troughs, the down trend is likely to stall or fail.
- If during a trading range, the AccumDist is rising then accumulation may be taking place and is a warning of an upward break out.
- If during a trading range, the AccumDist is falling then distribution may be taking place and is a warning of an downward break out.
Calculation
AccumDist = Volume * ((Close-Low) - (High-Close))/(High-Low) + I
where,
I = yesterday's AccumDist value
Example
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
namespace WealthLab.Strategies
{
public class MyStrategy : WealthScript
{
protected override void Execute()
{
// Look for a diverging slope of AccumDist and price
DataSeries ad = AccumDist.Series( Bars );
for(int bar = 10; bar < Bars.Count; bar++)
{
if( ( ad[bar] > ad[bar-10] ) & ( Close[bar] < Close[bar-10] ) )
SetBarColor( bar, Color.SpringGreen );
}
ChartPane AccumDistPane = CreatePane( 50, false, true );
PlotSeries( AccumDistPane, ad, Color.Black, WealthLab.LineStyle.Solid, 2 );
}
}
}