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

adaptive t3 rainbow - generic histo nmc.mq5

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

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

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

О программе

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

Два столбца гистограмм (зелёный и оранжевый) отражают направление изменения усреднённого значения: зелёный — при росте, оранжевый — при падении. Индикатор поддерживает выбор временного периода и типа цены для расчёта.

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

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

НастройкаОписание
TimeFrame Временной период для расчёта индикатора в виде строки (например, M15, H1, D1). Значение "Current time frame" означает использование текущего таймфрейма графика.
T3Price Тип цены, используемой для расчёта индикатора. По умолчанию установлен PRICE_CLOSE (цена закрытия).
Получить полный код

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

#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1  LimeGreen
#property indicator_color2  Orange
#property indicator_width1  2
#property indicator_width2  2
#property indicator_minimum 0
#property indicator_maximum 1

extern string TimeFrame       = "Current time frame";
extern string T3Periods       = "14;17;20;23;26;29;32;35";
extern string T3Hots          = "0.7;0.7;0.7;0.7;0.7;0.7;0.7;0.7";
extern string T3AdaptPeriods  = "25;25;25;25;25;25;25;25";
extern string T3Originals     = "T;T;T;T;T;T;T;T";
extern int    T3Price         = PRICE_CLOSE;

double Buffer0[];
double Buffer1[];
double Buffer2[];
double slope[];

string indicatorFileName;
bool   returnBars;
bool   calculateValue;
int    timeFrame;

int    size;
bool   originals[];
double aperiods[];
double periods[];
double hots[];

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

int start()
{
      // код доступен только после оплаты
   }
   int counted_bars=IndicatorCounted();
      if(counted_bars<0) return(-1);
      if(counted_bars>0) counted_bars--;
         int limit = MathMin(Bars-counted_bars,Bars-1);
         if (returnBars) { Buffer0[0] = MathMin(limit+1,Bars-1); return(0); }

   if (calculateValue || timeFrame == Period())
   {
      for(int i=limit; i >= 0; i--)
      {
         double sum = 0;
         for (int k=0; k<size; k++)
         {
            double dev = iStdDev(NULL,0,aperiods[k],0,MODE_SMA,T3Price,i);
            double avg = iSma(dev,aperiods[k],i,k);
            if (dev!=0) 
                   double period = periods[k]*avg/dev;
            else          period = periods[k];
            if (period<3) period = 3;

            sum += iT3(iMA(NULL,0,1,0,MOD

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

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

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

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

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

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

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