Saraf_1001

MQL5 Experts

Specification

//+------------------------------------------------------------------+
//| 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);
}

Responded

1
Developer 1
Rating
(116)
Projects
137
58%
Arbitration
1
0% / 0%
Overdue
0
Free
2
Developer 2
Rating
(16)
Projects
21
29%
Arbitration
2
50% / 0%
Overdue
4
19%
Working
3
Developer 3
Rating
(298)
Projects
478
40%
Arbitration
105
40% / 24%
Overdue
82
17%
Loaded
Published: 2 codes
4
Developer 4
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Published: 1 code
5
Developer 5
Rating
(4)
Projects
4
0%
Arbitration
4
25% / 75%
Overdue
1
25%
Free
6
Developer 6
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free

Project information

Budget
30+ USD