rsi_t3_nmc.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «rsi_t3_nmc.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор rsi_t3_nmc рассчитывает модифицированный RSI с применением сглаживания по алгоритму T3. В основе лежит вычисление изменения цены за бар, к которому применяется многоступенчатая экспоненциальная фильтрация, после чего результат нормализуется в диапазоне 0–100. Индикатор отображается в отдельном окне одним буфером.
В качестве исходной цены может использоваться любая из стандартных ценовых типов (Close, Open, High, Low, Median, Typical, Weighted), что задаётся соответствующим параметром. Период расчёта RSI и коэффициент «горячего» поля позволяют настраивать чувствительность индикатора.
Параметр OriginalT3 даёт возможность переключаться между стандартной формулой сглаживания и оригинальной формулой Тима Тилсона, влияя на значение альфа-коэффициента. Индикатор не использует внешние библиотеки и не содержит торговых функций.
Настройки программы
| Настройка | Описание |
|---|---|
| RsiPeriod | Период расчёта RSI, определяющий количество баров, используемых для вычисления изменения цены. По умолчанию 25. |
| RsiPrice | Тип цены, используемой для расчёта индикатора. Доступны варианты: Close, Open, High, Low, Median, Typical, Weighted. По умолчанию Close. |
| Hot | Коэффициент «горячего» поля, управляющий интенсивностью сглаживания T3. Принимает числовое значение; по умолчанию 0.7. |
| OriginalT3 | Переключатель выбора метода сглаживания: при значении true используется оригинальная формула Тима Тилсона, при false — альтернативная формула альфа-коэффициента. |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 PaleVioletRed
#property indicator_width1 2
#property indicator_minimum 0
#property indicator_maximum 100
#property strict
enum prices
{
pr_close, // Close
pr_open, // Open
pr_high, // High
pr_low, // Low
pr_median, // Median
pr_typical, // Typical
pr_weighted // Weighted
};
extern double RsiPeriod = 25; // Rsi period
extern prices RsiPrice = pr_close; // Price to use
extern double Hot = 0.7; // Rsi "hot" field
extern bool OriginalT3 = false; // Use Tim Tillson calculation?
double rsi[];
int init()
{
// код доступен только после оплаты
}
int deinit() { return(0); }
int start()
{
// код доступен только после оплаты
}
double workRsi[][1];
#define _price 0
double iRsi(double price, double period, double hot, bool original, int i)
{
if (ArrayRange(workRsi,0)!=Bars) ArrayResize(workRsi,Bars); int r = Bars-i-1; workRsi[r][_price] = price;
if (r>0)
{
double chng = workRsi[r][_price]-workRsi[r-1][_price];
double change = iT3( chng ,period,hot,original,i,0);
double changa = iT3(MathAbs(chng),period,hot,original,i,1);
if (changa != 0)
return(MathMin(MathMax(50.0*(change/MathMax(changa,0.0000001)+1.0),0),100));
else return(50.0);
}
else return(90);
}
double workT3[][18];
double workT3Coeffs[][6];
#define _period 0
#define _c1 1
#define _c2 2
#define _c3 3
#define _c4 4
#define _alpha 5
double iT3(double price, double period, double hot, bool original, int i, int instanceNo=0)
{
if (ArrayRange(workT3,0Показано первые 50% кода (символов: 3253)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.