RSI of (MACD-SIGNAL)
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «rsi of (macd-signal)_v1 - arrows.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор «RSI of (MACD-SIGNAL)» рассчитывает линию MACD как разность двух экспоненциальных скользящих средних (быстрой и медленной) цены закрытия, а сигнальную линию — как простую скользящую среднюю от линии MACD. На основе разности MACD и сигнальной линии вычисляется показатель RSI в диапазоне 0–100, отображаемый в отдельном подокне с уровнями 30, 50 и 70. Индикатор предназначен для технического анализа ценовых данных в платформе MetaTrader 5.
Данные RSI отрисовываются в виде линии. Дополнительно индикатор может отображать стрелки-метки при двух условиях: пересечении RSI уровня 50 и изменении направления наклона RSI. Стрелки рисуются на ценовом графике с использованием настраиваемых цветов и идентификаторов.
Настройки позволяют задать периоды быстрой и медленной скользящих, метод усреднения, период сигнальной линии и период RSI, а также управлять видимостью и внешним видом стрелок. Индикатор не содержит торговой логики и не отправляет ордера.
Настройки программы
| Настройка | Описание |
|---|---|
| FastEMA | Период быстрой экспоненциальной скользящей средней для расчёта линии MACD. |
| SlowEMA | Период медленной экспоненциальной скользящей средней для расчёта линии MACD. |
| MODE_MA | Метод усреднения, применяемый при расчёте скользящих средних (значение по умолчанию соответствует MODE_EMA). |
| SignalSMA | Период простой скользящей средней для построения сигнальной линии MACD. |
| RSIPeriod | Период расчёта индикатора RSI на основе разности MACD и сигнальной линии. |
| ShowArrowsForRsiLevel50 | Переключатель отображения стрелок при пересечении RSI уровня 50. |
| ShowArrowsForRsiSlope | Переключатель отображения стрелок при изменении направления наклона RSI. |
| arrowsIdentifier | Идентификатор для именования объектов стрелок на графике. |
| arrowsUpColor1 | Цвет стрелок, указывающих на восходящее направление (первый набор). |
| arrowsDnColor1 | Цвет стрелок, указывающих на нисходящее направление (первый набор). |
| arrowsUpColor2 | Цвет стрелок, указывающих на восходящее направление (второй набор). |
| arrowsDnColor2 | Цвет стрелок, указывающих на нисходящее направление (второй набор). |
Поиск по коду файла
#property indicator_separate_window
#property indicator_minimum 0
#property indicator_maximum 100
#property indicator_level1 30
#property indicator_level2 50
#property indicator_level3 70
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
#property indicator_width1 2
extern int FastEMA=12;
extern int SlowEMA=24;
extern int MODE_MA =3;
extern int SignalSMA=9;
extern int RSIPeriod=7;
extern bool ShowArrowsForRsiLevel50 = true;
extern bool ShowArrowsForRsiSlope = true;
extern string arrowsIdentifier = "RsiArrows1";
extern color arrowsUpColor1 = DeepSkyBlue;
extern color arrowsDnColor1 = Red;
extern color arrowsUpColor2 = LawnGreen;
extern color arrowsDnColor2 = Red;
double RSIBuffer[];
double PosBuffer[];
double NegBuffer[];
double MacdBuffer[];
double SignalBuffer[];
double trend1[];
double trend2[];
int init()
{
// код доступен только после оплаты
}
int deinit()
{
deleteArrows();
return(0);
}
int start()
{
// код доступен только после оплаты
}
int limit;
int counted_bars=IndicatorCounted();
double rel,negative,positive;
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
for(int i=0; i<limit; i++)
MacdBuffer[i]=iMA(NULL,0,FastEMA,0,MODE_MA,PRICE_CLOSE,i)-iMA(NULL,0,SlowEMA,0,MODE_MA,PRICE_CLOSE,i);
for(i=0; i<limit; i++)
SignalBuffer[i]=iMAOnArray(MacdBuffer,Bars,SignalSMA,0,MODE_SMA,i);
i=Bars-RSIPeriod-1;
if(counted_bars>=RSIPeriod) i=Bars-counted_bars-1;
while(i>=0)
{
double sumn=0.0,sump=0.0;
if(i==Bars-RSIPeriod-1)
{
int k=Bars-2;
while(k>=i)
{
rel=(MacdBuffer[k]-SignalBuffer[k])-(MacdBuffer[k+1]-SignalBuffer[k+1]);
if(rel>0) sump+=rel;
else sumn-=rel;
k--;
}
positive=sump/RSIPeriod;
negative=sumn/RSIPeriod;
}
Показано первые 50% кода (символов: 3705)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.