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

RSI Divergence

rsi_divergence.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 общих тегов
Вы автор или правообладатель?

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

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

О программе

RSI Divergence — это пользовательский индикатор для MetaTrader, который рассчитывает значение RSI (Relative Strength Index) и визуально отмечает на графике бычьи и медвежьи расхождения (дивергенции). Индикатор отображается в отдельном окне и рисует линии треннов с указателями в местах обнаружения расхождений между движением цены и индикатора.

Индикатор использует встроенную функцию iRSI для расчёта RSI с заданным периодом и типом цены. Два горизонтальных уровня — перекупленности и перепроданности — отображаются на графике для наглядности. Бычьи расхождения отмечаются зелёным цветом, медвежьи — оранжевым, пользователь может задать цвета самостоятельно.

При обнаружении подходящего паттерна расхождения индикатор создаёт на графике объекты типа OBJ_TREND (линия тренда) и OBJ_ARROW (стрелка), соединяющие соответствующие точки RSI и цены. При удалении индикатора с графика все созданные объекты удаляются.

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

НастройкаОписание
Bullish Цвет линий трендов и стрелок, обозначающих бычье расхождение (бычью дивергенцию).
Bearish Цвет линий трендов и стрелок, обозначающих медвежье расхождение (медвежью дивергенцию).
Length Период расчёта индикатора RSI. Определяет количество баров, используемых для вычисления значения RSI.
Price Тип цены, используемый для расчёта RSI. 0 — Close, 1 — Open, 2 — High, 3 — Low, 4 — Median, 5 — Typical, 6 — Weighted.
OverBought Уровень перекупленности RSI, отображаемый на графике в виде горизонтальной линии.
OverSold Уровень перепроданности RSI, отображаемый на графике в виде горизонтальной линии.
Получить полный код

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

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Green

extern color Bullish = MediumSeaGreen;
extern color Bearish = Orange;

extern int Length=14;
extern int Price=0;    // Applied price

extern int OverBought=70;
extern int OverSold=30;

double RSI[];

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

int deinit()
  {
   ObjectsDeleteAll(0, OBJ_TREND);
   ObjectsDeleteAll(0, OBJ_ARROW);
   int WindowNumber;
   WindowNumber=WindowFind("RSI Divergence");
   if (WindowNumber!=-1)
   {
    ObjectsDeleteAll(WindowNumber, OBJ_TREND);
    ObjectsDeleteAll(WindowNumber, OBJ_ARROW);
   }
   return(0);
  }

void DrawLine(int First, int Second, bool BullFl)
{
 string ObjName=Time[First]+"_"+Time[Second];
 int WindowNumber;
 if (ObjectFind(ObjName)==-1)
 {
  WindowNumber=WindowFind("RSI Divergence");
  if (WindowNumber!=-1)
  {
   ObjectCreate(ObjName, OBJ_TREND, WindowNumber, Time[First], RSI[First], Time[Second], RSI[Second]);
   ObjectSet(ObjName, OBJPROP_RAY, false);
   ObjectCreate(ObjName+"A", OBJ_ARROW, WindowNumber, Time[Second], RSI[Second]);
   if (BullFl)
   {
    ObjectSet(ObjName, OBJPROP_COLOR, Bullish);
    ObjectCreate(ObjName+"~", OBJ_TREND, 0, Time[First], Low[First], Time[Second], Low[Second]);
    ObjectSet(ObjName+"~", OBJPROP_COLOR, Bullish);
    ObjectCreate(ObjName+"~A", OBJ_ARROW, 0, Time[Second], Low[Second]);
    ObjectSet(ObjName+"~A", OBJPROP_COLOR, Bullish);
    ObjectSet(ObjName+"~A", OBJPROP_ARROWCODE, 241);
    ObjectSet(ObjName+"A", OBJPROP_COLOR, Bullish);
    ObjectSet(ObjName+"A", OBJPROP_ARROWCODE, 241);
   }
   else
   {
    ObjectSet(ObjName, OBJPROP_COLOR, Bearish);
    ObjectCreate(ObjName+"~", OBJ_TREND, 0, Time[First], High[First], Time[Second], High[Second]);
    ObjectSet(ObjName+"~", OBJPROP_COLOR, Bearish);
    ObjectCreate(ObjName+"~A", OBJ_ARROW, 0, Time[Second], High[Second]);
    ObjectSet(ObjName+"~A", OBJPROP_COLOR, Bearish);
    ObjectSet(ObjName+"~A", OBJPROP_ARROWCODE, 242);
    ObjectSet(ObjName+"A", OBJPROP_COLOR, Bearis

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

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

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

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

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

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

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