n_stepma_1_email.mq4
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «n_stepma_1_email.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой пользовательский индикатор для платформы MetaTrader 4, который отображает адаптивные скользящие на основе волатильности в отдельном подокне. Индикатор рассчитывает два нормализованных значения (в диапазоне 0–1) на основе параметров, зависящих от диапазона ценовых данных, и визуализирует их в виде линий. При пересечении линий на подтверждённых барах отрисовываются стрелки-стрелки покупки и продажи.
Индикатор поддерживает автоматические уведомления: при обнаружении пересечения линий может отправлять электронное письмо и воспроизводить звуковой сигнал. Расчёт может выполняться как для текущего бара, так и для заданного количества предшествующих баров. Доступен выбор между двумя режимами определения уровней — на основе цен High/Low или цен закрытия.
Продукт работает в режиме индикатора с четырьмя буферами данных: две линии отображаются в виде графиков, а два буфера сигналов отрисовываются в виде стрелок. Все параметры задаются пользователем через окно настроек индикатора.
Настройки программы
| Настройка | Описание |
|---|---|
| PeriodWATR | Период расчёта волатильности, используемой для определения адаптивных шагов скользящих средних. |
| Kwatr | Коэффициент, определяющий масштаб шагов скользящих относительно рассчитанного диапазона волатильности. |
| HighLow | Выбор режима определения уровней: при значении 0 уровни рассчитываются на основе цены закрытия, при значении больше 0 — на основе цен Low и High. |
| CalculatedBars | Задаёт количество баров, на которых выполняется расчёт индикатора. Если указанное значение превышает количество доступных баров или равно нулю, используется текущее количество баров. |
| alert_ON | Включает или отключает автоматические уведомления. При включённом состоянии при пересечении линий индикатор отправляет электронное письмо и воспроизводит звуковой сигнал. |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_color1 Yellow
#property indicator_color2 Aqua
#property indicator_color3 Blue
#property indicator_color4 Red
#property indicator_minimum 0
#property indicator_maximum 1
extern int PeriodWATR=14;
extern double Kwatr=0.75;
extern int HighLow=0;
extern int CalculatedBars = 500;
extern bool alert_ON=true; // ON=true, OFF=false
double LineMinBuffer[];
double LineMidBuffer[];
double LineBuyBuffer[];
double LineSellBuffer[];
int init()
{
// код доступен только после оплаты
}
int deinit()
{
return(0);
}
int start()
{
// код доступен только после оплаты
}
int i,shift,TrendMin,TrendMax,TrendMid;
double SminMin0,SmaxMin0,SminMin1,SmaxMin1,SumRange,dK,WATR0,WATRmax,WATRmin,WATRmid;
double SminMax0,SmaxMax0,SminMax1,SmaxMax1,SminMid0,SmaxMid0,SminMid1,SmaxMid1;
double linemin,linemax,linemid,Stoch1,Stoch2,bsmin,bsmax;
static bool turn_alarm = true;
int StepSizeMin,StepSizeMax,StepSizeMid;
double min,max,mid,h,l,c;
int position_ind0=0, position_ind1=0;
ArrayInitialize(LineBuyBuffer,0);
ArrayInitialize(LineSellBuffer,0);
if(CalculatedBars>Bars || CalculatedBars == 0 ) CalculatedBars = Bars;
for(shift=CalculatedBars-1;shift>=0;shift--){
SumRange=0;
for (i=PeriodWATR-1;i>=0;i--){
dK = 1+1.0*(PeriodWATR-i)/PeriodWATR;
SumRange+= dK*MathAbs(High[i+shift]-Low[i+shift]);
}
WATR0 = SumRange/PeriodWATR;
WATRmax=MathMax(WATR0,WATRmax);
if (shift==CalculatedBars-1-PeriodWATR) WATRmin=WATR0;
WATRmin=MathMin(WATR0,WATRmin);
StepSizeMin=MathRound(Kwatr*WATRmin/Point);
StepSizeMax=MathRound(Kwatr*WATRmax/Point);
StepSizeMid=MathRound(Kwatr*0.5*(WATRmax+WATRmin)/Point);
min = Kwatr*WATRmin;
max = Kwatr*WATRmax;
mid = Kwatr*0.5*(WATRmax+WATRmin);Показано первые 50% кода (символов: 4126)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.