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

Hull Moving Average

hma.mq5
Вы автор или правообладатель?

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

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

О программе

HMA — пользовательский индикатор для MetaTrader 5, отображаемый в окне графика. Он рассчитывает сглаженную скользящую среднюю по методике Hull Moving Average и выводит её в виде линии на графике. Индикатор использует два буфера: один служит для промежуточных расчётов и по умолчанию не отображается, второй отображает итоговую линию.

Расчёт выполняется на основе ценовых данных инструмента и выбранного метода усреднения. Пользователь может задать период, смещение по горизонтали, метод усреднения и тип применяемой цены. Название индикатора на графике формируется из периода и смещения.

Индикатор предназначен для визуального анализа динамики цены и не выполняет торговых операций.

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

НастройкаОписание
HMAPeriod Период расчёта скользящей средней. Значение должно быть больше 1, иначе инициализация индикатора завершается ошибкой.
HMAShift Горизонтальное смещение линий индикатора на графике в барах.
InpMAMethod Метод усреднения, применяемый при расчёте скользящих средних. По умолчанию используется линейно-взвешенный метод.
InpMAPrice Тип цены, к которому применяются скользящие средние при расчёте.
Получить полный код

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

#property version   "1.00"
#property strict

#include <MovingAverages.mqh>

#property indicator_chart_window 
#property indicator_buffers 2 
#property indicator_color1 Black
#property indicator_style1 0
#property indicator_width1 1
#property indicator_color2 DeepSkyBlue
#property indicator_style2 0
#property indicator_width2 2

input int                 HMAPeriod=13;           // Period 
input int                 HMAShift=0;             // Shift
input ENUM_MA_METHOD      InpMAMethod=MODE_LWMA;  // Method

input ENUM_APPLIED_PRICE  InpMAPrice=5;           // Price

double    HMABuffer[];
double    ExtSignalBuffer[];

bool      ExtParameters=false;

int OnInit(void)
  {
      // код доступен только после оплаты
   }
   IndicatorDigits(Digits+1);

   SetIndexStyle(0,DRAW_NONE);//If you want see the line (that is the 

   SetIndexShift(0,HMAShift);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexShift(1,HMAShift);
   SetIndexDrawBegin(1,HMAPeriod);

   SetIndexBuffer(0,HMABuffer);
   SetIndexBuffer(1,ExtSignalBuffer);

   IndicatorShortName("Hull Moving Average("+IntegerToString(HMAPeriod)
                      +","+IntegerToString(HMAShift)+")");
   SetIndexLabel(0,"Hull Moving Average");

   if(HMAPeriod<=1)
     {

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

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

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

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

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

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

Стоимость полного кода
175₽ ≈ $2.14