MBFX System
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «#mbfx system_alerts.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
MBFX System — это пользовательский индикатор для MetaTrader 5, который отображает в окне графика набор аналитических линий, построенных по данным цены. В коде используются семь буферов индикатора, что подтверждает вывод нескольких линий одновременно. Индикатор рассчитывает центральную линию и дополнительные уровни, которые визуализируются на графике. Также предусмотрены уведомления при касании ценой верхней или нижней границы диапазона. Индикатор не является торговым советником и не выполняет автоматических торговых операций. В исходном коде присутствует ограничение по году: при наступлении 2020 года и позже расчёт прекращается. Индикатор предназначен для визуального анализа и оповещения о событиях, связанных с касанием ценой заданных уровней.
Настройки программы
| Настройка | Описание |
|---|---|
| Nmbr_Bars | Целое число, определяющее количество баров, используемых для расчёта индикатора и отображения линий. |
| Order | Целое число, задающее порядок полиномиальной аппроксимации при построении центральной линии индикатора. |
| Ecart | Числовой параметр, задающий множитель для расчёта ширины диапазона относительно стандартного отклонения. Влияет на удаление дополнительных линий от центральной. |
Поиск по коду файла
/*
Generated by EX4-TO-MQ4 decompiler V4.0.224.1 []
Website:
E-mail : p******m*@gmail.com
*/
#property indicator_chart_window
#property indicator_buffers 7
#property indicator_color1 Blue
#property indicator_color2 DimGray
#property indicator_color3 Red
#property indicator_color4 Red
#property indicator_color5 DimGray
#property indicator_color6 LimeGreen
#property indicator_color7 LimeGreen
extern int Nmbr_Bars = 120;
extern int Order = 3;
extern double Ecart = 1.61803399;
extern bool AlertOn = true,
EmailOn = false,
AlertOnClosedCandle=false;
double g_ibuf_92[];
double g_ibuf_96[];
double g_ibuf_100[];
double g_ibuf_104[];
double g_ibuf_108[];
double g_ibuf_112[];
double g_ibuf_116[];
double gda_120[20][20];
double gda_124[20];
double gda_128[20];
double gda_132[20];
int gi_136;
int gi_140;
int gi_144;
int gi_148;
int gi_152;
int gi_156;
int gi_160;
double gd_164;
double gd_172;
double gd_180;
double gd_188;
double gd_196;
int SignalCandle = 0;
datetime Alerted=0;
int init() {
// код доступен только после оплаты
}
int deinit() {
Comment("");
ObjectDelete("REG");
ObjectDelete("X1");
ObjectDelete("X2");
ObjectDelete("X3");
ObjectDelete("Z1");
ObjectDelete("Z2");
ObjectDelete("Z3");
return (0);
}
int start() {
// код доступен только после оплаты
}
if (Year() >= 2020) return (0);
datetime l_time_0 = 0;
SetIndexDrawBegin(0, Bars - Nmbr_Bars - 1);
SetIndexDrawBegin(1, Bars - Nmbr_Bars - 1);
SetIndexDrawBegin(2, Bars - Nmbr_Bars - 1);
SetIndexDrawBegin(3, Bars - Nmbr_Bars - 1);
SetIndexDrawBegin(4, Bars - Nmbr_Bars - 1);
SetIndexDrawBegin(5, Bars - Nmbr_Bars - 1);
SetIndexDrawBegin(6, Bars - Nmbr_Bars - 1);
if (l_time_0 != Time[0]) {
ObjectDelete("REG");
ObjectDelete("X1");
ObjectDelete("X2");
ObjectDelete("X3");
ObjectDelete("Z1");
ObjectDelete("Z2");
ObjectDelete("Z3");
l_time_0 = Time[0];
}
gi_152 = Order + 1;
gda_124[1] = Nmbr_Bars + 1;
for (gi_160 = 1; gi_160 <= gi_152 * 2 - 2; gi_160++) {
gd_164 = 0;
for (gi_156 = 0; gi_156 <= Nmbr_Bars; gi_156++) gd_164 += MathPow(gi_156, gi_160);
gda_124[gi_160 + 1] = gd_164;
}
for (gi_160 = 1; gi_160 <= gi_152; gi_160++) {
gd_164 = 0;
for (gi_156 = 0; gi_156 <= Nmbr_Bars; gi_156++) {
if (gi_160 == 1) gd_164 += (High[gi_156] + Low[gi_156]) / 2.0;
else gd_164 += (High[gi_156] + Low[gi_156]) / 2.0 * MathPow(gi_156, gi_160 - 1);
}
gda_128[gi_160] = gd_164;
}
for (gi_140 = 1; gi_140 <= gi_152; gi_140++) {
for (gi_136 = 1; gi_136 <= gi_152; gi_136++) {
gi_144 = gi_136 + gi_140 - 1;
gda_120[gi_136][gi_140] = gda_124[gi_144];
}
}
for (gi_144 = 1; gi_144 <= gi_152 - 1; gi_144++) {
gi_148 = 0;
gd_188 = 0;
for (gi_136 = gi_144; gi_136 <= gi_152; gi_136++) {
if (MathAbs(gda_120[gi_136][gi_144]) > gd_188) {
gd_188 = MathAbs(gda_120[gi_136][gi_144]);
gi_148 = gi_136;
}
}
if (gi_148 == 0) return (0);
if (gi_148 != gi_144) {
for (gi_140 = 1; gi_140 <= gi_152; gi_140++) {
gd_196 = gda_120[gi_144][gi_140];
gda_120[gi_144][gi_140] = gda_120[gi_148][gi_140];
gda_120[gi_148][gi_140] = gd_196;
}
gd_196 = gda_128[gi_144];
gda_128[gi_144] = gda_128[gi_148];
gda_128[gi_148] = gdПоказано первые 50% кода (символов: 5938)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.