Laguerre RSI
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «laguerre_rsi_v2.1m_mtf.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор рассчитывает значение индикатора Лагерре RSI и отображает его в отдельном окне графика. Поддерживается работа на нескольких таймфреймах: при выборе не текущего таймфрейма значения считываются с соответствующего таймфрейма через iCustom. Индикатор предоставляет три настраиваемых уровня, по которым формируются сигналы пересечения и расположения линии индикатора относительно уровней.
Настройки программы
| Настройка | Описание |
|---|---|
| Gama | Гамма — Коэффициент сглаживания, влияющий на отзывчивость индикатора |
| PriceType | Тип цены — Тип цены, используемый для расчёта |
| smz: 1...3; if>3 smz=3 (Smooth) | Сглаживание — Режим сглаживания результата: 1...3; если значение больше 3, применяется режим 3 |
| SmoothPrice | Сглаживание цены — Включает дополнительное сглаживание исходной цены перед расчётом |
| Level1 | Уровень 1 — Первый (верхний) числовой уровень для формирования сигналов и отображения |
| Level2 | Уровень 2 — Второй (средний) числовой уровень, используемый для визуальных границ |
| Level3 | Уровень 3 — Третий (нижний) числовой уровень для формирования сигналов и отображения |
| timeFrame | Таймфрейм — Таймфрейм для расчёта значений индикатора; если отличается от текущего, данные берутся с указанного таймфрейма |
| ShowLevels | Показать уровни — Отображение горизонтальных линий уровней на графике |
| ShowLevelSig | Показать сигналы уровней — Отображение стрелок-сигналов при нахождении линии индикатора выше или ниже заданных уровней |
| ShowCrossings | Показать пересечения — Отображение стрелок в точках пересечения линии индикатора с уровнями 1 и 3 |
| alertsOn | Уведомления включены — Включает проверку и генерацию уведомлений при пересечении уровней |
| alertsMessage | Алерт в окно сообщений — Выводит сообщение об событии в окно алертов MetaTrader |
| alertsSound | Звуковой сигнал — Воспроизводит звуковой файл при срабатывании условия |
| alertsEmail | Email-уведомление — Отправляет электронное письмо на адрес, указанный в настройках терминала |
| LevelsColor | Цвет уровней — Цвет линий уровней и границ на графике |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 3
#property indicator_minimum 0
#property indicator_maximum 1
#property indicator_color1 Green
#property indicator_color2 Lime
#property indicator_color3 OrangeRed
extern double Gama = 0.70;
extern int PriceType = 0;
extern int Smooth = 0; // smz: 1...3; if>3 smz=3
extern bool SmoothPrice = false;
extern double Level1 = 0.85;
extern double Level2 = 0.50;
extern double Level3 = 0.15;
extern string timeFrame = "Current time frame";
extern bool ShowLevels = false;
extern bool ShowLevelSig = true;
extern bool ShowCrossings = true;
extern bool alertsOn = false;
extern bool alertsMessage = true;
extern bool alertsSound = false;
extern bool alertsEmail = false;
extern color LevelsColor = C'30,33,36';
double MainBuffer[];
double CUpBuffer[];
double CDnBuffer[];
double L0[];
double L1[];
double L2[];
double L3[];
double L4[];
string ShortName;
string IndicatorName;
int TimeFrame;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
DeleteBounds();
return(0);
}
int start()
{
// код доступен только после оплаты
}
double LaGuerre(double gamma, int i, int priceType)
{
double Price = iMA(NULL,0,1,0,MODE_SMA,priceType,i);
double RSI = 0.00;
double CU = 0.00;
double CD = 0.00;
if (SmoothPrice)
{
L4[i] = Price;
Price = smooth(L4,i);
}
L0[i] = (1.0 - gamma)*Price + gamma*L0[i+1];
L1[i] = -gamma*L0[i] + L0[i+1] + gamma*L1[i+1];
L2[i] = -gamma*L1[i] + L1[i+1] + gamma*L2[i+1];
L3[i] = -gamma*L2[i] + L2[i+1] + gamma*L3[i+1];
if (L0[i] >= L1[i])
CU = L0[i] - L1[i];
else CD = L1[i] - L0[i];
if (L1[i] >= L2[i])
CU = CU + L1[i] - L2[i];
else CD = CD + L2[i] - L1[i];
if (L2[i] >= L3[i])
CU = CU + L2[i] - L3[i];
else CПоказано первые 50% кода (символов: 6328)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.