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

Fisher_m11

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

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

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

О программе

Fisher_m11 — пользовательский индикатор для MetaTrader 5, реализующий трансформацию Фишера с настраиваемыми коэффициентами сглаживания. Индикатор определяет экстремумы цены за заданный период, нормализует текущее значение цены в диапазон от -1 до +1, применяет экспоненциальное сглаживание и вычисляет индекс Фишера.

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

При инициализации индикатор проверяет корректность коэффициентов сглаживания (не допускает значений ≥1 или <0) и выводит предупреждения при их нарушении. Также выводится оповещение, если загруженных баров недостаточно для расчёта.

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

НастройкаОписание
RangePeriods Количество баров, используемых для определения минимума и максимума цены при расчёте диапазона.
PriceSmoothing Коэффициент сглаживания нормализованного значения цены (экспоненциальное сглаживание локализации цены). Допустимые значения от 0 до менее 1; при значении ≥1 автоматически устанавливается 0.9999, при отрицательном — 0.
IndexSmoothing Коэффициент сглаживания индекса Фишера (экспоненциальное сглаживание). Допустимые значения от 0 до менее 1; при значении ≥1 автоматически устанавливается 0.9999, при отрицательном — 0.
Получить полный код

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

#property indicator_separate_window

#property indicator_buffers 3
#property indicator_color2 Lime
#property indicator_color3 Red
#property indicator_width2 4
#property indicator_width3 4

int   LeftNum1=56;
int   LeftNum2=56;

extern int     RangePeriods=10;
extern double  PriceSmoothing=0.3;    // =0.67 bei Fisher_m10 
extern double  IndexSmoothing=0.3;    // =0.50 bei Fisher_m10

string         ThisName="Fisher_m11";
int            DrawStart;

double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];

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

int deinit()
  {

   return(0);
  }

int start()
  {
      // код доступен только после оплаты
   }
   if (Bars<DrawStart)
      {
      Alert("Fish84: Not enough Bars loaded to calculate FisherIndicator with RangePeriods=",RangePeriods);
    

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

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

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

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

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

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

Стоимость полного кода
337,90₽ ≈ $4.13