CurrencyStrengthHistory_v1.8 600+
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «currencystrengthhistory_v1.8 600+.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
CurrencyStrengthHistory_v1.8 600+ — это индикатор MetaTrader 4, который рассчитывает и отображает аналитические индикаторы валютной силы для до 10 валют на отдельном графике. Индикатор анализирует ценовые изменения пар между выбранными валютами и вычисляет показатели мощности для каждой из них.
Индикатор поддерживает работу с несколькими таймфреймами, включая режим MTF (Multi-Timeframe) баров. Результаты расчёта отображаются в виде линейных графиков с настраиваемыми цветами и толщиной линий. Также предусмотрен информационный доска с текущими значениями силы валют.
Индикатор оснащён системой уведомлений: звуковые сигналы, email-оповещения и push-уведомления срабатывают при пересечении заданного уровня силы валюты. Дополнительно доступна настройка отображения значений в пунктах или процентах, смещение элементов на графике и параметры шрифта.
Настройки программы
| Настройка | Описание |
|---|---|
| timeFrame | Таймфрейм графика — Таймфрейм графика, на котором отображается индикатор (по умолчанию текущий). |
| calcTimeFrame | Таймфрейм расчёта — Таймфрейм, на котором производится расчёт валютной силы (по умолчанию D1). |
| symbolPrefix | Префикс символа — Префикс символа для формирования названий инструментов. |
| symbolSuffix | Суффикс символа — Суффикс символа для формирования названий инструментов. |
| Use MTF Bars (useMTFBars) | Использовать MTF бары — Переключатель использования баров с многотаймфреймного графика для расчёта. |
| Number of bars counted(0-all bars) (countBars) | Количество баров — Количество баров для расчёта (0 — все бары). |
| showInPips | Отображать в пунктах — Переключатель отображения значений силы валюты в пунктах вместо процентов. |
| uniqueName | Уникальное имя доски — Уникальное имя объекта информационной доски на графике. |
| currency1Color | Цвет валюты 1 — Цвет линии первой валюты на графике. |
| currency2Color | Цвет валюты 2 — Цвет линии второй валюты на графике. |
| currency3Color | Цвет валюты 3 — Цвет линии третьей валюты на графике. |
| currency4Color | Цвет валюты 4 — Цвет линии четвёртой валюты на графике. |
| currency5Color | Цвет валюты 5 — Цвет линии пятой валюты на графике. |
| currency6Color | Цвет валюты 6 — Цвет линии шестой валюты на графике. |
| currency7Color | Цвет валюты 7 — Цвет линии седьмой валюты на графике. |
| currency8Color | Цвет валюты 8 — Цвет линии восьмой валюты на графике. |
| currency9Color | Цвет валюты 9 — Цвет линии девятой валюты на графике. |
| currency10Color | Цвет валюты 10 — Цвет линии десятой валюты на графике. |
| lineWidth | Толщина линий — Толщина линий графиков валютной силы. |
| showBoard | Показать доску — Переключатель отображения информационной доски с текущими значениями силы валют на графике. |
| fontSize | Размер шрифта — Размер шрифта текста на информационной доске. |
| offset_X | Смещение по X — Горизонтальное смещение информационной доски на графике в пикселях. |
| offset_Y | Смещение по Y — Вертикальное смещение информационной доски на графике в пикселях. |
| borderType | Тип рамки доски — Тип рамки информационной доски (вариант настройки). |
| borderColor | Цвет рамки доски — Цвет рамки информационной доски на графике. |
| textColor | Цвет текста — Цвет текста на информационной доске. |
| alerts | Настройки уведомлений — Текстовый параметр, используемый для группировки настроек уведомлений и email. |
| alertOn | Включить звуковые уведомления — Переключатель включения/выключения звуковых уведомлений при пересечении уровня силы. |
| Alert Shift:0-current bar,1-previous bar (alertShift) | Сдвиг для оповещения — Сдвиг бара для проверки уровня: 0 — текущий бар, 1 — предыдущий бар. |
| Alert Strength Level(eg.2) (alertLevel) | Уровень оповещения — Уровень силы валюты, при пересечении которого срабатывают уведомления (например, 2). |
| Number of sounds after Signal (soundsNumber) | Количество звуков — Количество звуковых сигналов после срабатывания сигнала. |
| Pause in sec between sounds (soundsPause) | Пауза между звуками — Пауза в секундах между звуковыми сигналами. |
| upTrendSound | Звук восходящего тренда — Звуковой файл, воспроизводимый при восходящем тренде силы валюты. |
| dnTrendSound | Звук нисходящего тренда — Звуковой файл, воспроизводимый при нисходящем тренде силы валюты. |
| emailOn | Включить email-уведомления — Переключатель включения/выключения email-оповещений при пересечении уровня силы. |
| emailsNumber | Количество email — Количество email-рассылок при срабатывании сигнала. |
| pushNotificationOn | Включить push-уведомления — Переключатель включения/выключения push-уведомлений при пересечении уровня силы. |
Поиск по коду файла
???//+------------------------------------------------------------------+
#property indicator_separate_window
#property indicator_buffers 10
#property indicator_level1 0
input ENUM_TIMEFRAMES timeFrame = 0;
input ENUM_TIMEFRAMES calcTimeFrame = PERIOD_D1;
input string currencyArray = "USD;EUR;GBP;JPY;AUD;CAD;CHF;NZD";
input string symbolPrefix = "";
input string symbolSuffix = "";
input bool useMTFBars = true; // Use MTF Bars
input int countBars = 1; // Number of bars counted(0-all bars)
input bool showInPips = true;
input string uniqueName = "History";
input color currency1Color = clrTomato;
input color currency2Color = clrDodgerBlue;
input color currency3Color = clrWhiteSmoke;
input color currency4Color = clrPink;
input color currency5Color = clrYellowGreen;
input color currency6Color = clrFireBrick;
input color currency7Color = clrChocolate;
input color currency8Color = clrGray;
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 alertLevel = 2; // Alert Strength Level(eg.2)
input int soundsNumber = 5; // Number of sounds after Signal
input int soundsPause = 5; // Pause in sec between sounds
input string upTrendSound = "alert.wav";
input string dnTrendSound = "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[];
MqlRates mtfrates[], rates[];
int symbolsTotal, timeframe, ctimeframe, num, window, corner = 1, cntbars;
bool firsttime = true;
string watchList[], currencies[], pairs[], IndicatorName, TF, calcTF, short_name;
double scale, pairPoint[], signs[], dRatios[]={1,10,1,10,1,10,100};
color boxColor[10];
string calcSymbols[] = {"HKDUSD","INRUSD","JPYUSD","RUBUSD","TRYUSD","USDAUD","USDEUR","USDGBP","USDSAR","ZARUSD"};
datetime time_cnt, shifttime;
int OnInit()
{
// код доступен только после оплаты
}
void OnDeinit(const int reason)
{
Comment("");
if(showBoard) ObjectDel(uniqueName);
ChartRedraw();
}
int start()
{
// код доступен только после оплаты
}
int i, j, _digits, shift, y, limit = 0, sdig = 2, currentSymbolsTotal = SymbolsTotal(true), counted_bars = IndicatorCounted();
double cPower[], sortedPower[];
string pct = "%", sym;
if(showInPips) {pct = ""; sdig = 1;}
window = WindowFind(short_name);
if(counted_bars < 0) return(-1);
if(counted_bars > 0) limit = Bars - counted_bars - 1;
if(counted_bars < 1)
{
limit = cntbars;
if(!useMTFBars) time_cnt = Time[cntbars-1];
ArrayResize(cPower,num);
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;
currency9[i] = EMPTY_VALUE;
currency10[i] = EMPTY_VALUE;
}
if(alertOn && alertLevel > 0)
{
SetLevelValue(1, alertLevel);
SetLevelValue(2,-alertLevel);
SetLevelStyle(2,1,clrSilver);
}
}
if(timeframe != Period())
{
limit = MathMax(limit,timeframe/Period());
for(shift=0;shift<limit;shift++)
{
y = iBarShift(NULL,timeframe,Time[shift]);
currency1 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,0,y);
currency2 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,1,y);
currency3 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,2,y);
currency4 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,3,y);
currency5 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,4,y);
currency6 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,5,y);
currency7 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,6,y);
currency8 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,7,y);
currency9 [shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3Color,currency4Color,currency5Color,currency6Color,currency7Color,currency8Color,currency9Color,currency10Color,
lineWidth,showBoard,fontSize,offset_X,offset_Y,borderType,borderColor,textColor,
"",alertOn,alertShift,alertLevel,soundsNumber,soundsPause,upTrendSound,dnTrendSound,emailOn,emailsNumber,pushNotificationOn,8,y);
currency10[shift] = iCustom(NULL,timeFrame,IndicatorName,0,calcTimeFrame,currencyArray,symbolPrefix,symbolSuffix,useMTFBars,countBars,showInPips,uniqueName,
currency1Color,currency2Color,currency3ColПоказано первые 50% кода (символов: 21940)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.