NRTR Rosh v2
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «nrtr rosh v2.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
NRTR Rosh v2 — пользовательский индикатор для MetaTrader 5, отображающий на графике динамические уровни Buy Limit и Sell Limit, рассчитанные на основе усреднённого истинного диапазона (ATR). Индикатор также строит уровни Ceil (потолок) и Floor (пол) для определения текущего тренда.
Индикатор использует два настраиваемых параметра: период ATR и множитель ATR. Четыре буфера отображаются графически: Buy Limit (синие стрелки), Sell Limit (красные стрелки), Ceil (синие) и Floor (красные). Уровни Buy и Sell рассчитываются как Close минус/плюс произведение множителя на значение ATR.
Логика тренда основана на отслеживании пробития уровней. В восходящем тренде индикатор обновляет уровень Ceil; при его пробитии или пробитии уровня Buy происходит разворот тренда. В нисходящем тренде аналогично работает уровень Floor и уровень Sell. Все значения пересчитываются на каждом баре с учётом предыдущих состояний.
Настройки программы
| Настройка | Описание |
|---|---|
| PerATR | Период усреднения для расчёта ATR (среднего истинного диапазона), используемого при построении уровней Buy и Sell |
| kATR | Множитель ATR, определяющий удаление уровней Buy Limit и Sell Limit от цены закрытия |
Поиск по коду файла
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Tomato
#property indicator_color2 DeepSkyBlue
#property indicator_color3 DeepSkyBlue
#property indicator_color4 Tomato
extern int PerATR=40;
extern double kATR=2.0;
double SellBuffer[];
double BuyBuffer[];
double Ceil[];
double Floor[];
double Trend[];
int init()
{
// код доступен только после оплаты
}
bool BreakDown(int shift)
{
bool result=false;
if (Close[shift]>SellBuffer[shift+1]) result=true;
return(result);
}
bool BreakUp(int shift)
{
bool result=false;
if (Close[shift]<BuyBuffer[shift+1]) result=true;
return(result);
}
bool BreakFloor(int shift)
{
bool result=false;
if (High[shift]<Floor[shift+1]) result=true;
return(result);
}
bool BreakCeil(int shift)
{
bool result=false;
if (Low[shift]>Ceil[shift+1]) result=true;
return(result);
}
bool Uptrend(int shift)
{
bool result=false;
if (Trend[shift+1]==1) result=true;
if (Trend[shift+1]==-1) result=false;
if ((Trend[shift+1]!=1)&&(Trend[shift+1]!=-1)) Print("????????! ????? ?? ?????????, ?????? ???? ?? ?????. ??? ?? ????? ",(Bars-shift));
return(result);
}
double ATR(int iPer,int shift)
{
double result;
result=iATR(NULL,0,iPer,shift);
return(result);
}
void NewCeil(int shift)
{
Ceil[shift]=Close[shift];
Floor[shift]=0.0;
}
void NewFloor(int shift)
{
Floor[shift]=Close[shift];
Ceil[shift]=0.0;
}
void SetBuyBuffer(int shift)
{
BuyBuffer[shift]=Close[shift]Показано первые 50% кода (символов: 3375)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.