#bamsbung-no repaint-3.mq5
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «#bamsbung-no repaint-3.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор для MetaTrader 5, отображаемый в отдельном окне. Он рассчитывает аналитические линии и стрелки на основе ценовых данных и технических показателей, а также формирует уведомления при смене направления. В коде используются внешние вызовы DLL и встроенные функции для работы с массивами и объектами графика. Индикатор поддерживает настройки оповещений и отображения стрелок, а также имеет встроенную проверку срока действия.
Настройки программы
| Настройка | Описание |
|---|---|
| Gs_76 | Определяет таймфрейм для расчёта индикатора. Значение по умолчанию — "Current time frame", что соответствует текущему таймфрейму графика. |
| _ | Текстовый параметр, используемый как заголовок для группы настроек оповещений. |
| alertsOn | Включает или отключает все оповещения индикатора. |
| alertsOnCurrent | Если включено, оповещения срабатывают на текущем (незакрытом) баре; иначе — только на закрытом баре. |
| alertsMessage | Включает вывод всплывающих сообщений (Alert) при появлении сигнала. |
| alertsSound | Включает звуковое оповещение при появлении сигнала. |
| alertsEmail | Включает отправку уведомлений по электронной почте при появлении сигнала. |
| ShowArrows | Включает или отключает отображение стрелок на графике при смене направления индикатора. |
| arrowsIdentifier | Префикс имени для объектов-стрелок на графике. Используется для идентификации и удаления стрелок. |
| arrowsUpColor | Цвет стрелок, отображаемых при сигнале на покупку. |
| arrowsDnColor | Цвет стрелок, отображаемых при сигнале на продажу. |
Поиск по коду файла
#property version "1.0"
#property indicator_separate_window
#property indicator_levelcolor CLR_NONE
#property indicator_buffers 4
#property indicator_color1 Black
#property indicator_color2 Black
#property indicator_color3 White
#property indicator_color4 Red
#import "BAMSBUNG.dll"
void fastSingular(double& a0[], int a1, int a2, int a3, double& a4[]);
#import
input string Gs_76 = "Current time frame";
int G_applied_price_84 = PRICE_CLOSE;
int Gi_88 = 10;
int Gi_92 = 2;
int G_period_96 = 20;
int Gi_100 = 500;
int G_period_104 = 2;
int G_ma_method_108 = MODE_LWMA;
int G_period_112 = 7;
int G_ma_method_116 = MODE_LWMA;
int G_period_120 = 10;
int G_ma_method_124 = MODE_LWMA;
double Gd_128 = 98.0;
int Gi_136 = 0;
double Gd_140 = -0.4;
double Gd_148 = 0.0;
double Gd_156 = 0.4;
int Gi_164 = 1;
extern string _ = "alerts settings";
extern bool alertsOn = TRUE;
extern bool alertsOnCurrent = TRUE;
extern bool alertsMessage = FALSE;
extern bool alertsSound = FALSE;
extern bool alertsEmail = FALSE;
extern bool ShowArrows = TRUE;
extern string arrowsIdentifier = "BAMSBUNG arrows";
extern color arrowsUpColor = Lime;
extern color arrowsDnColor = Red;
double G_ibuf_216[];
double G_ibuf_220[];
double G_ibuf_224[];
double G_ibuf_228[];
double G_ibuf_232[];
double G_ibuf_236[];
double G_ibuf_240[];
double G_ibuf_244[];
double Gda_248[];
double Gda_252[];
string Gs_256;
bool Gi_264;
bool Gi_268;
int G_timeframe_272;
double Gd_276;
string Gsa_284[] = {"M1", "M5", "M15", "M30", "H1", "H4", "D1", "W1", "MN"};
int Gia_288[] = {1, 5, 15, 30, 60, 240, 1440, 10080, 43200};
string Gs_nothing_292 = "nothing";
datetime G_time_300;
int init() {
// код доступен только после оплаты
}
int deinit() {
string Lsa_unused_0[256];
if ((!Gi_264) && ShowArrows) f0_5();
return (0);
}
int start() {
// код доступен только после оплаты
}
int Li_0;
double ima_4;
double Ld_12;
double ima_20;
double Ld_28;
double Ld_36;
int shift_44;
int datetime_48;
string Ls_52 = "2030.03.25";
int str2time_60 = StrToTime(Ls_52);
if (TimeCurrent() >= str2time_60) {
Alert("Sory indicator #Bamsbung No Repaint Expired Please contact www.bamsbung.com ");
return (0);
}
int Li_64 = IndicatorCounted();
if (Li_64 < 0) return (-1);
if (Li_64 > 0) Li_64--;
int Li_68 = MathMin(Bars - Li_64, Bars - 1);
if (Gi_268) {
G_ibuf_216[0] = Li_68 + 1;
return (0);
}
if (Gi_264 || G_timeframe_272 == Period()) {
Li_0 = MathMin(Bars - 1, Gi_100);
for (int Li_72 = Li_68; Li_72 >= 0; Li_72--) {
ima_4 = iMA(NULL, 0, G_period_96, 0, MODE_SMA, G_applied_price_84, Li_72);
Ld_12 = 3.0 * iStdDev(NULL, 0, G_period_96, 0, MODE_SMA, G_applied_price_84, Li_72);
ima_20 = iMA(NULL, 0, 1, 0, MODE_SMA, G_applied_price_84, Li_72);
G_ibuf_236[Li_72] = (ima_20 - ima_4) / MathMax(Ld_12, 0.000001);
if (ArraySize(Gda_248) != Li_0) {
ArrayResize(Gda_248, Li_0);
ArrayResize(Gda_252, Li_0);
}
ArrayCopy(Gda_248, G_ibuf_236, 0, 0, Li_0);
fastSingular(Gda_248, Li_0, Gi_88, Gi_92, Gda_252);
ArrayCopy(G_ibuf_232, Gda_252);
}
for (Li_72 = Li_68 - 1; Li_72 >= 0; Li_72--) {
G_ibuf_224[Li_72] = iMAOnArray(G_ibuf_232, 0, G_period_104, 0, G_ma_method_108, Li_72);
G_ibuf_228[Li_72] = iMAOnArray(G_ibuf_232, 0, G_period_112, 0, G_ma_method_116, Li_72);
G_ibuf_240[Li_72] = iMAOnArray(G_ibuf_232, 0, G_period_120, 0, G_ma_method_124, Li_72);
Ld_28 = f0_6(G_ibuf_232, G_period_120, G_ibuf_240[Li_72 + Gi_136], Li_72 + Gi_136);
Ld_36 = Gd_276 * Ld_28 / MathSqrt(G_period_120);
G_ibuf_216[Li_72] = G_ibuf_240[Li_72 + Gi_136] + Ld_36;
G_ibuf_220[Li_72] = G_ibuf_240[Li_72 + Gi_136] - Ld_36;
G_ibuf_244[Li_72] = G_ibuf_244[Li_72 + 1];
if (G_ibuf_224[Li_72] > G_ibuf_228[Li_72]) G_ibuf_244[Li_72] = 1;
if (G_ibuf_224[Li_72] < G_ibuf_228[Li_72]) G_ibuf_244[Li_72] = -1;
if (!Gi_264) f0_10(Li_72);
}
f0_1();
return (0);
}
Li_68 = MathMin(Bars, Gi_100 * G_timeframe_272 / Period());
for (Li_72 = Li_68; Li_72 >= 0; Li_72--) {
shift_44 = iBarShift(NULL, G_timeframe_272, Time[Li_72]);
G_ibuf_216[Li_72] = iCustom(NULL, G_timeframe_272, Gs_256, "calculateValue", G_applied_price_84, Gi_88, Gi_92, G_period_96, Gi_100, G_period_104, G_ma_method_108,
G_period_112, G_ma_method_116, G_period_120, G_ma_method_124, Gd_128, Gi_136, 0, shift_44);
G_ibuf_220[Li_72] = iCustom(NULL, G_timeframe_272, Gs_256, "calculateValue", G_applied_price_84, Gi_88, Gi_92, G_period_96, Gi_100, G_period_104, G_ma_method_108,
G_period_112, G_ma_meПоказано первые 50% кода (символов: 8683)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.