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

#4x 2010 xard time signal-b.mq4

Похожие материалы по тегам

ares_indicator.pineTradingView · 1 общих теговgold_trend_revers.mq5MQL5 / MetaTrader 5 · 1 общих тегов!!!-mt4 x-xardg-rsi.mq5MQL5 / MetaTrader 5 · 1 общих тегов! cycle-identifier.mq5MQL5 / MetaTrader 5 · 1 общих тегов!!! rsi ma simple+arrows 1.2 (mtf).mq5MQL5 / MetaTrader 5 · 1 общих теговprecisionflowea.mq5MQL5 / MetaTrader 5 · 1 общих тегов
Вы автор или правообладатель?

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

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

О программе

Данный продукт представляет собой пользовательский индикатор для платформы MetaTrader 4, отображаемый в отдельном окне. Он построен на основе сглаженной скользящей средней (SMMA) и включает систему обнаружения ценовых циклов с фильтрацией.

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

Продукт предоставляет настраиваемые параметры выбора типа фильтра (SMA или RSI), его силы, а также возможность включения циклического фильтра для уточнения сигналов.

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

НастройкаОписание
PriceActionFilter Период сглаженной скользящей средней (SMMA), используемой для расчёта ценового действия.
Length Множитель для расчёта средней амплитуды ценового диапазона.
MajorCycleStrength Множитель силы основного цикла, определяющий порог обнаружения циклических разворотов.
UseCycleFilter Переключатель включения или отключения циклического фильтра.
UseFilterSMAorRSI Тип фильтра: 1 — фильтр на основе SMA с нулевым лагом, 2 — фильтр на основе RSI.
FilterStrengthSMA Глубина сглаживания фильтра при использовании SMA с нулевым лагом.
FilterStrengthRSI Глубина сглаживания фильтра при использовании RSI.
Получить полный код

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

#property indicator_separate_window
#property indicator_minimum -1.0
#property indicator_maximum 1.0
#property indicator_buffers 6
#property indicator_color1 Black
#property indicator_color2 Aqua
#property indicator_width2 4
#property indicator_color3 Crimson
#property indicator_width3 4
#property indicator_color4 Black
#property indicator_color5 Black
#property indicator_color6 Black

extern int PriceActionFilter = 1;
extern int Length = 4;
extern int MajorCycleStrength = 4;
extern bool UseCycleFilter = FALSE;
extern int UseFilterSMAorRSI = 1;
extern int FilterStrengthSMA = 12;
extern int FilterStrengthRSI = 21;
double g_ibuf_104[];
double g_ibuf_108[];
double g_ibuf_112[];
double g_ibuf_116[];
double g_ibuf_120[];
double g_ibuf_124[];
double g_ima_128 = 0.0;
double gd_136 = 0.0;
double gd_144 = 0.0;
double gd_152 = 0.0;
int gi_160 = 0;
int gi_164 = 0;
int gi_168 = 0;
int gi_172 = 0;
int gi_176 = 0;
int gi_unused_180 = 0;
int gi_unused_184 = 0;
int gi_unused_188 = 0;
int gi_unused_192 = 0;
double g_applied_price_196 = 0.0;
double g_applied_price_204 = 0.0;
int gi_212 = 1;
int gi_216 = 1;
double g_applied_price_220 = 0.0;
double g_applied_price_228 = 0.0;
int gi_236 = 0;
int gi_240 = 0;
bool gi_244 = TRUE;
bool gi_248 = FALSE;
bool gi_252 = FALSE;
bool gi_256 = FALSE;
bool gi_260 = FALSE;
int gi_264 = 1;
int gi_268;
int gi_272;

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

int deinit() {
   return (0);
}

int start() {
      // код доступен только после оплаты
   }
   int l_count_0;
   int li_4;
   int li_8;
   double l_ima_12;
   double l_ima_20;
   double l_ima_28;
   double l_ima_36;
   int l_ind_counted_44 = IndicatorCounted();
   if (l_ind_counted_44 < 0) return (-1);
   int li_48 = Bars - l_ind_counted_44;
   if (li_48 < 0) li_48 = 0;
   int li_52 = 250;
   double ld_56 = 0.0;
   double ld_64 = 0.0;
   for (int li_72 = li_48; li_72 >= 0; li_72--) {
      ld_64 = 0.0;
      l_count_0 = 0;
      for (int l_count_76 = 0; l_count_76 < li_52; l_count_76++) {
         l_count_0++;
         li_4 = li_72 + l_count_76;
         if (li_4 >= Bars) break;
         ld_64 += High[li_4] - Low[li_4];
      }
      ld_56 = ld_64 / l_count_0 * Length;
      li_8 = Bars - li_72;
      if (li_8 < 0) li_8 = 0;
      g_ima_128 = iMA(NULL, 0, PriceActionFilter, 0, MODE_SMMA, PRICE_CLOSE, li_72);
      if (UseFilterSMAorRSI == 1) g_ibuf_124[li_72] = ZeroLag(g_ima_128, FilterStrengthSMA, li_72);
      if (UseFilterSMAorRSI == 2) g_ibuf_124[li_72] = ZeroLag(iRSI(NULL, 0, 14, g_ima_128, FilterStrengthRSI), FilterStrengthRSI, li_72);
      if (g_ibuf_124[li_72] > g_ibuf_124[li_72 + 1]) gi_176 = 1;
      if (g_ibuf_124[li_72] < g_ibuf_124[li_72 + 1]) gi_176 = 2;
      if (li_8 <= 1) {
         if (gd_136 == 0.0) gd_144 = ld_56;
         else gd_144 = gd_136;
         g_applied_price_196 = g_ima_128;
         g_applied_price_220 = g_ima_128;
      }
      if (li_8 > 1) {
         if (gi_160 > -1) {
            if (g_ima_128 < g_applied_price_196) {
               if (UseCycleFilter && gi_176 == 2 && gi_248) {
                  g_ibuf_116[li_72 + li_8 - gi_212] = 0;
                  g_ibuf_104[li_72 + li_8 - gi_212] = 0;
               }
               if (!UseCycleFilter && gi_248) {
                  g_ibuf_116[li_72 + li_8 - gi_212] = 0;
                  g_ibuf_104[li_72 + li_8 - gi_212] = 0;
               }
               g_applied_price_196 = g_ima_128;
               gi_212 = li_8;
               gi_248 = TRUE;
            } else {
               if (g_ima_128 > g_applied_price_196) {
                  gi_168 = li_8 - gi_212;
                  if (!UseCycleFilter) {
                     g_ibuf_116[li_72 + gi_168] = -1;
                     g_ibuf_104[li_72 + gi_168] = -1;
                  }
                  if (UseCycleFilter && gi_176 == 1) {
                     g_ibuf_116[li_72 + gi_168] = -1;
                     g_ibuf_104[li_72 + gi_168] = -1;
                     gi_unused_180 = 1;
                  } else gi_unused_180 = 0;
                  gi_248 = TRUE;
                  l_ima_12 = iMA(NULL, 0, PriceActionFilter, 0, MODE_SMMA, PRICE_CLOSE, li_72 + gi_168);
                  if (gi_244) gi_268 = g_ima_128 - l_ima_12 >= gd_144;
                  else gi_268 = g_ima_128 >= l_ima_12 * (gd_144 / 1000.0 + 1.0);
                  if (gi_268 && gi_168 >= gi_264) {
                     gi_160 = -1;
                     g_applied_price_220 = g_ima_128;
                     gi_236 = li_8;
                     gi_256 = FALSE;
                     gi_248 = FALSE;
                  }
               }
            }
         }
         if (gi_160 < 1) {
            if (g_ima_128 > g_applied_price_220) {
               if (UseCycleFilter && gi_176 == 1 && gi_256) {
                  g_ibuf_120[li_72 + li_8 - gi_236] = 0;
                  g_ibuf_104[li_72 + li_8 - gi_236] = 0;
               }
               if (!UseCycleFilter && gi_256) {
                  g_ibuf_120[li_72 + li_8 - gi_236] = 0;
                  g_ibuf_104[li_72 + li_8 - gi_236] = 0;
               }
               g_applied_price_220 = g_ima_128;
               gi_236 = li_8;
               gi_256 = TRUE;
            } else {
               if (g_ima_128 < g_applied_price_220) {
                  gi_168 = li_8 - gi_236;
                  if (!UseCycleFilter) {
                     g_ibuf_120[li_72 + gi_168] = 1;
                     g_ibuf_104[li_72 + gi_168] = 1;
                  }
                  if (UseCycleFilter && gi_176 == 2) {
                     g_ibuf_120[li_72 + gi_168] = 1;
                     g_ibuf_104[li_72 + gi_168] = 1;
                     gi_unused_180 = 2;
                  } else gi_unused_180 = 0;
                  gi_256 = TRUE;
                  l_ima_20 = iMA(NULL, 0, PriceActionFilter, 0, MODE_SMMA, PRICE_CLOSE, li_72 + gi_168);
                  if (gi_244) gi_268 = l_ima_20 - g_ima_128 >= gd_144;
                  else gi_268 = g_ima_128 <= l_ima_20 * (1 - gd_144 / 1000.0);
                  if (gi_268 && gi_168 >= gi_264) {
                     gi_160 = 1;
                     g_applied

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

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

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

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

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

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

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