ift cci mtf shadow 1_1.mq5
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «ift cci mtf shadow 1_1.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой пользовательский индикатор для MetaTrader 5, рассчитывающий значение CCI (индекс канала товара), сглаживаемое скользящей средней, и применяющее к результату обратное преобразование Фишера. Индикатор отображает результаты в отдельном окне с линиями и точками, обозначающими состояния перекупленности и перепроданности.
Поддерживается работа в мультитаймфрейм-режиме: расчёт может выполняться на таймфрейме, отличном от графика, с возможностью интерполяции значений между барами. Уровни перекупленности и перепроданности задаются пользователем и визуально отмечаются линиями.
Индикатор использует шесть буферов для отрисовки: теневую линию, основную линию преобразования Фишера и четыре буфера для точек, отображающих переходы в состояниях +1 и -1. Настройки включают периоды, методы сглаживания, чувствительность и визуальные параметры.
Настройки программы
| Настройка | Описание |
|---|---|
| TimeFrame | Таймфрейм, на котором выполняется расчёт индикатора. |
| CCI_Period | Период расчёта CCI (индекса канала товара). |
| CCI_Price | Тип цены, используемой для расчёта CCI. |
| MA_Period | Период скользящей средней. Значение 1 означает отсутствие сглаживания. |
| MA_Method | Метод скользящей средней, применяемой для сглаживания CCI перед преобразованием Фишера. |
| levelOb | Уровень перекупленности, при превышении которого активируется состояние +1. |
| levelOs | Уровень перепроданности, при снижении ниже которого активируется состояние -1. |
| Sensitivity | Параметр чувствительности обратного преобразования Фишера. |
| LineWidth | Толщина отображаемых линий индикатора. |
| Interpolate | Включает или отключает интерполяцию значений при работе в мультитаймфрейм-режиме. |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 6
#property indicator_color1 clrDimGray
#property indicator_color2 clrWhite
#property indicator_color3 clrDodgerBlue
#property indicator_color4 clrDodgerBlue
#property indicator_color5 clrSandyBrown
#property indicator_color6 clrSandyBrown
#property indicator_minimum -1.05
#property indicator_maximum 1.05
#property strict
extern ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT; // Time frame to use
extern int CCI_Period = 50; // CCI Period
extern ENUM_APPLIED_PRICE CCI_Price = PRICE_TYPICAL; // Price to use
extern int MA_Period = 10; // MaPeriod (1== no ma)
extern ENUM_MA_METHOD MA_Method = MODE_LWMA; // Ma Method
extern double levelOb = 0.9; // overbought level
extern double levelOs = -0.9; // oversold level
extern double Sensitivity = 30; // Sensitivity for inverse fisher transform
extern int LineWidth = 3; // Lines width
extern bool Interpolate = true; // Interpolating when using multi time frame mode
double Value[];
double iFish[];
double iFishua[];
double iFishub[];
double iFishda[];
double iFishdb[];
double state[];
double shadow[];
string indicatorFileName;
bool returnBars;
int init()
{
// код доступен только после оплаты
}
int deinit() { return(0); }
int start()
{
// код доступен только после оплаты
}
int i,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) { shadow[0] = limit+1; return(0); }
if (TimeFrame==Period())
{
if (state[limit] == 1) CleanPoint(limit,iFishua,iFishub);
if (state[limit] == -1) CleanPoint(limit,iFishda,iFishdb);
for (i= limit; i >= 0; i--) Value[i] = (1/Sensitivity)*iCCI(NULL,0,CCI_Period,CCI_Price,i);
for (i= limit; i >= 0; i--)
{
double MA = iMAOnArray(Value,0,MA_Period,0,MA_Method,i);
iFish[i] = (MathExp(2.0Показано первые 50% кода (символов: 4550)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.