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

rsicurrencystrength_v1.0 600+.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 Currency Strength рассчитывает относительную силу валют на основе значений RSI для парных символов. Для каждой комбинации валют на графике определяется соответствующий инструмент, вычисляется его RSI, и на основе полученных данных формируется показатель силы каждой валюты. Результаты отображаются в отдельном окне в виде до 10 линий.

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

Встроена система уведомлений, включающая звуковые сигналы, email-рассылку и push-уведомления. Уведомления срабатывают при пересечении уровня перекупленности или перепроданности. Доступна настройка количества звуков, паузы между ними, а также сдвига бара, на котором фиксируется сигнал.

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

НастройкаОписание
Timeframe (timeFrame) Таймфрейм — Таймфрейм, на котором рассчитывается индикатор. Если задан таймфрейм выше текущего графика, индикатор использует рекурсивный расчёт.
Symbol Prefix (symbolPrefix) Префикс символа — Префикс, добавляемый к имени символа при поиске парных инструментов на графике.
Symbol Suffix (symbolSuffix) Суффикс символа — Суффикс, добавляемый к имени символа при поиске парных инструментов на графике.
Period of RSI (rsiPeriod) Период RSI — Период расчёта индикатора RSI, используемого для определения силы валют.
Overbought Level (overboughtLevel) Уровень перекупленности — Уровень перекупленности RSI, при пересечении которого срабатывают уведомления.
Oversold Level (oversoldLevel) Уровень перепроданности — Уровень перепроданности RSI, при пересечении которого срабатывают уведомления.
Number of bars counted(0-all bars) (countBars) Количество баров — Количество баров, учитываемых при расчёте. Значение 0 означает все доступные бары.
uniqueName Уникальное имя — Уникальное имя объекта, используемое для создания графических элементов на графике.
Currency #1 Color (currency1Color) Цвет валюты 1 — Цвет линии первой валюты на графике.
Currency #2 Color (currency2Color) Цвет валюты 2 — Цвет линии второй валюты на графике.
Currency #3 Color (currency3Color) Цвет валюты 3 — Цвет линии третьей валюты на графике.
Currency #4 Color (currency4Color) Цвет валюты 4 — Цвет линии четвёртой валюты на графике.
Currency #5 Color (currency5Color) Цвет валюты 5 — Цвет линии пятой валюты на графике.
Currency #6 Color (currency6Color) Цвет валюты 6 — Цвет линии шестой валюты на графике.
Currency #7 Color (currency7Color) Цвет валюты 7 — Цвет линии седьмой валюты на графике.
Currency #8 Color (currency8Color) Цвет валюты 8 — Цвет линии восьмой валюты на графике.
currency9Color Цвет валюты 9 — Цвет линии девятой валюты на графике.
currency10Color Цвет валюты 10 — Цвет линии десятой валюты на графике.
lineWidth Толщина линий — Толщина линий валют на графике индикатора.
showBoard Показать панель — Включает или отключает отображение информационной панели с данными о силе валют.
fontSize Размер шрифта — Размер шрифта текста на информационной панели.
offset_X Смещение по X — Горизонтальное смещение информационной панели от угла графика.
offset_Y Смещение по Y — Вертикальное смещение информационной панели от угла графика.
borderType Тип рамки — Тип рамки информационных блоков на панели.
borderColor Цвет рамки — Цвет рамки информационных блоков на панели.
textColor Цвет текста — Цвет текста на информационной панели.
alerts Уведомления и Email — Заголовок раздела настроек уведомлений и email-рассылки.
alertOn Включить уведомления — Включает или отключает срабатывание всплывающих уведомлений при пересечении уровней перекупленности и перепроданности.
Alert Shift:0-current bar,1-previous bar (alertShift) Сдвиг уведомлений — Определяет бар, на котором фиксируется сигнал пересечения уровня: 0 — текущий бар, 1 — предыдущий.
Number of sounds after Signal (soundsNumber) Количество звуков — Максимальное количество звуковых сигналов, воспроизводимых после срабатывания уведомления.
Pause in sec between sounds (soundsPause) Пауза между звуками — Пауза в секундах между последовательными звуковыми сигналами.
oversoldSound Звук перепроданности — Звуковой файл, воспроизводимый при пересечении уровня перепроданности.
overboughtSound Звук перекупленности — Звуковой файл, воспроизводимый при пересечении уровня перекупленности.
emailOn Включить Email — Включает или отключает отправку email-уведомлений при пересечении уровней.
emailsNumber Количество Email — Количество email-уведомлений, отправляемых при одном сигнале.
pushNotificationOn Включить Push-уведомления — Включает или отключает push-уведомления на мобильное устройство.
Получить полный код

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

???//+------------------------------------------------------------------+

#property indicator_separate_window
#property indicator_buffers 8

#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 2
#property indicator_width4 2
#property indicator_width5 2
#property indicator_width6 2
#property indicator_width7 2
#property indicator_width8 2

#property indicator_maximum 100
#property indicator_minimum 0

#property indicator_level1  50

input ENUM_TIMEFRAMES   timeFrame            =           0;                         // Timeframe
input string            currencyArray        = "USD;EUR;GBP;JPY;AUD;CAD;CHF;NZD";   // Array of Currencies 
input string            symbolPrefix         =          "";                         // Symbol Prefix           
input string            symbolSuffix         =          "";                         // Symbol Suffix
input int               rsiPeriod            =          14;                         // Period of RSI
input int               overboughtLevel      =          70;                         // Overbought Level
input int               oversoldLevel        =          30;                         // Oversold Level
input int               countBars            =         200;                         // Number of bars counted(0-all bars)

input string            uniqueName           = "RSIStrength";
input color             currency1Color       =   clrTomato;                         // Currency #1 Color      
input color             currency2Color       = clrDodgerBlue;                       // Currency #2 Color
input color             currency3Color       = clrWhiteSmoke;                       // Currency #3 Color
input color             currency4Color       =     clrPink;                         // Currency #4 Color
input color             currency5Color       = clrYellowGreen;                      // Currency #5 Color
input color             currency6Color       = clrFireBrick;                        // Currency #6 Color    
input color             currency7Color       = clrChocolate;                        // Currency #7 Color
input color             currency8Color       =     clrGray;                         // Currency #8 Color
input color             currency9Color       =     clrNONE;   
input color             currency10Color      =     clrNONE; 
input int               lineWidth            =           1;

input bool              showBoard            =        true;
input int               fontSize             =           6;
input int               offset_X             =          50;
input int               offset_Y             =           0;
input ENUM_BORDER_TYPE  borderType           =           0;
input color             borderColor          =    clrWhite;
input color             textColor            =    clrBlack;

input string            alerts               = "=== Alerts & Emails ===";
input bool              alertOn              =       false;
input int               alertShift           =           1;                         // Alert Shift:0-current bar,1-previous bar
input int               soundsNumber         =           5;                         // Number of sounds after Signal
input int               soundsPause          =           5;                         // Pause in sec between sounds 
input string            oversoldSound        = "alert.wav";
input string            overboughtSound      = "alert2.wav";
input bool              emailOn              =       false;       
input int               emailsNumber         =           *;          
input bool              pushNotificationOn   =       false;

double currency1[];
double currency2[];
double currency3[];
double currency4[];
double currency5[];
double currency6[];
double currency7[];
double currency8[];
double currency9[];
double currency10[];

int    symbolsTotal, timeframe, cntbars, num, corner = 1;
string ind_name, TF, IndicatorName, short_name, currencies[];
double periods[], scale;
color  boxColor[10];

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

void OnDeinit(const int reason)
{
   Comment("");
   ObjectsDeleteAll(0,uniqueName);

   ChartRedraw();
}

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

string watchList[], pairs[], calcSymbols[] = {"HKDUSD","INRUSD","JPYUSD","RUBUSD","TRYUSD","USDAUD","USDEUR","USDGBP","USDSAR","ZARUSD"}; 
double signs[], sortedPower[], cPower[];

void calculateCurrencyStrength()
{
   int i, j, limit, shift, currentSymbolsTotal = SymbolsTotal(true), counted_bars = IndicatorCounted();

   if(counted_bars < 0)	return;
   if(counted_bars > 0)	limit	= Bars - counted_bars - 1;
   if(counted_bars < 1) 
   {
   limit = cntbars;

      for(i=0;i<Bars-1;i++)
      { 
      currency1[i] = EMPTY_VALUE;
      currency2[i] = EMPTY_VALUE;
      currency3[i] = EMPTY_VALUE;
      currency4[i] = EMPTY_VALUE;
      currency5[i] = EMPTY_VALUE;
      currency6[i] = EMPTY_VALUE;
      currency7[i] = EMPTY_VALUE;
      currency8[i] = EMPTY_VALUE;
      }

   if(overboughtLevel > 0) SetLevelValue(1,overboughtLevel);
   if(oversoldLevel   > 0) SetLevelValue(2,oversoldLevel  );
   SetLevelStyle(2,1,clrSilver);
   }

   int window = WindowFind(short_name); 

   if(timeframe != Period())
	{
   limit = MathMax(limit,timeframe/Period());   

      for(shift=0;shift<limit;shift++) 
      {	
      int y = iBarShift(NULL,timeframe,Time[shift]);

      currency1 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,currencyArray,symbolPrefix,symbolSuffix,rsiPeriod,overboughtLevel,oversoldLevel,countBars,uniqueName,
                                  currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color, 
                                  lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
                                  "",alertOn,alertShift,overboughtLevel,oversoldLevel,soundsNumber,soundsPause,oversoldSound,overboughtSound,emailOn,emailsNumber,pushNotificationOn,0,y);
      currency2 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,currencyArray,symbolPrefix,symbolSuffix,rsiPeriod,overboughtLevel,oversoldLevel,countBars,uniqueName,
                                  currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color, 
                                  lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
                                  "",alertOn,alertShift,soundsNumber,soundsPause,oversoldSound,overboughtSound,emailOn,emailsNumber,pushNotificationOn,1,y);
      currency3 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,currencyArray,symbolPrefix,symbolSuffix,rsiPeriod,overboughtLevel,oversoldLevel,countBars,uniqueName,
                                  currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color, 
                                  lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
                                  "",alertOn,alertShift,overboughtLevel,oversoldLevel,soundsNumber,soundsPause,oversoldSound,overboughtSound,emailOn,emailsNumber,pushNotificationOn,2,y);
      currency4 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,currencyArray,symbolPrefix,symbolSuffix,rsiPeriod,overboughtLevel,oversoldLevel,countBars,uniqueName,
                                  currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color, 
                                  lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
                                  "",alertOn,alertShift,overboughtLevel,oversoldLevel,soundsNumber,soundsPause,oversoldSound,overboughtSound,emailOn,emailsNumber,pushNotificationOn,3,y);
      currency5 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,currencyArray,symbolPrefix,symbolSuffix,rsiPeriod,overboughtLevel,oversoldLevel,countBars,uniqueName,
                                  currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color, 
                                  lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
                                  "",alertOn,alertShift,overboughtLevel,oversoldLevel,soundsNumber,soundsPause,oversoldSound,overboughtSound,emailOn,emailsNumber,pushNotificationOn,4,y);
      currency6 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,currencyArray,symbolPrefix,symbolSuffix,rsiPeriod,overboughtLevel,oversoldLevel,countBars,uniqueName,
                                  currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color, 
                                  lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
                                  "",alertOn,alertShift,overboughtLevel,oversoldLevel,soundsNumber,soundsPause,oversoldSound,overboughtSound,emailOn,emailsNumber,pushNotificationOn,5,y);
      currency7 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,currencyArray,symbolPrefix,symbolSuffix,rsiPeriod,overboughtLevel,oversoldLevel,countBars,uniqueName,
                                  currency1Color,currency2Color,currency3Color,currency4Color,currency5Col

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

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

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

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

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

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

Стоимость полного кода
2 140,10₽ ≈ $26.16