rsicurrencystrength_v1.0 600+.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «rsicurrencystrength_v1.0 600+.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор 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? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.