rsi_dt-rsi-sigm.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «rsi_dt-rsi-sigm.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор DT-RSI-Sig рассчитывает значения RSI (Relative Strength Index) заданного периода и отображает их в отдельном окне графика. Помимо стандартной линии RSI, индикатор выявляет бычьи и медвежьи дивергенции, сравнивая текущие и предыдущие значения RSI на нескольких барах.
При обнаружении дивергенций индикатор выполняет линейную интерполяцию для определения динамических уровней поддержки и сопротивления. На основе сравнения RSI с этими уровнями формируются сигналы покупки и продажи, которые отображаются в виде стрелок на графике и трендовых линий.
Индикатор использует пять буферов: линию RSI, два набора стрелок для сигналов покупки и продажи, а также маркеры дивергенций. Уровни 30, 50 и 70 отрисовываются в качестве справочных линий. Настройка периода RSI позволяет изменить чувствительность индикатора.
Настройки программы
| Настройка | Описание |
|---|---|
| PeriodRSI | Период расчёта индикатора RSI (по умолчанию 14) |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 5
#property indicator_color1 Aqua
#property indicator_color2 Red
#property indicator_color3 Blue
#property indicator_color4 OrangeRed
#property indicator_color5 SkyBlue
#property indicator_level1 70
#property indicator_level2 50
#property indicator_level3 30
#property indicator_levelstyle 2
#property indicator_levelcolor DarkOliveGreen
extern int PeriodRSI=14;
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
double ExtMapBuffer5[];
int init()
{
// код доступен только после оплаты
}
int deinit()
{
ObjectDelete("Sell");ObjectDelete("Buy");
ObjectsRedraw();
return(0);
}
int start()
{
// код доступен только после оплаты
}
int k,limit,pos1,pos2,pos3,pos4;
int counted_bars=IndicatorCounted();
double rsi1,rsi2,rsi3,vol1,vol2,vol3,vol4;
if (counted_bars<0) return(-1);
if (counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
for (int i=0; i<limit; i++)
{
ExtMapBuffer1[i]=iRSI(NULL,0,PeriodRSI,PRICE_CLOSE,i);
rsi1=iRSI(NULL,0,PeriodRSI,PRICE_CLOSE,i+1);
rsi2=iRSI(NULL,0,PeriodRSI,PRICE_CLOSE,i+2);
rsi3=iRSI(NULL,0,PeriodRSI,PRICE_CLOSE,i+3);
if (rsi1<rsi2 && rsi2>rsi3) ExtMapBuffer5[i+2]=rsi2; //????????. RSI ???????????? ????
if (rsi1>rsi2 && rsi2<rsi3) ExtMapBuffer4[i+2]=rsi2; //???????. RSI ???????????? ?????
}
k=0;
for (i=0; i<500; i++)
{
if (ExtMapBuffer5[i]>40 && k==0) { vol1=ExtMapBuffer5[i]; pos1=i; k++;}
if (ExtMapBuffer5[i]>60 && ExtMapBuffПоказано первые 50% кода (символов: 3573)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.