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

dz_rsioma_-_oma_pre-filtered_nmc.mq5

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

!!!-mt4 x-xardg-rsi.mq5MQL5 / MetaTrader 5 · 2 общих тегов!!! rsi ma simple+arrows 1.2 (mtf).mq5MQL5 / MetaTrader 5 · 2 общих теговea robofibo source v.11.2.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedingvonepointoneone.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedging 1.10 optimized.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedging 1.09 a (2).mq4MQL4 / MetaTrader 4 · 2 общих тегов
Вы автор или правообладатель?

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

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

О программе

Данный продукт представляет собой пользовательский индикатор для платформы MetaTrader 4, написанный на языке MQL4. Индикатор рассчитывает аналитические значения на основе модифицированного RSI с применением сглаживания OMA и отображает результаты в отдельном окне графика.

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

Продукт включает визуальные элементы в виде стрелок, отображающих изменение тренда, а также систему уведомлений с поддержкой звуковых, текстовых и email-оповещений при наступлении заданных условий. Доступна работа на разных таймфреймах с возможностью интерполяции данных.

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

НастройкаОписание
TimeFrame Таймфрейм — Таймфрейм для расчёта индикатора
RsiMethod Метод RSI — Метод расчёта RSI (выбор из доступных вариантов)
RsiOma_Period Период OMA — Период расчёта OMA для сглаживания RSI
RsiOma_Price Цена OMA — Ценовой тип, используемый для расчёта OMA
RsiOma_PriceShift Сдвиг цены OMA — Сдвиг цены при расчёте OMA
Oma_Speed Скорость OMA — Скорость сглаживания OMA
Oma_Adaptive Адаптивный режим OMA — Включает или отключает адаптивный режим расчёта OMA
MaPeriod Период скользящей средней — Период скользящей средней, применяемой к данным RSI
MaType Тип скользящей средней — Тип скользящей средней
DzLookBackBars Глубина анализа зон — Количество баров для анализа глубины зон вероятности
DzBuyProbability Вероятность покупки — Параметр вероятности для определения зон покупок
DzSellProbability Вероятность продаж — Параметр вероятности для определения зон продаж
arrowsVisible Отображение стрелок — Включает или отключает отображение стрелок на графике
arrowsIdentifier Идентификатор стрелок — Идентификатор объектов стрелок на графике
arrowsUpColor Цвет стрелок вверх — Цвет стрелок, указывающих восходящее движение
arrowsDnColor Цвет стрелок вниз — Цвет стрелок, указывающих нисходящее движение
arrowsUpperGap Отступ стрелок вверх — Отступ стрелок вверх от цены
arrowsLowerGap Отступ стрелок вниз — Отступ стрелок вниз от цены
alertsOn Включить уведомления — Главный переключатель системы уведомлений
alertsOnMaCross Уведомления при пересечении СС — Включает или отключает уведомления при пересечении скользящей средней
alertsOnSlopeChange Уведомления при изменении наклона — Включает или отключает уведомления при изменении направления наклона
alertsOnCurrent Проверка на текущем баре — Определяет, на каком баре проверять условия для уведомлений
alertsMessage Текстовые уведомления — Включает или отключает всплывающие текстовые уведомления
alertsSound Звуковые уведомления — Включает или отключает звуковые уведомления
alertsEmail Email-уведомления — Включает или отключает отправку email-уведомлений
soundfile Звуковой файл — Имя звукового файла для уведомлений
Interpolate Интерполяция — Включает или отключает интерполяцию значений между барами
Получить полный код

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

#property indicator_separate_window
#property indicator_buffers    6
#property indicator_color1     LimeGreen
#property indicator_color2     Red
#property indicator_color3     LimeGreen
#property indicator_color4     Red
#property indicator_color5     Red
#property indicator_color6     Gold
#property indicator_width3     2
#property indicator_width4     2
#property indicator_width5     2
#property indicator_style1     STYLE_DOT
#property indicator_style2     STYLE_DOT
#property indicator_style6     STYLE_DOT
#property indicator_levelcolor MediumOrchid
#import "dynamicZone.dll"
   double dzBuy(double& sourceArray[],double probabiltyValue, int lookBack, int bars, int i );
   double dzSell(double& sourceArray[],double probabiltyValue, int lookBack, int bars, int i );
#import

extern string TimeFrame         = "Current time frame";
extern int    RsiMethod         = 2;
extern int    RsiOma_Period     = 14;
extern int    RsiOma_Price      = 0;
extern int    RsiOma_PriceShift = 0;
extern double Oma_Speed         = 3;
extern bool   Oma_Adaptive      = true;
extern int    MaPeriod          = 10;
extern int    MaType            = MODE_LWMA;
extern int    DzLookBackBars    = 35;
extern double DzBuyProbability  = 0.20;
extern double DzSellProbability = 0.20;
extern bool   arrowsVisible     = false;
extern string arrowsIdentifier  = "RsiomaArrows1";
extern color  arrowsUpColor     = DeepSkyBlue;
extern color  arrowsDnColor     = Red;
extern double arrowsUpperGap    = 0.75;
extern double arrowsLowerGap    = 0.75;

extern string note                = "turn on Alert = true; turn off = false";
extern bool   alertsOn            = false;
extern bool   alertsOnMaCross     = true;
extern bool   alertsOnSlopeChange = true;
extern bool   alertsOnCurrent     = true;
extern bool   alertsMessage       = true;
extern bool   alertsSound         = false;
extern bool   alertsEmail         = false;
extern string soundfile           = "alert2.wav";
extern bool   Interpolate         = true;

double rsi[];
double rsida[];
double rsidb[];
double ma[];
double dzu[];
double dzd[];
double trend[];
double slope[];

string indicatorFileName;
int    timeFrame;
bool   returnBars;
bool   calculateValue;

int init()
{
      // код доступен только после оплаты
   }
int deinit()
{
   string lookFor       = arrowsIdentifier+":";
   int    lookForLength = StringLen(lookFor);
   for (int i=ObjectsTotal()-1; i>=0; i--)
   {
      string objectName = ObjectName(i);
         if (StringSubstr(objectName,0,lookForLength) == lookFor) ObjectDelete(objectName);
   }
   return(0); 
}

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

void manageArrow(int i)
{
   if (arrowsVisible )
   {
         string lookFor = arrowsIdentifier+":"+Time[i]; ObjectDelete(lookFor);
         if (trend[i]!=trend[i+1])
         {
            if (trend[i] == 1) drawArrow(i,arrowsUpColor,241,false);
            if (trend[i] ==-1) drawArrow(i,arrowsDnColor,242,true);
         }
   }
}               

void drawArrow(int i,color theColor,int theCode,bool up)
{
   string name = arrowsIdentifier+":"+Time[i];
   double gap  = iATR(NULL,0,20,i);

      ObjectCreate(name,OBJ_ARROW,0,Time[i],0);
         ObjectSet(name,OBJPROP_ARROWCODE,theCode);
         ObjectSet(name,OBJPROP_COLOR,theColor);
         if (up)
               ObjectSet(name,OBJPROP_PRICE1,High[i]+gap*arrowsUpperGap);
         else  ObjectSet(name,OBJPROP_PRICE1,Low[i] -gap*arrowsLowerGap);
}

double workOma[][7];
#define F01 0
#define F02 1
#define F03 2
#define F04 3
#define F05 4
#define F06 5
#define prc 6

double iOma(double price, double averagePeriod, double constant, bool adaptive, int 

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

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

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

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

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

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

Стоимость полного кода
1 302,30₽ ≈ $15.92