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

EMA-Crossover_Signal

ema_cross_rsi_trend_spotter_edit.mq5

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

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 5, предназначенный для отображения на графике моментов пересечения двух экспоненциальных скользящих средних (EMA) при одновременном подтверждении со стороны индикатора RSI. Индикатор рисует стрелки вверх и вниз в точках, где условия совпадают, что помогает визуально оценивать потенциальные развороты или продолжения движения. Исходный код содержит устаревшие функции init, deinit и start, что характерно для более старых версий MQL, однако заявленная платформа — MetaTrader 5.

Индикатор использует два буфера для отображения стрелок: один для сигналов вверх (жёлтый цвет) и один для сигналов вниз (голубой цвет). Ширина стрелок задана равной 4. Настройки позволяют задать периоды быстрой и медленной EMA, период RSI, а также включить или отключить всплывающие уведомления. При включённых уведомлениях индикатор подаёт звуковой сигнал через функцию Alert при появлении нового сигнала на последних барах.

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

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

НастройкаОписание
FasterEMA Целочисленный параметр, задающий период быстрой экспоненциальной скользящей средней (EMA). Значение по умолчанию 15.
SlowerEMA Целочисленный параметр, задающий период медленной экспоненциальной скользящей средней (EMA). Значение по умолчанию 240.
RSIPeriod Целочисленный параметр, задающий период индикатора RSI, используемого для подтверждения сигналов. Значение по умолчанию 21.
Alerts Логический переключатель. При значении true включает всплывающие уведомления (Alert) при появлении сигналов пересечения на последних барах. По умолчанию false.
Получить полный код

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

/*
  +------------------------------------------------------------------+
  | Allows you to enter two ema periods and it will then show you at |
  | Which point they crossed over. It is more usful on the shorter   |
  | periods that get obscured by the bars / candlesticks and when    |
  | the zoom level is out. Also allows you then to remove the emas   |
  | from the chart. (emas are initially set at 5 and 6)              |
  +------------------------------------------------------------------+
*/   

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Yellow
#property indicator_color2 Aqua

#property indicator_width1 4
#property indicator_width2 4

double CrossUp[];
double CrossDown[];
extern int FasterEMA = 15;
extern int SlowerEMA = 240;
extern int RSIPeriod = 21;
extern bool Alerts = false;

bool EMACrossedUp = false;
bool RSICrossedUp = false;
bool EMACrossedDown = false;
bool RSICrossedDown = false;
int SignalLabeled = 0; // 0: initial state; 1: up; 2: down.
int upalert=false,downalert=false;

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

int deinit()
  {

   return(0);
  }

int start() {
      // код доступен только после оплаты
   }
   int limit, i, counter;
   double fasterEMAnow, slowerEMAnow, fasterEMAprevious, slowerEMAprevious, fasterEMAafter, slowerEMAafter;
   double RSInow, RSIprevious, RSIafter;
   double Range, AvgRange;

   int counted_bars=IndicatorCounted();

   if(counted_bars<0) return(-1);

   if(counted_bars>0) counted_bars--;

   limit=Bars-counted_bars;

   for(i = 0; i <= limit; i++) {

      counter=i;
      Range=0;
      AvgRange=0;
      for (counter=i ;counter<=i+9;counter++)
      {
         AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);
      }
      Range=AvgRange/10;

      fasterEMAnow = iMA(NULL, 0, FasterEMA, 0, MODE_EM

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

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

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

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

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

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

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