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

FracTandles

%23 fractal candles modded.mq5
Вы автор или правообладатель?

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

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

О программе

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

На основе текущей ситуации с фракталами индикатор раскрашивает свечи графика в два цвета: один цвет обозначает бычье доминирование, другой — медвежье. Цветовая схема различается в зависимости от направления тренда и типа свечи (бычья или медвежья), что позволяет быстро оценить рыночную обстановку визуально.

Индикатор отрисовывает четыре гистограммных буфера в окне графика и позволяет настраивать диапазон анализируемых баров, толщину отображаемых столбцов и цвета для каждой комбинации тренда и свечи. Расчёт выполняется на каждом тике с учётом уже посчитанных баров.

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

НастройкаОписание
IndicatorRange Задаёт количество баров, анализируемых при расчёте индикатора. Если значение равно -1 или превышает количество доступных баров, используется весь доступный диапазон.
width Определяет толщину отображаемых гистограмм на графике.
GreenUp Цвет отрисовки для бычьих (длинных) свечей при восходящем тренде.
GreenDown Цвет отрисовки для бычьих (длинных) свечей при нисходящем тренде.
RedUp Цвет отрисовки для медвежьих (коротких) свечей при восходящем тренде.
RedDown Цвет отрисовки для медвежьих (коротких) свечей при нисходящем тренде.
Получить полный код

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

/*
modded Jan 18, 2012
by zoraq the unstable
*/

#property indicator_chart_window
#property indicator_buffers 4

extern int IndicatorRange = 400;
extern int width = 2;
extern color GreenUp = Green;
extern color GreenDown = Green;
extern color RedUp = Red;
extern color RedDown = Red;

double Buf0[];
double Buf1[];
double Buf2[];
double Buf3[];
double Buf4[];
double Buf5[];
double Buf6[];
double Buf7[];

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

int deinit() {
   return (0);
}

int start() {
      // код доступен только после оплаты
   }
   int ToCount;
   int var2;
   int var3;
   int Index1;
   int Index2;
   int Index3;

   double open,close;  //  added
   double FractalHigh;
   double FractalLow;
   double UPorDOWN;
   double Y22;
   string TheSymbol = Symbol();
   int TimeFrame = Period();
   int Counted = IndicatorCounted();
   if (IndicatorRange == -1 || IndicatorRange > Bars) IndicatorRange = Bars;
   if (Counted == 0) ToCount = IndicatorRange - 1;
   if (Counted > 0) ToCount = Bars - Counted - 1;
   for (int i = ToCount; i >= 0; i--) {
      Index1 = 0;
      Index2 = 0;
      Index3 = 0;
      open  = Open[i];   //   added
      close = Close[i];  //   added

      var2 = 0;
      var3 = 0;
      for (int Counter1 = i; Counter1 < Bars; Counter1++) {
         FractalHigh = iFractals(TheSymbol, TimeFrame, MODE_UPPER, Counter1);
         FractalLow =  iFractals(TheSymbol, TimeFrame, MODE_LOWER, Counter1);
         if (FractalHigh != 0.0) {     //if there is a fractal marker
            Buf4[Index1] = FractalHigh;  //then set buf4 to the value of this bar this is
            Buf6[Index1] = Counter1;     //and  set buf6 to which bar it is
            Index1++;                    // increment the for/next loop 
         }
         if (FractalLow != 0.0) {      //same as above except looking for fractal low
            Buf5[Index2] = FractalLow;
            Buf7[Index2] = Counter1;
            Index2++;
         }
         if (Index1 > 1 && Index2 > 1) {          // neither a fractal high or low
            for (Index3 = 1; Index3 < Index1; Index3++) {  
               if (Buf4[Index3 - 1] > Buf4[Index3]) {      //if the value of last fractal is greater than the current fractal
         

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

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

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

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

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

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

Стоимость полного кода
352,20₽ ≈ $4.37