← К каталогу
Исходный код · ID 3226

StepMA

stepma_v7.2a.mq5

Похожие материалы по тегам

#__slope direction line.mq5MQL5 / MetaTrader 5 · 1 общих теговrange breakout @meowforex1.pineTradingView · 1 общих тегов#1.mtf_collider_h4_close_13_v18bar.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit3.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit2.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit.mq4MQL4 / MetaTrader 4 · 1 общих тегов
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

StepMA — пользовательский индикатор для MetaTrader 5, отображаемый в окне графика. Он рассчитывает и рисует линии индикатора на основе заданных настроек и текущих данных цены. Индикатор поддерживает несколько режимов отображения цвета, которые влияют на визуализацию линий. Также предусмотрены настройки для управления чувствительностью и смещением отображения. Индикатор не выполняет торговых операций и не управляет позициями. Все расчёты производятся на основе исторических данных и текущих цен.

Настройки программы

НастройкаОписание
Length Количество баров, используемых для расчёта волатильности.
Kv Коэффициент чувствительности, влияющий на расчёт размера шага.
StepSize Фиксированный размер шага. Если задано ненулевое значение, используется вместо автоматического расчёта.
MA_Mode Режим сглаживания при расчёте волатильности: 0 — простое среднее, 1 — взвешенное линейно убывающее среднее.
Advance Смещение отображения линий индикатора по горизонтали в барах.
Percentage Процентное смещение линий индикатора относительно рассчитанного уровня.
UpDownShift Величина сдвига вверх/вниз в пунктах. Используется только в режиме цвета 3.
HighLow Переключатель режима использования максимумов и минимумов вместо цен закрытия. Повышает чувствительность индикатора.
ColorMode Режим отображения цвета линий индикатора. Определяет, какие буферы используются для рисования.
Получить полный код

Поиск по коду файла

#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 Aqua
#property indicator_color2 Lime
#property indicator_color3 Red

extern int     Length      = 10;      // Volty Length
extern double  Kv          = 0.5;     // Sensivity Factor
extern int     StepSize    = 20;       // Constant Step Size (if need)
extern int     MA_Mode     = 0;       // Volty MA Mode : 0-SMA, 1-LWMA 
extern int     Advance     = 0;       // Offset
extern double  Percentage  = 0;       // Percentage of Up/Down Moving
extern double  UpDownShift = 0;       // Number of Up/Down Moving, in points. For ColorMode==3 only.
extern bool    HighLow     = false;   // High/Low Mode Switch (more sensitive)
extern int     ColorMode   = 2;       // Color Mode Switch

double LineBuffer[];
double UpBuffer[];
double DnBuffer[];
double smin[];
double smax[];
double trend[];

double pointModifier=1;

  int init()
  {
      // код доступен только после оплаты
   }

int deinit() { return(0); }     

int start()
{
      // код доступен только после оплаты
   }

   int    counted_bars = IndicatorCounted();
   int    i,limit;

   if(counted_bars<0) return(-1);
   if(counted_bars>0) counted_bars--;
         limit = MathMin(Bars-counted_bars,Bars-1);

   if (Digits==3 || Digits==5)
               pointModifier = 10;
         else  pointModifier = 1; 

      for(i = limit; i >= 0; i--)
      {   

      int Step = StepSizeCalc(Length,Kv,StepSize,i);

      Comment (" StepSize= ", Step);

   	double StepMA = StepMACalc (HighLow,Step,i) + Percentage/100.0 * Step * Point * pointModifier;

   	if (ColorMode == 0) LineBuffer[i] = StepMA;

   	if (ColorMode == 1)
   	{
         if (trend[i] > 0)
         {
            UpBuffer[i]  = StepMA - Step * Point * pointModifier;
            LineBuffer[i]= UpBuffer[i];
            DnBuffer[i]  = EMPTY_VALUE;
         }
         else
         if (trend[i] < 0)
         {
            DnBuffer[i]  = StepMA + Step * Point * pointModifier;
            LineBuffer[i]= DnBuffer[i];
            UpBuffer[i]  = EMPTY_VALUE;
         }
         }
         else
         if ( ColorMode == 2)
         {
         if (trend[i] > 0) 
         {
            UpBuffer[i] = StepMA + UpDownShift * Point * pointModifi

Показано первые 50% кода (символов: 3617)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
361,70₽ ≈ $4.42