Saraf_1001

MQL5 Asesores Expertos

Tarea técnica

//+------------------------------------------------------------------+
//| Pin Bar Indicator (MT5) |
//+------------------------------------------------------------------+
#property indicator_chart_window
#property indicator_plots 2

#property indicator_type1 DRAW_ARROW
#property indicator_color1 Blue // Буллиш Pin Bar
#property indicator_width1 2
#property indicator_label1 "Bullish Pin"

#property indicator_type2 DRAW_ARROW
#property indicator_color2 Red // Бериш Pin Bar
#property indicator_width2 2
#property indicator_label2 "Bearish Pin"

double BullPinBuffer[];
double BearPinBuffer[];

input double MinTailToBodyRatio = 2.5; // Думи дароз > ҷисм * 2.5
input int LookbackBars = 500;

int OnInit()
{
   SetIndexBuffer(0, BullPinBuffer, INDICATOR_DATA);
   PlotIndexSetInteger(0, PLOT_ARROW, 233);

   SetIndexBuffer(1, BearPinBuffer, INDICATOR_DATA);
   PlotIndexSetInteger(1, PLOT_ARROW, 234);

   return(INIT_SUCCEEDED);
}

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const int begin,
                const double& price[])
{
   int start = MathMax(prev_calculated, 1);
   int limit = MathMin(rates_total - 1, LookbackBars);

   for (int i = start; i < limit; i++)
   {
      double open = Open[i];
      double close = Close[i];
      double high = High[i];
      double low = Low[i];

      double body = MathAbs(open - close);
      if (body <= 0) continue;

      double upperTail = high - MathMax(open, close);
      double lowerTail = MathMin(open, close) - low;

      // Bullish Pin Bar (думаш поён)
      if (lowerTail > body * MinTailToBodyRatio)
         BullPinBuffer[i] = low - (SymbolInfoDouble(_Symbol, SYMBOL_POINT) * 5);
      else
         BullPinBuffer[i] = EMPTY_VALUE;

      // Bearish Pin Bar (думаш боло)
      if (upperTail > body * MinTailToBodyRatio)
         BearPinBuffer[i] = high + (SymbolInfoDouble(_Symbol, SYMBOL_POINT) * 5);
      else
         BearPinBuffer[i] = EMPTY_VALUE;
   }

   return(rates_total);
}

Han respondido

1
Desarrollador 1
Evaluación
(116)
Proyectos
137
58%
Arbitraje
1
0% / 0%
Caducado
0
Libre
2
Desarrollador 2
Evaluación
(16)
Proyectos
21
29%
Arbitraje
2
50% / 0%
Caducado
4
19%
Trabaja
3
Desarrollador 3
Evaluación
(298)
Proyectos
478
40%
Arbitraje
105
40% / 24%
Caducado
82
17%
Trabajando
Ha publicado: 2 ejemplos
4
Desarrollador 4
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
Ha publicado: 1 ejemplo
5
Desarrollador 5
Evaluación
(4)
Proyectos
4
0%
Arbitraje
4
25% / 75%
Caducado
1
25%
Libre
6
Desarrollador 6
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre

Información sobre el proyecto

Presupuesto
30+ USD