lp_entry.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «lp_entry.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
LP_entry — это пользовательский индикатор для MetaTrader 5, написанный на языке MQL5. Он анализирует ценовые данные, используя технические индикаторы WPR (Williams Percent Range) и RSI, и формирует сигналы на основе их текущих значений относительно заданных уровней.
Индикатор отображает сигналы в виде стрелок на графике цены: стрелки вниз (жёлтые) и вверх (бирюзовые) рисуются в зависимости от значения фильтра, рассчитанного как среднее WPR и RSI. Также на графике создаются текстовые объекты, показывающие процент мощности (Power %), величину расстояния (D) и состояние перекупленности/перепроданности (OBOS).
В индикаторе не определены пользовательские входные параметры, а также внешние библиотечные API-функции. Все расчёты выполняются на основе встроенных индикаторов платформы и констант, заданных в коде.
Индикатор работает в основном окне графика, использует три буфера данных и перерисовывает текстовые метки при каждом обновлении бара.
Поиск по коду файла
#property indicator_chart_window
#property strict
#property indicator_buffers 3
#property indicator_color1 Yellow
#property indicator_color2 Aqua
#property indicator_width1 0
#property indicator_width2 0
#define VERSION "1.0"
#define RANGE_FACTOR 4.6
#define ALT_PERIOD 4
#define HIGH_LEVEL 67
#define LOW_LEVEL 33
int Risk, BarCount;
double dn_sig[];
double up_sig[];
double signal[];
int init() {
// код доступен только после оплаты
}
int start() {
// код доступен только после оплаты
}
int i,shift,counted_bars, min_bars, wpr_period;
double wpr_value, avg_range, high_level,low_level,filter;
high_level=HIGH_LEVEL+Risk;
low_level=LOW_LEVEL-Risk;
min_bars=3+Risk*2+1;
if(Bars<=min_bars)
return(0);
counted_bars=IndicatorCounted();
if(counted_bars<0)
return (-1);
if(counted_bars>0)
counted_bars--;
shift=Bars-counted_bars;
if (BarCount>0 && shift>BarCount)
shift=BarCount;
if (shift>Bars-min_bars)
shift=Bars-min_bars;
while(shift>=0) {
i=shift;
avg_range=0.0;
for (i=shift; i<shift+10; i++) {
if (i>=Bars) break;
avg_range=avg_range+MathAbs(High[i]-Low[i]);
}
avg_range=avg_range/10.0;
wpr_period=3+Risk*2;
i=shift;
while (i<shift+6) {
if (i>=Bars-3) break;
if (MathAbs(Close[i+3]-Close[i])>=avg_range*RANGE_FACTOR) {
wpr_period=ALT_PERIOD;
break;
}
i++;
}
wpr_value=100-MathAbs(iWPR(NULL,0,wpr_period,shift));
filter = (iWPR(NULL,0,4,shift)+100 + iRSI(Symbol(),0,2,0,shift))/2;
if (wpr_value>=high_level)
signal[shift] = 1;
else if (wpr_value<=low_level)
signal[shift] = -1; Показано первые 50% кода (символов: 3472)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.