Re: Already Converted TradingView Indicators to MT4 Indicators

681
mrtools wrote: Mon Dec 22, 2025 5:56 am Hello, by any chance do you have any more information about this indicator?

Code: Select all

l.style_label_up, yloc=yloc.belowbar)
As per PDF attached above, here is the TVcode.

Code: Select all

```pinescript
//@version=5
indicator("Binary Master Mind", shorttitle="Kwiq Signals Indicator (BMM)", overlay=true)

// Hidden parameters (set directly in the code)
n1 = 2
n2 = 4
ob_level1 = 60
ob_level2 = 53
os_level1 = -60
os_level2 = -53
src = ohlc4

bullish_color = color.green
bearish_color = color.red
arrow_size = "Auto"

adx_threshold = input(10, "Filter Threshold") // Kept for potential future use

// Visible input parameters (only X Filter toggle)
use_x_filter = input.bool(true, "X Filter")

// WaveTrend calculation
ap = src
esa = ta.ema(ap, n1)
d = ta.ema(math.abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * d)
tci = ta.ema(ci, n2)

wt1 = tci
wt2 = ta.sma(wt1, 4)

// 3 EMA Filter Calculation (X Filter)
len1 = 20
len2 = 50
len3 = 100

ema1 = ta.ema(close, len1)
ema2 = ta.ema(close, len2)
ema3 = ta.ema(close, len3)

ema_trend_up = ema1 > ema2 and ema2 > ema3
ema_trend_down = ema1 < ema2 and ema2 < ema3

// Calculate signals
up_signal = wt1[2] > wt1[3] and wt1[3] < wt1[4] and wt1[2] < os_level2 and wt1[1] > wt1[2]
down_signal = wt1[2] < wt1[3] and wt1[3] > wt1[4] and wt1[2] > ob_level2 and wt1[1] < wt1[2]

// Apply X Filter if enabled
up_signal := up_signal and (not use_x_filter or ema_trend_up)
down_signal := down_signal and (not use_x_filter or ema_trend_down)

// Pre-alert signals
up_pre_alert = wt1 < wt1[1] and wt1[1] < wt1[2] and wt1 < os_level2 and (not use_x_filter or ema_trend_up)
down_pre_alert = wt1 > wt1[1] and wt1[1] > wt1[2] and wt1 > ob_level2 and (not use_x_filter or ema_trend_down)

// Plot arrows on the current bar
plotarrow(up_signal ? 1 : na, colorup=bullish_color)
plotarrow(down_signal ? -1 : na, colordown=bearish_color)

// Background coloring based on WaveTrend levels
bgcolor(wt1 > ob_level1 ? color.new(color.red, 90) : wt1 < os_level1 ? color.new(color.green, 90) : na)

// Martingale labeling system and win calculation
var int bullish_steps = 0
var int bearish_steps = 0
var bool waiting_for_bullish = false
var bool waiting_for_bearish = false
var int total_signals = 0
var int total_wins = 0

if up_signal
    waiting_for_bullish := true
    bullish_steps := 0
    total_signals := total_signals + 1

if down_signal
    waiting_for_bearish := true
    bearish_steps := 0
    total_signals := total_signals + 1

label_text = ""

if waiting_for_bullish
    if close > open // Bullish candle
        label_text := bullish_steps == 0 ? "Dwin" : str.tostring(bullish_steps) + "swin"
        waiting_for_bullish := false
        total_wins := total_wins + 1
    else
        bullish_steps := math.min(bullish_steps + 1, 5)
        if bullish_steps == 5
            waiting_for_bullish := false

if waiting_for_bearish
    if close < open // Bearish candle
        label_text := bearish_steps == 0 ? "Dwin" : str.tostring(bearish_steps) + "swin"
        waiting_for_bearish := false
        total_wins := total_wins + 1
    else
        bearish_steps := math.min(bearish_steps + 1, 5)
        if bearish_steps == 5
            waiting_for_bearish := false

if label_text != ""
    label.new(bar_index, waiting_for_bullish ? high : low, text=label_text, color=color.black, textcolor=color.white, style=waiting_for_bullish ? label.style_label_down : label.style_label_up)

// Calculate win rate
win_rate = total_signals > 0 ? (total_wins / total_signals) * 100 : 0

// Create and display the table
var table stats_table = table.new(position.top_right, 3, 2, bgcolor = color.new(color.blue, 70))
table.cell(stats_table, 0, 0, "Total Signals", text_color = color.white)
table.cell(stats_table, 1, 0, "Wins", text_color = color.white)
table.cell(stats_table, 2, 0, "Win Rate", text_color = color.white)
table.cell(stats_table, 0, 1, str.tostring(total_signals), text_color = color.white)
table.cell(stats_table, 1, 1, str.tostring(total_wins), text_color = color.green)
table.cell(stats_table, 2, 1, str.tostring(math.round(win_rate, 2)) + "%", text_color = color.green)

// Conditional plotting logic for X Filter (EMA)
var float ema1_visibility = na
var float ema2_visibility = na
var float ema3_visibility = na

if use_x_filter
    ema1_visibility := ema1
    ema2_visibility := ema2
    ema3_visibility := ema3

plot(ema1_visibility, title="EMA", color=color.green) // Removed period from title
plot(ema2_visibility, title="EMA", color=color.blue) // Removed period from title
plot(ema3_visibility, title="EMA", color=color.red) // Removed period from title

// Pre-alert label
var label pre_alert_label = na
label.delete(pre_alert_label[1])
if up_pre_alert
    pre_alert_label := label.new(bar_index, high, text="Up arrow signal\nalert in next candle", color=color.new(color.black, 0), textcolor=color.black, style=label.style_label_down, yloc=yloc.abovebar)
else if down_pre_alert
    pre_alert_label := label.new(bar_index, low, text="Down arrow signal\nalert in next candle", color=color.new(color.black, 0), textcolor=color.black, style=label.style_label_up, yloc=yloc.belowbar)
```
These users thanked the author MwlRCT for the post:
mrtools


Re: Already Converted TradingView Indicators to MT4 Indicators

682
Hello,

This ICT SCOB indicator works very well and makes it easy to identify entries and reversals. It’s a simple and clean indicator, and I would love to see the SCOB concept available on MT4 charts.

Could you please help convert this TradingView indicator into an MT4 indicator?

Thank you.
Trading View Link [url][/https://www.tradingview.com/script/tnek ... COB-UAlgo/]

[img][/https://www.tradingview.com/x/4Iw1JfWe/]

Re: Already Converted TradingView Indicators to MT4 Indicators

683
Tsar wrote: Sun Nov 09, 2025 9:36 pm Dear mrtools, kvak, Banzai or Other Coders.
Need your Help convert this TV Script indicator;s to MT4 please... 🙏

There is very Interesting of the New Concept & inspired by BigBeluga :
Supply Demand (include Support Resistance) with Base of Volume (combine POC + Heatmap bars of Market Profile) and Add Fibo Calculation's.


Dynamic Liquidity HeatMap Profile [BigBeluga]


Dynamic Liquidity HeatMap Profile [BigBeluga].jpg

Explaint in :
https://www.tradingview.com/v/qWvJ0jlj
Dynamic Liquidity HeatMap Profile
(on/off button)

It's over here, MT4 and MT5:
post1295578188.html#p1295578188

MT4 on/off button version is over here:
post1295578188.html#p1295578188
Image
These users thanked the author Banzai for the post (total 6):
Tur005, horizon202, DmitrySCLP, Tsar, Abdi, specialkey


Re: TradingView Indicators to MT4 Indicators

686
Dear mrtools, kvak, Banzai, Pelle or Other Coders.
Need your Help convert this TV Script indicator;s to MT4 please... 🙏

There is very Interesting of the New Concept & inspired by presentTrading :
There are the Concept of Multiple SuperTrends (as the Blocks) with Dynamic Step's. And Use an Elliott Wave-like Pattern analysis...


Elliott's Quadratic Momentum - Strategy [presentTrading]

Code: Select all

//@version=5
//@presenttrading

//the Elliott's Quadratic Momentum (EQM) strategy stands out as a sophisticated tool for traders. This strategy, unlike traditional methods, 
// combines Elliott Wave theory with advanced SuperTrend indicators. 
// Its unique approach lies in utilizing quadratic momentum calculations, offering a more nuanced and dynamic analysis of market trends.

strategy("Elliott's Quadratic Momentum - Strategy [presentTrading]",shorttitle = "EQM Strategy [presentTrading]", overlay=true, precision=3, default_qty_type=strategy.cash, 
 commission_value= 0.1, commission_type=strategy.commission.percent, slippage= 1, 
  currency=currency.USD, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, initial_capital= 10000)

// Inputs for selecting trading direction
tradingDirection = input.string("Both", "Select Trading Direction", options=["Long", "Short", "Both"])


// SuperTrend Function
supertrend(src, atrLength, multiplier) =>
    atr = ta.atr(atrLength)
    up = hl2 - (multiplier * atr)
    dn = hl2 + (multiplier * atr)
    trend = 1
    trend := nz(trend[1], 1)
    up := src > nz(up[1], 0) and src[1] > nz(up[1], 0) ?   math.max(up, nz(up[1], 0)) : up
    dn := src < nz(dn[1], 0) and src[1] < nz(dn[1], 0) ? math.min(dn, nz(dn[1], 0)) : dn
    trend := src > nz(dn[1], 0) ?  1 : src < nz(up[1], 0)? -1 : nz(trend[1], 1)
    [up, dn, trend]

// Inputs for SuperTrend settings
atrLength1 = input(7, title="ATR Length for SuperTrend 1")
multiplier1 = input(4.0, title="Multiplier for SuperTrend 1")
atrLength2 = input(14, title="ATR Length for SuperTrend 2")
multiplier2 = input(3.618, title="Multiplier for SuperTrend 2")
atrLength3 = input(21, title="ATR Length for SuperTrend 3")
multiplier3 = input(3.5, title="Multiplier for SuperTrend 3")
atrLength4 = input(28, title="ATR Length for SuperTrend 3")
multiplier4 = input(3.382, title="Multiplier for SuperTrend 3")

// Calculate SuperTrend
[up1, dn1, trend1] = supertrend(close, atrLength1, multiplier1)
[up2, dn2, trend2] = supertrend(close, atrLength2, multiplier2)
[up3, dn3, trend3] = supertrend(close, atrLength3, multiplier3)
[up4, dn4, trend4] = supertrend(close, atrLength4, multiplier4)


// Entry Conditions based on SuperTrend and Elliott Wave-like patterns
longCondition = trend1 == 1 and trend2 == 1 and trend3 == 1 and trend4 == 1
shortCondition = trend1 == -1 and trend2 == -1 and trend3 == -1 and trend4 == - 1


// Exit conditions - Define your own exit strategy
// Example: Exit when any SuperTrend flips
LongExit =  trend1 != trend1[1] or trend2 != trend2[1] or trend3 != trend3[1] or trend4 != trend4[1] 
ShortExit = trend1 != trend1[1] or trend2 != trend2[1] or trend3 != trend3[1] or trend4 != trend4[1] 

if tradingDirection == "Long" or tradingDirection == "Both"
    if longCondition
        strategy.entry("Long Entry", strategy.long)
    if LongExit
        strategy.close("Long Entry")

if tradingDirection == "Short" or tradingDirection == "Both"
    if shortCondition
        strategy.entry("Short Entry", strategy.short)
    if ShortExit
        strategy.close("Short Entry")

// Define entry alert conditions
alertcondition(longCondition, title="Long Entry Alert", message="Long Entry Condition Met")
alertcondition(shortCondition, title="Short Entry Alert", message="Short Entry Condition Met")

// Define exit alert conditions
alertcondition(LongExit, title="Long Exit Alert", message="Long Exit Condition Met")
alertcondition(ShortExit, title="Short Exit Alert", message="Short Exit Condition Met")

// Plotting
// Function to apply gradient effect
gradientColor(baseColor, length, currentBar) =>
    var color res = color.new(baseColor, 100)
    if currentBar <= length
        res := color.new(baseColor, int(100 * currentBar / length))
    res

// Apply gradient effect
color1 = gradientColor(color.blue, atrLength1, bar_index % atrLength1)
color4 = gradientColor(color.blue, atrLength4, bar_index % atrLength3)


// Plot SuperTrend with gradient for upward trend
plot1Up = plot(trend1 == 1 ? up1 : na, color=color1, linewidth=1, title="SuperTrend 1 Up")
plot4Up = plot(trend4 == 1 ? up4 : na, color=color4, linewidth=1, title="SuperTrend 3 Up")

// Plot SuperTrend with gradient for downward trend
plot1Down = plot(trend1 == -1 ? dn1 : na, color=color1, linewidth=1, title="SuperTrend 1 Down")
plot4Down = plot(trend4 == -1 ? dn4 : na, color=color4, linewidth=1, title="SuperTrend 3 Down")

// Filling the area between the first and third SuperTrend lines for upward trend
fill(plot1Up, plot4Up, color=color.new(color.green, 80), title="SuperTrend Upward Band")

// Filling the area between the first and third SuperTrend lines for downward trend
fill(plot1Down, plot4Down, color=color.new(color.red, 80), title="SuperTrend Downward Band")


The Result is 'Very Good' and made it the Profit in Trading.


Explaint in :
https://en.tradingview.com/script/warXb ... entTrading
Always looking the GREAT, never left GOOD Point...

Re: TradingView Indicators to MT4 Indicators

687
Tsar wrote: Thu Jan 08, 2026 11:03 am Dear mrtools, kvak, Banzai, Pelle or Other Coders.
Need your Help convert this TV Script indicator;s to MT4 please... 🙏

There is very Interesting of the New Concept & inspired by presentTrading :
There are the Concept of Multiple SuperTrends (as the Blocks) with Dynamic Step's. And Use an Elliott Wave-like Pattern analysis...


Elliott's Quadratic Momentum - Strategy [presentTrading]



Active Strategy.jpg
The Result is 'Very Good' and made it the Profit in Trading.


Explaint in :
https://en.tradingview.com/script/warXb ... entTrading

To make it more 'SIMPLE' to Convert to MT4 Indicator :

NO NEED to Convert MT4 indicator
- Trades on chart
-- Signal labels
--- Quantity



And the Indicator will see in the Chart's like 👇



Thank's before for your Attention :)
These users thanked the author Tsar for the post (total 2):
ashdays, talaate
Always looking the GREAT, never left GOOD Point...

Re: TradingView Indicators to MT4 Indicators

688
Tsar wrote: Thu Jan 08, 2026 11:21 am To make it more 'SIMPLE' to Convert to MT4 Indicator :

NO NEED to Convert MT4 indicator
- Trades on chart
-- Signal labels
--- Quantity

Elliott's Quadratic Momentum - Strategy (Setting).jpg




And the Indicator will see in the Chart's like 👇


Elliott's Quadratic Momentum - Strategy (M15).jpg


Elliott's Quadratic Momentum - Strategy (H1 Chart).jpg


Elliott's Quadratic Momentum - Strategy (H4 Chart).jpg



Thank's before for your Attention :)

I have tried Convert that PineScript use CONVERTER...
And Compile with MetaEditor MT4's. It Successful and NOT Found an ERROR.

Code: Select all

//+------------------------------------------------------------------+
//|                      Elliott's Quadratic Momentum - Strategy.mq4 |
//|                                         Copyright presentTrading |
//|                                      https://www.tradingview.com |
//+------------------------------------------------------------------+
#property copyright   "presentTrading"
#property link        "https://www.tradingview.com/script/warXbPtA-Elliott-s-Quadratic-Momentum-Strategy-presentTrading/"
#property description "Elliott's Quadratic Momentum - Strategy"
#property strict
#property indicator_buffers 0

input int bars_limit = 100000; // Bars limit

string IndicatorObjPrefix;

bool NamesCollision(const string name)
{
   for (int k = ObjectsTotal(); k >= 0; k--)
   {
      if (StringFind(ObjectName(0, k), name) == 0)
      {
         return true;
      }
   }
   return false;
}

string GenerateIndicatorPrefix(string target)
{
   if (StringLen(target) > 20)
   {
      target = StringSubstr(target, 0, 20);
   }
   for (int i = 0; i < 1000; ++i)
   {
      string prefix = target + "_" + IntegerToString(i);
      if (!NamesCollision(prefix))
      {
         return prefix;
      }
   }
   return target;
}

int init()
{
   IndicatorBuffers(0);
   return INIT_SUCCEEDED;
}

int deinit()
{
   ObjectsDeleteAll(ChartID(), IndicatorObjPrefix);
   return 0;
}

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[])
{
   if (prev_calculated <= 0 || prev_calculated > rates_total)
   {
   }
   bool timeSeries = ArrayGetAsSeries(time);
   bool openSeries = ArrayGetAsSeries(open);
   bool highSeries = ArrayGetAsSeries(high);
   bool lowSeries = ArrayGetAsSeries(low);
   bool closeSeries = ArrayGetAsSeries(close);
   bool tickVolumeSeries = ArrayGetAsSeries(tick_volume);
   ArraySetAsSeries(time, true);
   ArraySetAsSeries(open, true);
   ArraySetAsSeries(high, true);
   ArraySetAsSeries(low, true);
   ArraySetAsSeries(close, true);
   ArraySetAsSeries(tick_volume, true);

   int toSkip = 0;
   for (int pos = MathMin(bars_limit, rates_total - 1 - MathMax(prev_calculated - 1, toSkip)); pos >= 0 && !IsStopped(); --pos)
   {
   }

   ArraySetAsSeries(time, timeSeries);
   ArraySetAsSeries(open, openSeries);
   ArraySetAsSeries(high, highSeries);
   ArraySetAsSeries(low, lowSeries);
   ArraySetAsSeries(close, closeSeries);
   ArraySetAsSeries(tick_volume, tickVolumeSeries);
   return rates_total;
}


But when Installed to MT4 Terminal... NOTHING see anything :Rofl:
This is a Strange ! :razz:

HELP HELP HELP me please :hug:
These users thanked the author Tsar for the post:
Abdi
Always looking the GREAT, never left GOOD Point...

Re: TradingView Indicators to MT4 Indicators

689
Tsar wrote: Tue Jan 13, 2026 11:16 pm I have tried Convert that PineScript use CONVERTER...
And Compile with MetaEditor MT4's. It Successful and NOT Found an ERROR.
Try this one Tsar. Just a tipp, sometimes when the ai makes the same mistake over and over again, open a new chat and start fresh. Request, the ai to analyse the code and why its not working ect. Also make sure your requests are as clear and logical as possible, for the best results.

Ps: Redownload if downloaded, there was a error with the arrows.