reveng_emarsi_mtf.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «reveng_emarsi_mtf.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор реализует концепцию «Reverse Engineering RSI» на основе статьи Гиоргоса Силигардоса из августовского выпуска 2003 года журнала Technical Analysis of Stocks and Commodities. Он рассчитывает аналитическую линию, объединяющую информацию о ценовых изменениях, скользящих средних и индексе относительной силы, отображая результат в окне графика MetaTrader 5.
Поддерживается многотаймфреймный режим: индикатор может работать на выбранном таймфрейме и корректно отображать данные на текущем графике. Доступен специальный режим с параметром таймфрейма -99, при котором индикатор возвращает количество обработанных баров и может использоваться для запуска пользовательских сценариев обработки.
Расчёт основан на пользовательских функциях экспоненциального сглаживания (EMA) и использует встроенные функции MetaTrader 5 для вычисления SMA, RSI и EMA. Индикатор содержит один буфер данных, отрисовывается фиолетовым цветом с толщиной линии 2.
Входные параметры позволяют настроить таймфрейм, периоды EMA и Wild, тип цены и сдвиг индикатора, что обеспечивает гибкость настройки под различные торговые стратегии.
Настройки программы
| Настройка | Описание |
|---|---|
| TimeFrame | Таймфрейм, на котором выполняется расчёт индикатора. Поддерживаются стандартные таймфреймы MetaTrader 5. Значение -99 активирует специальный режим возврата количества обработанных баров. |
| EmaPeriod | Период экспоненциального скользящего среднего, используемый для дополнительного сглаживания рассчитанного значения RSI. Увеличение значения делает линию индикатора более плавной. |
| WildPeriod | Период для расчёта экспоненциальных скользящих средних изменений цены (апгрейд и даунгрейд), используемых в формуле обратного инжиниринга RSI. |
| Price | Тип цены, используемой для расчёта индикатора. Определяет, какие данные ценового ряда (закрытие, открытие, максимум, минимум и т.д.) берутся за основу вычислений. |
| Shift | Сдвиг индикатора в барах относительно текущего бара. Положительное значение сдвигает линию индикатора влево по графику. |
Поиск по коду файла
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 DarkViolet
#property indicator_width1 2
extern ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT;
extern int EmaPeriod = 45;
extern int WildPeriod = 14;
extern ENUM_APPLIED_PRICE Price = PRICE_CLOSE;
extern int Shift = 1;
double ema[];
string indicatorFileName;
bool returnBars;
int init()
{
// код доступен только после оплаты
}
int deinit(){return(0);}
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) { ema[0] = limit+1; return(0); }
if (TimeFrame == Period())
{
for(int i=limit; i>=0; i--)
{
double price = iMA(NULL,0,1,0,MODE_SMA,Price,i);
double price1 = iMA(NULL,0,1,0,MODE_SMA,Price,i+1);
double emaRsi = iEma(iRSI(NULL,0,WildPeriod,Price,i),EmaPeriod-1,i,0);
double value1 = 0; if (price>price1) value1 = price-price1;
double value2 = 0; if (price1>priПоказано первые 50% кода (символов: 2205)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.