MARSICD
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «marsicd_1.05.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор MARSICD — многопараметрический аналитический индикатор для MetaTrader 5, отображаемый в отдельном окне. Он рассчитывает два варианта RSI (ARSI и инвертированный RRSI), применяет к ним скользящие средние (AMA и RMA), вычисляет их разность (Delta) и сглаживает её третьей скользящей средней (sMAD). Результаты отображаются в виде гистограмм и линий с настраиваемыми уровнями.
Индикатор поддерживает работу с несколькими таймфреймами: он может считывать данные с более старших интервалов и отображать их на текущем графике. Доступны специальные режимы CalculateValue и returnBars, используемые для внутренних межиндикаторных вызовов. Опция интерполяции обеспечивает плавное заполнение значений между барами при мультитаймфреймовой работе.
Все ключевые параметры периодов и таймфрейма настраиваются пользователем. Диапазон отображаемых значений — от -70 до 70 с несколькими справочными уровнями.
Настройки программы
| Настройка | Описание |
|---|---|
| TimeFrame | Временной интервал, с которого считываются данные. Принимает название таймфрейма (например, M1, H1, D1) или специальные значения CalculateValue и returnBars. |
| ARSI_PERIOD | Период расчёта первого индикатора RSI (ARSI). |
| RRSI_PERIOD | Период расчёта инвертированного индикатора RSI (RRSI). |
| AMA_PERIOD | Период скользящей средней для сглаживания значения ARSI. |
| RMA_PERIOD | Период скользящей средней для сглаживания значения RRSI. |
| sMAD_PERIOD | Период скользящей средней для сглаживания разности AMA и RMA (Delta). |
| Interpolate | Включает или отключает интерполяцию значений между барами при мультитаймфреймовой работе. |
Поиск по коду файла
#property indicator_separate_window
#property indicator_minimum -70
#property indicator_maximum 70
#property indicator_level1 -30
#property indicator_level2 -70
#property indicator_level3 -50
#property indicator_level4 30
#property indicator_level5 70
#property indicator_level6 50
#property indicator_buffers 7
#property indicator_color3 Green
#property indicator_color4 Maroon
#property indicator_color1 LimeGreen
#property indicator_color2 PaleVioletRed
#property indicator_color5 MediumSeaGreen
#property indicator_color6 Red
#property indicator_color7 Salmon
#property indicator_width5 2
#property indicator_width6 2
#property indicator_style7 STYLE_DOT
extern string TimeFrame = "Current time frame";
extern int ARSI_PERIOD=14;
extern int RRSI_PERIOD=14;
extern int AMA_PERIOD=5;
extern int RMA_PERIOD=5;
extern int sMAD_PERIOD=21;
extern bool Interpolate = true;
bool ShiftDown = true;
double ARSI_BUF[];
double RRSI_BUF[];
double AMA_BUF[];
double RMA_BUF[];
double DeltaUp[];
double DeltaDn[];
double Delta[];
double sMAD[];
string indicatorFileName;
bool calculateValue;
bool returnBars;
int timeFrame;
int init()
{
// код доступен только после оплаты
}
int start()
{
// код доступен только после оплаты
}
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);
if (returnBars) { DeltaUp[0] = limit+1; return(0); }
if (calculateValue || timeFrame==Period())
{
for(int i=limit; i>=0; i--)
{
ARSI_BUF[i]=iRSI(NULL,0,ARSI_PERIOD,6,i);
RRSI_BUF[i]=100.0-iRSI(NULL,0,RRSI_PERIOD,6,i);
if (ShiftDown)
{
ARSI_BUF[i] -= 50;
RRSI_BUF[i] -= 50;
}
}
for(i=limit; i>=0; i--)
{
AMA_BUF[i]=iMAOnArray(ARSI_BUF,Bars,AMA_PERIOD,0,MODE_LWMA,i);
RMA_BUF[i]=iMAOnArray(RRSI_BUF,Bars,RMA_PERIOD,0,MODE_LWMA,i);
Delta[i]=AMA_BUF[i]-RMA_BUF[i];
DeltaUp[i] = EMPTY_VALUE;
DeltaDn[i] = EMPTY_VALUE;
if (Delta[i]>0) DeltaUp[i] = Delta[i];
if (Delta[i]<0) DeltaDn[i] = Delta[i];
}
for(i=limit; i>=0; i--) sMAD[i]=iMAOnArray(Delta,Bars,sMAD_PERIOD,0,MODE_LWMA,i);
return(0);
}
limПоказано первые 50% кода (символов: 5169)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.