Convert pinescript to mq5

MQL5 Indikatoren Konvertierung

Auftrag beendet

Ausführungszeit 3 Minuten
Bewertung des Kunden
Uno de los mejores programadores de esta web. Con solo leer sus códigos ya puedo saber que se trata de él. Muchas gracias.
Bewertung des Entwicklers
Excelente cliente. Especificaciones claras y rápido pago. Gracias.

Spezifikation

Hello,

I'm looking for a freelancer with experience in Pinescript and MQ5. I have code for an indicator in Pinescript that I need to convert to MQ5. I've tried doing it myself, but it hasn't worked properly. I need someone who can fix this issue and make sure the indicator works the same on both platforms. At the end of the order, the MQ5 code will be delivered.

Thank you.


Pinescript Code:

//@version=5
indicator("JLC Trend Indicator", overlay=true)

// Define input parameters
DosVelas = input(true, title="Dos Velas")
Bullish_Momentum = input(true, title="Bullish Momentum")
Bearish_Momentum = input(true, title="Bearish Momentum")
Bull_Threshold = input(60, title="Bull Threshold")
End_Bull_Threshold = input(60, title="End of Bull Threshold")
Bear_Threshold = input(40, title="Bear Threshold")
End_Bear_Threshold = input(40, title="End of Bear Threshold")

// Variables for Bullish Momentum
var float BULLlll = na
var float BULLhhh = na
var int BULLTJLC = na
var int BULLRISKUPJLC = na
var int BULLRISKDNJLC = na

// Variables for Bearish Momentum
var float BEARlll = na
var float BEARhhh = na
var int BEARTJLC = na
var int BEARRISKUPJLC = na
var int BEARRISKDNJLC = na

RSIHA = ta.rsi(close, 14)

// Logic for Bearish Momentum condition
if Bearish_Momentum
    if DosVelas
        if not na(RSIHA[2]) and RSIHA[2] > Bear_Threshold and RSIHA[1] < Bear_Threshold and RSIHA < Bear_Threshold
            BEARlll := math.min(low[1], low)
            BEARRISKUPJLC := 1
        if BEARRISKUPJLC == 1 and close < BEARlll
            BEARRISKUPJLC := 0
            BEARTJLC := 1
    else
        if not na(RSIHA[2]) and RSIHA[1] > Bear_Threshold and RSIHA < Bear_Threshold
            BEARTJLC := 1

    if not na(RSIHA[2]) and RSIHA[2] < End_Bear_Threshold and RSIHA[1] > End_Bear_Threshold and RSIHA > End_Bear_Threshold
        BEARhhh := math.max(high[1], high)
        BEARRISKDNJLC := 1
    if BEARRISKDNJLC == 1 and close > BEARhhh
        BEARRISKDNJLC := 0
        BEARTJLC := 0

// Logic for Bullish Momentum condition
if Bullish_Momentum
    if DosVelas
        if not na(RSIHA[2]) and RSIHA[2] < Bull_Threshold and RSIHA[1] > Bull_Threshold and RSIHA > Bull_Threshold
            BULLhhh := math.max(high[1], high)
            BULLRISKUPJLC := 1
        if BULLRISKUPJLC == 1 and close < BULLhhh
            BULLRISKUPJLC := 0
            BULLTJLC := 1
    else
        if not na(RSIHA[2]) and RSIHA[1] < Bull_Threshold and RSIHA > Bull_Threshold
            BULLTJLC := 1

    if not na(RSIHA[2]) and RSIHA[2] > End_Bull_Threshold and RSIHA[1] < End_Bull_Threshold and RSIHA < End_Bull_Threshold
        BULLlll := math.min(low[1], low)
        BULLRISKDNJLC := 1
    if BULLRISKDNJLC == 1 and close > BULLlll
        BULLRISKDNJLC := 0
        BULLTJLC := 0

// Plot TJLC as a red or green histogram
barcolor(BEARTJLC == 1 ? color.new(color.red, 80) : na)
barcolor(BULLTJLC == 1 ? color.new(color.lime, 80) : na)

// Output TJLC to show in the data window
plot(BEARTJLC, title="JLC Bear Trend Indicator", color=color.new(color.red, 0), style=plot.style_histogram)
plot(BULLTJLC, title="JLC Bull Trend Indicator", color=color.new(color.lime, 0), style=plot.style_histogram)


My attempt at MQ5:

//+------------------------------------------------------------------+
//|                                         JLC Trend Indicator.mq5   |
//|                                            https://www.mql5.com |
//+------------------------------------------------------------------+


#property version   "1.00"
#property indicator_separate_window

#property indicator_buffers 4
#property indicator_plots 4

#property indicator_type1 DRAW_HISTOGRAM
#property indicator_style1 STYLE_SOLID
#property indicator_width1 1
#property indicator_color1 clrRed
#property indicator_label1 "Bear Trend"

#property indicator_type2 DRAW_HISTOGRAM
#property indicator_style2 STYLE_SOLID
#property indicator_width2 1
#property indicator_color2 clrLime
#property indicator_label2 "Bull Trend"

#property indicator_type3 DRAW_NONE
#property indicator_label3 "BEARTJLC"

#property indicator_type4 DRAW_NONE
#property indicator_label4 "BULLTJLC"

double BearTrendBuffer[];
double BullTrendBuffer[];
double BEARTJLCBuffer[];
double BULLTJLCBuffer[];

int RSI_handle;
double RSI[];

input bool DosVelas = true;
input bool Bullish_Momentum = true;
input bool Bearish_Momentum = true;
input int Bull_Threshold = 60;
input int End_Bull_Threshold = 60;
input int Bear_Threshold = 40;
input int End_Bear_Threshold = 40;

// Variables to apply the logic
double BULLlll, BULLhhh;
double BEARlll, BEARhhh;
int BULLTJLC, BULLRISKUPJLC, BULLRISKDNJLC;
int BEARTJLC, BEARRISKUPJLC, BEARRISKDNJLC;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
// Indicator buffers
   SetIndexBuffer(0, BearTrendBuffer);
   PlotIndexSetDouble(0, PLOT_EMPTY_VALUE, EMPTY_VALUE);
   SetIndexBuffer(1, BullTrendBuffer);
   PlotIndexSetDouble(1, PLOT_EMPTY_VALUE, EMPTY_VALUE);
   SetIndexBuffer(2, BEARTJLCBuffer);
   PlotIndexSetDouble(2, PLOT_EMPTY_VALUE, EMPTY_VALUE);
   SetIndexBuffer(3, BULLTJLCBuffer);
   PlotIndexSetDouble(3, PLOT_EMPTY_VALUE, EMPTY_VALUE);

// Handle for RSI
   RSI_handle = iRSI(NULL, 0, 14, PRICE_CLOSE);
   if(RSI_handle < 0)
     {
      Print("Error creating RSI handle: ", GetLastError());
      return (INIT_FAILED);
     }

   return (INIT_SUCCEEDED);
  }

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
// Check if RSI has been calculated
   if(BarsCalculated(RSI_handle) <= 0)
      return (0);

// Copy RSI values
   if(CopyBuffer(RSI_handle, 0, 0, rates_total, RSI) <= 0)
      return (0);

   int limit = rates_total - prev_calculated;
   if(prev_calculated > 0)
      limit++;

// Set series configuration
   ArraySetAsSeries(RSI, true);
   ArraySetAsSeries(BearTrendBuffer, true);
   ArraySetAsSeries(BullTrendBuffer, true);
   ArraySetAsSeries(BEARTJLCBuffer, true);
   ArraySetAsSeries(BULLTJLCBuffer, true);

   for(int i = limit + 1; i >= 2; i++)
     {
      BearTrendBuffer[i] = EMPTY_VALUE;
      BullTrendBuffer[i] = EMPTY_VALUE;
      BEARTJLCBuffer[i] = EMPTY_VALUE;
      BULLTJLCBuffer[i] = EMPTY_VALUE;

      // Reset trend variables
      BEARTJLC = 0;
      BULLTJLC = 0;

      // Bearish Momentum logic
      if(Bearish_Momentum)
        {
         if(DosVelas)
           {
            if(RSI[i+2] > Bear_Threshold && RSI[i+1] < Bear_Threshold && RSI[i] < Bear_Threshold)
              {
               BEARlll = MathMin(low[i+1], low[i]);
               BEARRISKUPJLC = 1;
              }
            if(BEARRISKUPJLC == 1 && close[i] < BEARlll)
              {
               BEARRISKUPJLC = 0;
               BEARTJLC = 1;
              }
           }
         else
           {
            if(RSI[i+1] > Bear_Threshold && RSI[i] < Bear_Threshold)
               BEARTJLC = 1;
           }

         if(RSI[i+2] < End_Bear_Threshold && RSI[i+1] > End_Bear_Threshold && RSI[i] > End_Bear_Threshold)
           {
            BEARhhh = MathMax(high[i+1], high[i]);
            BEARRISKDNJLC = 1;
           }
         if(BEARRISKDNJLC == 1 && close[i] > BEARhhh)
           {
            BEARRISKDNJLC = 0;
            BEARTJLC = 0;
           }
        }

      // Bullish Momentum logic
      if(Bullish_Momentum)
        {
         if(DosVelas)
           {
            if(RSI[i-2] < Bull_Threshold && RSI[i-1] > Bull_Threshold && RSI[i] > Bull_Threshold)
              {
               BULLhhh = MathMax(high[i+1], high[i]);
               BULLRISKUPJLC = 1;
              }
            if(BULLRISKUPJLC == 1 && close[i] < BULLhhh)
              {
               BULLRISKUPJLC = 0;
               BULLTJLC = 1;
              }
           }
         else
           {
            if(RSI[i+1] < Bull_Threshold && RSI[i] > Bull_Threshold)
               BULLTJLC = 1;
           }

         if(RSI[i+2] > End_Bull_Threshold && RSI[i+1] < End_Bull_Threshold && RSI[i] < End_Bull_Threshold)
           {
            BULLlll = MathMin(low[i+1], low[i]);
            BULLRISKDNJLC = 1;
           }
         if(BULLRISKDNJLC == 1 && close[i] > BULLlll)
           {
            BULLRISKDNJLC = 0;
            BULLTJLC = 0;
           }
        }



      // Set buffers
      if(BEARTJLC == 1)
         BearTrendBuffer[i] = 1;
      else
         BearTrendBuffer[i] = 0;

      if(BULLTJLC == 1)
         BullTrendBuffer[i] = 1;
      else
         BullTrendBuffer[i] = 0;

      BEARTJLCBuffer[i] = BEARTJLC;
      BULLTJLCBuffer[i] = BULLTJLC;
     }

   return (rates_total);
  }
//+------------------------------------------------------------------+


Bewerbungen

1
Entwickler 1
Bewertung
(104)
Projekte
134
43%
Schlichtung
0
Frist nicht eingehalten
3
2%
Arbeitet
2
Entwickler 2
Bewertung
(268)
Projekte
603
34%
Schlichtung
65
22% / 57%
Frist nicht eingehalten
146
24%
Arbeitet
Veröffentlicht: 1 Artikel, 22 Beispiele
3
Entwickler 3
Bewertung
(7)
Projekte
8
13%
Schlichtung
6
33% / 33%
Frist nicht eingehalten
0
Frei
4
Entwickler 4
Bewertung
(152)
Projekte
228
80%
Schlichtung
22
27% / 50%
Frist nicht eingehalten
11
5%
Frei
Veröffentlicht: 24 Artikel, 1882 Beispiele
5
Entwickler 5
Bewertung
(12)
Projekte
9
33%
Schlichtung
11
0% / 100%
Frist nicht eingehalten
2
22%
Frei
6
Entwickler 6
Bewertung
(322)
Projekte
499
67%
Schlichtung
5
40% / 0%
Frist nicht eingehalten
4
1%
Frei
Veröffentlicht: 8 Beispiele
7
Entwickler 7
Bewertung
(279)
Projekte
378
72%
Schlichtung
19
32% / 47%
Frist nicht eingehalten
16
4%
Frei
Veröffentlicht: 15 Beispiele
8
Entwickler 8
Bewertung
(553)
Projekte
844
61%
Schlichtung
33
27% / 45%
Frist nicht eingehalten
24
3%
Frei
Veröffentlicht: 1 Beispiel
9
Entwickler 9
Bewertung
(40)
Projekte
59
85%
Schlichtung
0
Frist nicht eingehalten
1
2%
Frei
Veröffentlicht: 2 Beispiele
10
Entwickler 10
Bewertung
(574)
Projekte
945
47%
Schlichtung
309
58% / 27%
Frist nicht eingehalten
125
13%
Frei
Ähnliche Aufträge
Create a bot that can trade and read indicators easy to read for first time users. Bot that can be used on a phone and connect to MT5. It should be easy to install or use on any device especially phone and laptop, preferably the bot that can run over night and controllable when needed
These are orderflow footprint indicator I would like to know if you can algorithmisie and build a stacked imbalance bot from them .. Kindlt let me know if you can do it and check the file before replying me
I have 2 trading view indicators by GainzAlgo that I want code to mt5 , could u advise? I need you to give me response if you can convert This
I DO NOT need any programming or strategy development. I already have a working NinjaTrader 8 automated strategy based on a 3/5 EMA crossover. I need you to run my existing strategy through NinjaTrader Strategy Analyzer/Optimizer, test the existing adjustable parameters, and find robust settings with the best profit factor and lowest reasonable drawdown. I will provide the existing NinjaScript ZIP. I do not want the
Platform: TradingView Programming Language: Pine Script v6 Type: Custom Indicator Project Name: Scalping Reaction Zones + Valid Order Blocks MAIN GOAL I need a custom TradingView indicator for scalping. The indicator must detect: 1. Reaction / Explosion Zones 2. Valid Order Blocks 3. Combined Reaction Zone + Order Block zones The indicator should NOT generate: Buy signals Sell signals TP SL Entry signals Trading
Project Description I am looking for an experienced MQL5/MT5 Expert Advisor developer to develop an automated trading EA for XAUUSD on the M3 timeframe , running on an Exness account . The EA will automate a manual strategy based on SNR/GAP zones , using two setup types: Price Rejection Price Correction The EA should identify valid BUY/SELL setups around predefined SNR/GAP areas, apply configurable RSI, SMA, EMA and
Indicador Maximas e Minimas + Super Trend O Indicador MAX/MIN é um indicador de análise técnica para o MetaTrader 5 , desenvolvido para ajudar você a identificar regiões importantes de preço e possíveis oportunidades de compra e venda. O que ele faz MAX/MIN: identifica máximas e mínimas relevantes do mercado e mostra os preços no gráfico. HH / HL / LH / LL: ajuda a visualizar a estrutura do mercado, mostrando quando
Hello Traders, Have a trading strategy or idea you want to automate? I specialize exclusively in MQL5 development, helping traders turn their concepts into professional trading solutions. Custom Expert Advisors — automate your strategy and reduce manual execution Custom Indicators — transform your market ideas into powerful trading tools Fix & Debug — identify errors and get your existing code working properly
I DO NOT need any programming or strategy development. I already have a working NinjaTrader 8 automated strategy based on a 3/5 EMA crossover. I need you to run my existing strategy through NinjaTrader Strategy Analyzer/Optimizer, test the existing adjustable parameters, and find robust settings with the best profit factor and lowest reasonable drawdown. I will provide the existing NinjaScript ZIP. I do not want the
I'm looking for an experienced developer to create an automated gold trading bot. The bot should be compatible with MetaTrader 4/5 and TradingView. Key Requirements: - Automated trading bot - Compatible with MetaTrader 4/5 and TradingView - Implement scalping and swing trading strategies Ideal Skills and Experience: - Proficiency in trading algorithms - Experience with gold trading - Familiarity with MetaTrader and

Projektdetails

Budget
30+ USD
Ausführungsfristen
bis 2 Tag(e)