← К каталогу
Исходный код · ID 4496

Williams AD +MA

!williams ad ma indicator_v2.mq5
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Индикатор рассчитывает показатель Williams Accumulation/Distribution (A/D), который определяется изменением цены и объёма. Объём выступает в роли весового коэффициента: рост A/D свидетельствует о накоплении (покупке), а падение — о распределении (продаже). Результат расчёта отображается в отдельном окне графика в виде линий.

К показателю применяется скользящая средняя (MA), настраиваемая по методу и периоду. Индикатор поддерживает различные типы отрисовки сигнальной линии. Параметры индикатора и сигнальной линии задаются отдельно.

Индикатор оснащён системой уведомлений о событиях, включающей вывод сообщений, звуковые сигналы, отправку электронной почты и мобильные уведомления. Срабатывание происходит при пересечении значений буферов в определённых комбинациях.

Настройки программы

НастройкаОписание
SignalMA1 Период скользящей средней, применяемой к буферу Williams A/D. Задаёт количество баров, используемых для расчёта сигнальной линии.
MA1Method Метод расчёта скользящей средней для сигнальной линии. Определяет тип усреднения, используемый при построении MA на буфере A/D.
MA12Type Тип отрисовки скользящей средней. Определяет способ визуального отображения линии MA: в виде линии или облака.
Получить полный код

Поиск по коду файла

#property description "Williams Accumulation/Distribution [A/D] определяется изменением цены и объема." 
#property description "Объем выступает в роли весового коэффициента при изменении цены: рост A/D = накопление (покупка) и падение A/D = распределение (продажа) фьючерса." 

#property indicator_separate_window
#property indicator_buffers 2

enum MAtype { NO, Lines, Cloud };

extern int            SignalMA1  =  15;

extern ENUM_MA_METHOD MA1Method  =  MODE_LWMA;

extern int             WADShift  =  0,
                       MA1Shift  =  0;     

extern color            ADcolor  =  LightSteelBlue,   //Lavender,    Индекс - Цвет
                       MA1color  =  Lime;             //             Первая МАшка: Цвет

extern MAtype          MA12Type  =  Lines;            //Первая, Вторая МАшка - Тип Отрисовки 
extern ENUM_LINE_STYLE  ADstyle  =  STYLE_SOLID,      //Индекс - Стиль
                       MA1style  =  STYLE_SOLID;      //Первая МАшка: Стиль

extern int               ADsize  =  2,                //Индекс - Толщина
                        MA1size  =  1;                //Первая МАшка: Толщина

extern bool       AlertsMessage  =  false,    
                    AlertsSound  =  false,
                    AlertsEmail  =  false,
                   AlertsMobile  =  false;

double Signal1[], Signal2[], Signal3[], Buffer[];
datetime TimeBar=0; 

int init()
  {
      // код доступен только после оплаты
   }

int deinit()  { return(0); }

int start()
{
      // код доступен только после оплаты
   }
   double AD,TRH,TRL;

   int limit, i;
   int counted_bars=IndicatorCounted();

   if(counted_bars<0) return(-1);

   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;

   for (i=limit; i >= 0; i--)   //for(i=0; i<=limit; i++)    //
     {      
      TRH = MathMax(High[i], Close[i+1]);
      TRL = MathMin(Low[i], Close[i+1]);

      if (Close[i]>Close[i+1]+Point)       AD = Close[i]-TRL;
      else if (Close[i]<Close[i+1]-Point)  AD = Close[i]-TRH;
      else AD = 0;

      Buffer[i] = Buffer[i+1]+AD;
     }

   for (i=limit; i>=0; i--) 
     {
      if (SignalMA1==0) Signal1[i]=EMPTY_VALUE; else Signal1[i]=iMAOnArray(Buffer,0,SignalMA1,0,MA1Method,i);

     }

   if (Ale

Показано первые 50% кода (символов: 4231)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
423,10₽ ≈ $5.17