Библиотека польльских индикаторовзовате. БИБЛИОТЕКА ПОЛЬЗОВАТЕЛЬСКИХ ИНДИКАТОРОВ АЛЬФА-ДИРЕКТ4.0. Инструкция по созданию и импорту пользовательских индикаторов 4 библиотека пользовательских индикаторов 5
Скачать 1.9 Mb.
|
BW_AC (Acceleration/Deceleration) – Ускорение/замедление Билла ВильямсаAC является индикатором, который по своей сути аналогичен гистограмме MACD. но построенный на базе SMA с фиксированными параметрами. Где Индикатор AC является аналогом индикатора гистограммы MACD, только который построен на SMA. Пример. Автор: Билл Вильямс (Bill Williams) Код Альфа-Директ function Initialize() { IndicatorName = "BW_AC"; AddInput("Input", Inputs.Candle); PriceStudy = false; AddSeries("BW_AC", DrawAs.Custom, Color.Red, AxisType.ZeroBased); AddGlobalVariable("LSMA5", Types.DoubleList); AddGlobalVariable("LSMA34", Types.DoubleList); AddGlobalVariable("LAO5", Types.DoubleList); } function Evaluate() { // AlfaDirect. 2015. OX // BW_AC (Acceleration/Deceleration) Bill Williams double TP = Input.High[0] + Input.Low[0]; LSMA5.Add(TP); if ( CurrentIndex >= 5 ) LSMA5.RemoveAt(0); double SMA5 = LSMA5.Average(x => x); LSMA34.Add(TP); if ( CurrentIndex >= 34 ) LSMA34.RemoveAt(0); double SMA34 = LSMA34.Average(x => x); double AO = SMA5 - SMA34; LAO5.Add(AO); if ( CurrentIndex >= 5 ) LAO5.RemoveAt(0); double AO5 = LAO5.Average(x => x); BW_AC = AO - AO5; if ( CurrentIndex > 0 ) if ( BW_AC > BW_AC[-1] ) BW_AC.DrawHistogram(Color.LightGreen); else BW_AC.DrawHistogram(Color.Red); } BW_GatorOsc (Gator Oscillator) – осциллятор Билла ВильямсаИндикатор представляет гистограмму, которая отображает взаимное положение скользящих средних BW_Alligator. Верхняя часть гистограммы показывает абсолютное расстояние между SMA(13)[8] и SMA(8)[5]. Нижняя часть гистограммы показывает абсолютное расстояние между SMA(8)[5] и SMA(5)[3] Автор: Билл Вильямс (Bill Williams) Код Альфа-Директ function Initialize() { IndicatorName = "BW_GatorOsc"; PriceStudy = false; AddInput("Input", Inputs.Candle); AddSeries("G1", DrawAs.Custom, Color.Green, AxisType.ZeroBased); AddSeries("G2", DrawAs.Custom, Color.Green, AxisType.ZeroBased); } function Evaluate() { // AlfaDirect. 2014/ OX // Gator (Bill Williams) if (CurrentIndex > 2) { var Inp = LIB.MID(Input); G1 = Math.Abs(SMA(Inp, 13)[8] - SMA(Inp, 8)[5]); G2 = (-1.0) * Math.Abs(SMA(Inp, 8)[5] - SMA(Inp, 5)[3]); if (G1 > G1[-1] ) G1.DrawHistogram(Color.Green); else G1.DrawHistogram(Color.Red); if (G2 > G2[-1]) G2.DrawHistogram(Color.Green); else G2.DrawHistogram(Color.Red); } } BW_MFI (Market Facilitation Index) – Индекс облегчения рынка Билла ВильямсаИндикатор BW_MFI (Индекс Облегчения Рынка) показывает изменение цены, приходящееся единицу объема. Формула данного индикатора проста: Индикатор имеет следующую раскраску: Зеленый бар (MFI вырос и объем вырос) – большее количество участников входит в рынок, т.е. продолжение тенденции. Синий бар (MFI вырос, но объем упал) – движение без объемов (возможно спекулятивное). Коричневый бар (MFI упал и объем упал) – говорит о пропаже интереса к текущим ценам на рынке. Розовый бар (MFI упал, но объем вырос) – происходит соревнование покупателей и продавцов вследствие примерно равных сил. Обычно, прорыв такого бара дает знать, определяет ли этот бар продолжение тренда или им тренд аннулирован. Автор: Билл Вильямс (Bill Williams) Первоисточник: «Торговый хаос» Код Альфа-Директ function Initialize() { IndicatorName = "BW_MFI"; PriceStudy = false; AddInput("Input", Inputs.Candle); AddSeries("BW_MFI", DrawAs.Custom, Color.Green, AxisType.ZeroBased); AddGlobalVariable("FI", Types.Double, 0.0); } function Evaluate() { // AlfaDirect. 2015. OX // BW_MFI (Market Facilitation Index) - Индекс облегчения рынка Билла Вильямса // (Bill Williams) var a = (Input.High[0]-Input.Low[0])/Input.Volume[0]; BW_MFI = a; if (CurrentIndex > 0) { if (a > FI && Input.Volume[0] > Input.Volume[1]) BW_MFI.DrawHistogram (Color.Green, Color.Green, 50); if (a > FI && Input.Volume[0] < Input.Volume[1]) BW_MFI.DrawHistogram (Color.Blue, Color.Blue, 50); if (a < FI && Input.Volume[0] < Input.Volume[1]) BW_MFI.DrawHistogram (Color.Brown, Color.Brown, 50); if (a < FI && Input.Volume[0] > Input.Volume[1]) BW_MFI.DrawHistogram (Color.Pink, Color.Pink, 100); } FI = a; } |