Accumulation Distribution Line (ADL) free

by Doustzadeh in category Oscilator at 02/12/2021

Developed by Marc Chaikin, the Accumulation Distribution Line is a volume-based indicator designed to measure the cumulative flow of money into and out of a security. Chaikin originally referred to the indicator as the Cumulative Money Flow Line. As with cumulative indicators, the Accumulation Distribution Line is a running total of each period's Money Flow Volume. First, a multiplier is calculated based on the relationship of the close to the high-low range. Second, the Money Flow Multiplier is multiplied by the period's volume to come up with a Money Flow Volume. A running total of the Money Flow Volume forms the Accumulation Distribution Line. Chartists can use this indicator to affirm a security's underlying trend or anticipate reversals when the indicator diverges from the security price.


Github: GitHub - Doustzadeh/cTrader-Indicator


Notification Publishing copyrighted material is strictly prohibited. If you believe there is copyrighted material in this section you may use the Copyright Infringement Notification form to submit a claim.
Formula / Source Code
Language: C#
Trading Platform: cAlgocTrader
´╗┐using cAlgo.API;

namespace cAlgo
    [Indicator(IsOverlay = false, AccessRights = AccessRights.None)]
    public class AccumulationDistributionLine : Indicator
        [Output("ADL", LineColor = "Red")]
        public IndicatorDataSeries ADL { get; set; }

        // 1. Money Flow Multiplier = [(Close - Low) - (High - Close)] / (High - Low)
        // 2. Money Flow Volume = Money Flow Multiplier x Volume for the Period
        // 3. ADL = Previous ADL + Current Period's Money Flow Volume

        private double High, Low, Close, Volume, MFM, MFV;

        public override void Calculate(int index)
            // High = High price for the period
            // Low = Low price for the period
            // Close = Closing price
            // Volume = Volume for the Period
            // MFM = Money Flow Multiplier
            // MFV = Money Flow Volume

            if (index < 1)
                ADL[index] = 0;

            High = Bars.HighPrices[index];
            Low = Bars.LowPrices[index];
            Close = Bars.ClosePrices[index];
            Volume = Bars.TickVolumes[index];

            MFM = High - Low == 0 ? 0 : ((Close - Low) - (High - Close)) / (High - Low);
            MFV = MFM * Volume;

            ADL[index] = ADL[index - 1] + MFV;


weeksburke3967384 - July 04, 2022 @ 10:16

I just came into your blog while searching the internet for some information. The knowledge you have on this blog is impressive. free solitaire amazing.

avgvst123 - September 14, 2022 @ 10:33

I think it can be a great source of additional income, and I can tell you that it's not that hard to find all the necessary info on the internet, thanks to such blogs. Personally, I make money by playing cs go, I just sell skins like worm god, and I'm glad there are so many ways of making money on the internet nowadays.

lorarymaxozeza - January 27, 2023 @ 17:52

I have researched this algorithm and have read that it is quite reliable. But, I don't know how to use it. I don't have any programming knowledge and I don't really know how to link it to my account to make money. I recently won a large amount of money playing at an online casino that I found on Gamblingorb Portugal. I would like to invest some of this money in trading, as someone close to me told me that I could easily get more