Индикаторы объема > ADL (Accumulation/Distribution Line) – накопление / распределение

Аватара пользователя
evge
Администратор
Сообщения: 1807
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 363 раза
Контактная информация:

ADL (Accumulation/Distribution Line) – накопление / распределение

Непрочитанное сообщение evge » 08 фев 2016, 09:37

Накопление / распределение – показывает силу движения, которая вычисляется как изменения цены относительно максимального размаха и объема торгов за бар. Приведем формулу:

ADL=((Close-Low)-(High-Close))/(High-Low)*Volume

Сигналы

Дивергенции пиков цены и соответствующего уровня ADL.

Автор: Ларри Вильямс (Larry Williams).
Первоисточник: Ноw I made a Million Dollars. 1972. // Совпадает с MQL4 // Совпадает с Акелис

Пример:

ADL-00.png
ADL-00.png (41.54 КБ) 24930 просмотров


Исходный текст:

Код: Выделить всё

function Initialize()
{
IndicatorName = "ADL";   
PriceStudy = false;   
AddInput("Input", Inputs.Candle);   
AddSeries("ADL", DrawAs.Line, Color.Red);   
}

function Evaluate()
{
// AlfaDirect. 2014. OX
// Accumulation/Distribution Line (ADL)
  var CLV = ((Input.Close[0]-Input.Low[0]) - (Input.High[0]-Input.Close[0])) * Input.Volume[0];
  var Delta = (Input.High[0]-Input.Low[0]);
  if (Delta <= 0)
     CLV = 0;
  else
     CLV = CLV / Delta;

  if (CurrentIndex < 1)
     ADL = CLV;
  else
     ADL = ADL[-1] + CLV;
}
никогда такого не было и вот опять

Kurono
Сообщения: 14
Зарегистрирован: 08 июл 2017, 20:37
Поблагодарили: 5 раз

Re: ADL (Accumulation/Distribution Line) – накопление / распределение

Непрочитанное сообщение Kurono » 08 июл 2017, 21:07

в кеше гугла есть еще один индикатор AccumulationDistribution от ox

Код: Выделить всё

function Initialize()
{
IndicatorName = "AccDis";   
PriceStudy = false;   
AddInput("Input", Inputs.Candle);   
 AddSeries("AccDis", DrawAs.Line, Color.Red);   
}

function Evaluate()
{
var CLV = ((Input.Close[0]-Input.Low[0]) - (Input.High[0]-Input.Close[0])) * Input.Volume[0];
var Delta = (Input.High[0]-Input.Low[0]);
if (Delta <= 0)
   CLV = 0;
else
   CLV = CLV / Delta;

if (CurrentIndex < 1)
    AccDis = CLV;
else
    AccDis = AccDis[-1] + CLV;

}


Вернуться в «Индикаторы объема»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя