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

Dynamic RSI

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

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

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

О программе

Dynamic RSI — это пользовательский индикатор для MetaTrader 5, разработанный Roman Kiverin. Он основан на расчёте стандартного индикатора RSI с дополнительной обработкой динамических зон покупки и продажи.

Индикатор вычисляет RSI за заданный период, определяет максимумы и минимумы за период обзора, а затем строит верхнюю и нижнюю динамические зоны с использованием настраиваемых множителей вероятности. Средняя линия рассчитывается как сумма линейно-взвешенного скользящего среднего дельты и минимума RSI.

При пересечении сглаженной RSI-линии верхней зоны рисуется стрелка вверх (сигнал покупки), при пересечении нижней зоны — стрелка вниз (сигнал продажи). Визуальные параметры линий, стрелок и цветов настраиваются через входные параметры.

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

НастройкаОписание
Buyers Dynamic Zone Probability (DZbuy) Вероятность динамической зоны покупки — Множитель вероятности для верхней динамической зоны покупки
Sellers Dynamic Zone Probability (DZsell) Вероятность динамической зоны продажи — Множитель вероятности для нижней динамической зоны продажи
Period RSI (PeriodRSI) Период RSI — Период расчёта индикатора RSI
Look Back PeriodRSI (LookBack) Период обзора RSI — Период обзора для определения максимумов и минимумов RSI
Sell Signall Color (MaxColor) Цвет верхней динамической зоны — Цвет линии верхней динамической зоны
Buy Signall Color (MinColor) Цвет нижней динамической зоны — Цвет линии нижней динамической зоны
Up Line Color (UpColor) Цвет верхней линии — Цвет верхней линии
Middle Line Color (MiddleColor) Цвет средней линии — Цвет средней линии
Down Line Color (DnColor) Цвет нижней линии — Цвет нижней линии
RSI Line Color (RSIColor) Цвет линии RSI — Цвет линии RSI
Width Line (Width) Толщина линий — Толщина линий
Draw Graphic? (DrawGraphic) Отображение стрелок — Включение отображения графических стрелок
Size Arrow (5 .. 50) (SizeArrow) Размер стрелок — Размер стрелок (от 5 до 50)
Color Up Arrow (UpArrowColor) Цвет стрелки вверх — Цвет стрелки вверх
Color Down Arrow (DnArrowColor) Цвет стрелки вниз — Цвет стрелки вниз
Opaque Arrow (Opaque) Непрозрачность стрелок — Непрозрачность стрелок
Up and Down Offset from Arrow (Offset) Смещение стрелок — Смещение стрелок от точки сигнала
ID Name (ID) Идентификатор имени — Идентификатор имени объекта
Получить полный код

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

#property version     "1.0"

#property strict

#property description "Dynamic RSI\n "
#property indicator_separate_window

#property indicator_buffers 6

input double   DZbuy             =  0.1;                 // Buyers Dynamic Zone Probability
input double   DZsell            =  0.1;                 // Sellers Dynamic Zone Probability
input int      PeriodRSI         =  14;                  // Period RSI
input int      LookBack          =  60;                  // Look Back PeriodRSI
input color    MaxColor          =  clrDarkOrchid;       // Sell Signall Color
input color    MinColor          =  clrDodgerBlue;       // Buy Signall Color
input color    UpColor           =  clrDarkGray;         // Up Line Color
input color    MiddleColor       =  clrGold;             // Middle Line Color
input color    DnColor           =  clrDarkGray;         // Down Line Color
input color    RSIColor          =  clrDarkSeaGreen;     // RSI Line Color
input int      Width             =  2;                   // Width Line
input bool     DrawGraphic       =  true;                // Draw Graphic?
input int      SizeArrow         =  15;                  // Size Arrow (5 .. 50)
input color    UpArrowColor      =  clrDarkOrchid;       // Color Up Arrow
input color    DnArrowColor      =  clrDodgerBlue;       // Color Down Arrow
input uchar    Opaque            =  80;                  // Opaque Arrow
input int      Offset            =  10;                  // Up and Down Offset from Arrow
input string   ID                =  "RSI ID ";           // ID Name

double         UpLineBuffer[];
double         DnLineBuffer[];
double         RSILineBuffer[];
double         RSIValueBuffer[];
double         MaxLineBuffer[];
double         MinLineBuffer[];
double         WMALineBuffer[];
double         DeltaBuffer[];
double         UpBuffer[];
double         DnBuffer[];
double         LineBuffer[];

uint UpDrawBuffer[], DnDrawBuffer[];
int XDraw, YDraw;
string UpResourceName, DnResourceName;

#define  DrawArrow(Name, Rnm, Buff, time, prc, Anchor)                                          \
         if(DrawGraphic)                                                                        \
            if(ObjectFind(Name) < 0)                                                            \
            {                                                                                   \
               ObjectCreate(0, Name, OBJ_BITMAP, 0, 0, 0);                                      \
               ObjectSetInteger(0, Name, OBJPROP_TIME, 0, time);                                \
               ObjectSetDouble(0, Name, OBJPROP_PRICE, 0, prc);                                 \
               ObjectSetInteger(0, Name, OBJPROP_ANCHOR, Anchor);                               \
               ObjectSetInteger(0, Name, OBJPROP_SELECTABLE, false);                            \
               ObjectSetString(0, Name, OBJPROP_BMPFILE, Rnm);                                  \
               ResourceCreate(Rnm, Buff, XDraw, YDraw, 0, 0, 0, COLOR_FORMAT_ARGB_NORMALIZE);   \
           }                                                                                    \
            else                                                                                \
               if(ObjectGetDouble(0, Name, OBJPROP_PRICE) != prc)                               \
                  ObjectMove(Name, 0 , time, prc);

#define  GetName(i)  ID + TimeToString(Time[i])

#define  UpArrow(i) DrawArrow(GetName(i), UpResourceName, UpDrawBuffer, Time[i], High[i], ANCHOR_LOWER)
#define  DnArrow(i) DrawArrow(GetName(i), DnResourceName, DnDrawBuffer, Time[i], Low[i], ANCHOR_UPPER)
#define  Delete(i) if(DrawGraphic) ObjectDelete(0,GetName(i))

void OnDeinit(const int reason)
  {

   ObjectsDeleteAll(0, ID, 0);
  }

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

   if(DrawGraphic)
     {
      UpResourceName = "::Arrow Up";
      DnResourceName = "::Arrow Down";
      XDraw = SizeArrow * 2 + 1;
      YDraw = SizeArrow * 2 + Offset;
      ArrayResize(UpDrawBuffer, XDraw * YDraw);
      ArrayResize(DnDrawBuffer, XDraw * YDraw);
      ArrayI

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

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

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

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

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

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

Стоимость полного кода
525,60₽ ≈ $6.42