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

fractal adaptive moving average.mq4

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

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

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

О программе

Данный файл представляет собой пользовательский индикатор для платформы MetaTrader 4, реализующий аналитический инструмент Fractal Adaptive Moving Average. Индикатор отображает два графика на ценовом окне: основную линию красного цвета и сигнальную линию синего цвета, рассчитываемые на основе адаптивной обработки ценовых данных.

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

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

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

НастройкаОписание
RPeriod Целочисленный период расчёта индикатора, определяющий базовое количество баров, используемых для адаптивной фильтрации. Если количество баров на графике меньше этого значения, расчёт не выполняется.
multiplier Числовой множитель, управляющий скоростью адаптации основной линии индикатора. Определяет степень влияния текущей цены на формирование основного значения.
signal_multiplier Числовой множитель, управляющий скоростью адаптации сигнальной линии индикатора. Определяет степень сглаживания сигнального значения относительно основной линии.
Получить полный код

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

#property  indicator_chart_window
#property  indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Blue      

double ExtMapBuffer1[];
double ExtMapBuffer2[];

extern int RPeriod = 16;
extern double multiplier = 4.6; 
extern double signal_multiplier = 2.5; 

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

int start() 
{
      // код доступен только после оплаты
   }
     int    i,k,counted_bars=IndicatorCounted();

     if (Bars < RPeriod) return(0);
     Comment("Bars : ",Bars);
     int maxshift = Bars-RPeriod-1; 
     int limit= maxshift - counted_bars;
     if (limit < 1) limit = 1; 

     int N = MathFloor(RPeriod/2)*2;  // Force N to even number
     double frama = Close[maxshift];
     double signal = frama; 

     ExtMapBuffer1[maxshift] = Close[maxshift]; 
     ExtMapBuffer2[maxshift] = Cl

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

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

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

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

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

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

Стоимость полного кода
163,50₽ ≈ $2.00