dynamic_zone_smoothed_rsi.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «dynamic_zone_smoothed_rsi.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный индикатор для MetaTrader 5 рассчитывает аналитический показатель на основе изменений цен с возможностью сглаживания. Он вычисляет соотношение приростов и убытков за заданный период и отображает результат в диапазоне 0–100 в отдельном окне графика.
Индикатор также рассчитывает динамические зоны покупки и продажи — уровни, на которых вероятность превышения или недостижения определённого значения показателя соответствует заданным пользователем параметрам. Эти уровни отображаются отдельными линиями на графике.
Поддерживается выбор цены для расчёта (Close, Open, High, Low и другие варианты), а также режим сглаживания основного показателя. Индикатор работает на исторических данных и не содержит торговой логики.
Настройки программы
| Настройка | Описание |
|---|---|
| RsiLength | Длина периода расчёта индикатора (количество баров для анализа изменений цены). |
| RsiPrice | Тип цены для расчёта: Close, Open, High, Low, Median, Typical или Weighted. |
| RsiSmooth | Включает или отключает сглаживание основного показателя. |
| DzLookBackBars | Количество баров для расчёта динамических зон (окно анализа истории). |
| DzStartBuyProbability | Целевая вероятность для расчёта уровня динамической зоны покупки. |
| DzStartSellProbability | Целевая вероятность для расчёта уровня динамической зоны продажи. |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 3
#property indicator_color1 DeepSkyBlue
#property indicator_color2 LimeGreen
#property indicator_color3 Red
#property indicator_width1 2
#property indicator_minimum 0
#property indicator_maximum 100
extern int RsiLength = 9;
extern int RsiPrice = PRICE_CLOSE;
extern bool RsiSmooth = true;
extern int DzLookBackBars = 70;
extern double DzStartBuyProbability = 0.10;
extern double DzStartSellProbability = 0.10;
double rsi[];
double bli[];
double sli[];
double prc[];
double buff[];
int init()
{
// код доступен только после оплаты
}
int deinit()
{
return(0);
}
int start()
{
// код доступен только после оплаты
}
int counted_bars=IndicatorCounted();
int i,limit;
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
limit = MathMin(Bars-counted_bars,Bars-1);
for(i=limit; i >= 0; i--)
{
prc[i] = iMA(NULL,0,1,0,MODE_SMA,RsiPrice,i);
if (i>=Bars-RsiLength) continue;
double cu = 0;
double cd = 0;
for (int k=0; k<RsiLength; k++)
{
double diff = prc[i+k]-prc[i+k+1];
if (diff > 0) cu += diff;
if (diff < 0) cd -= diff;
}
if ((cu+cd)!=0)
buff[i] = 50.0*((cu-cd)/(cu+cd)+1.0);
else buff[i] = 0;
if (RsiSmooth)
rsiПоказано первые 50% кода (символов: 3096)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.