Convert trading view indicator into mt5 indicator

Spezifikation

I am looking for someone to convert( Or sell me) trading view indicator to mt5 and have the same, dunctionality with the source code.

the indicator is " Market Structure Break & Order Block by EmreKb", 

to have the same functionalities in mt5.

You can either convert the pine script to mql5 or create a new from scratch.

pine script code are below.


// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/

// © EmreKb


//@version=5

indicator("Market Structure Break & Order Block", "MSB-OB", overlay=true, max_lines_count=500, max_bars_back=4900, max_boxes_count=500)


settings = "Settings"

zigzag_len = input.int(9, "ZigZag Length", group=settings)

show_zigzag = input.bool(true, "Show Zigzag", group=settings)

fib_factor = input.float(0.33, "Fib Factor for breakout confirmation", 0, 1, 0.01, group=settings)


text_size = input.string(size.tiny, "Text Size", [size.tiny, size.small, size.normal, size.large, size.huge], group=settings)


delete_boxes = input.bool(true, "Delete Old/Broken Boxes", group=settings)


bu_ob_inline_color = "Bu-OB Colors"

be_ob_inline_color = "Be-OB Colors"

bu_bb_inline_color = "Bu-BB Colors"

be_bb_inline_color = "Be-BB Colors"


bu_ob_display_settings = "Bu-OB Display Settings"

bu_ob_color = input.color(color.new(color.green, 70), "Color", group=bu_ob_display_settings, inline=bu_ob_inline_color)

bu_ob_border_color = input.color(color.green, "Border Color", group=bu_ob_display_settings, inline=bu_ob_inline_color)

bu_ob_text_color = input.color(color.green, "Text Color", group=bu_ob_display_settings, inline=bu_ob_inline_color)


be_ob_display_settings = "Be-OB Display Settings"

be_ob_color = input.color(color.new(color.red, 70), "Color", group=be_ob_display_settings, inline=be_ob_inline_color)

be_ob_border_color = input.color(color.red, "Border Color", group=be_ob_display_settings, inline=be_ob_inline_color)

be_ob_text_color = input.color(color.red, "Text Color", group=be_ob_display_settings, inline=be_ob_inline_color)


bu_bb_display_settings = "Bu-BB & Bu-MB Display Settings"

bu_bb_color = input.color(color.new(color.green, 70), "Color", group=bu_bb_display_settings, inline=bu_bb_inline_color)

bu_bb_border_color = input.color(color.green, "Border Color", group=bu_bb_display_settings, inline=bu_bb_inline_color)

bu_bb_text_color = input.color(color.green, "Text Color", group=bu_bb_display_settings, inline=bu_bb_inline_color)


be_bb_display_settings = "Be-BB & Be-MB Display Settings"

be_bb_color = input.color(color.new(color.red, 70), "Color", group=be_bb_display_settings, inline=be_bb_inline_color)

be_bb_border_color = input.color(color.red, "Border Color", group=be_bb_display_settings, inline=be_bb_inline_color)

be_bb_text_color = input.color(color.red, "Text Color", group=be_bb_display_settings, inline=be_bb_inline_color)



var float[] high_points_arr = array.new_float(5)

var int[] high_index_arr = array.new_int(5)

var float[] low_points_arr = array.new_float(5)

var int[] low_index_arr = array.new_int(5)


var box[] bu_ob_boxes = array.new_box(5)

var box[] be_ob_boxes = array.new_box(5)

var box[] bu_bb_boxes = array.new_box(5)

var box[] be_bb_boxes = array.new_box(5)


to_up = high >= ta.highest(zigzag_len)

to_down = low <= ta.lowest(zigzag_len)


trend = 1

trend := nz(trend[1], 1)

trend := trend == 1 and to_down ? -1 : trend == -1 and to_up ? 1 : trend


last_trend_up_since = ta.barssince(to_up[1])

low_val = ta.lowest(nz(last_trend_up_since > 0 ? last_trend_up_since : 1, 1))

low_index = bar_index - ta.barssince(low_val == low)


last_trend_down_since = ta.barssince(to_down[1])

high_val = ta.highest(nz(last_trend_down_since > 0 ? last_trend_down_since : 1, 1))

high_index = bar_index - ta.barssince(high_val == high)


if ta.change(trend) != 0

    if trend == 1

        array.push(low_points_arr, low_val)

        array.push(low_index_arr, low_index)

    if trend == -1

        array.push(high_points_arr, high_val)

        array.push(high_index_arr, high_index)



f_get_high(ind) =>

    [array.get(high_points_arr, array.size(high_points_arr) - 1 - ind), array.get(high_index_arr, array.size(high_index_arr) - 1 - ind)]



f_get_low(ind) =>

    [array.get(low_points_arr, array.size(low_points_arr) - 1 - ind), array.get(low_index_arr, array.size(low_index_arr) - 1 - ind)]



f_delete_box(box_arr) =>

    if delete_boxes

        box.delete(array.shift(box_arr))

    else

        array.shift(box_arr)

    0



[h0, h0i] = f_get_high(0)

[h1, h1i] = f_get_high(1)


[l0, l0i] = f_get_low(0)

[l1, l1i] = f_get_low(1)


if ta.change(trend) != 0 and show_zigzag

    if trend == 1

        line.new(h0i, h0, l0i, l0)

    if trend == -1

        line.new(l0i, l0, h0i, h0)


market = 1

market := nz(market[1], 1)

// market := market == 1 and close < l0 and low < l0 - math.abs(h0 - l0) * fib_factor ? -1 : market == -1 and close > h0 and high > h0 + math.abs(h0 - l0) * fib_factor ? 1 : market

last_l0 = ta.valuewhen(ta.change(market) != 0, l0, 0)

last_h0 = ta.valuewhen(ta.change(market) != 0, h0, 0)

market := last_l0 == l0 or last_h0 == h0 ? market : market == 1 and l0 < l1 and l0 < l1 - math.abs(h0 - l1) * fib_factor ? -1 : market == -1 and h0 > h1 and h0 > h1 + math.abs(h1 - l0) * fib_factor ? 1 : market


bu_ob_index = bar_index

bu_ob_index := nz(bu_ob_index[1], bar_index)

for i=h1i to l0i[zigzag_len]

    index = bar_index - i 

    if open[index] > close[index]

        bu_ob_index := bar_index[index]


bu_ob_since = bar_index - bu_ob_index


be_ob_index = bar_index

be_ob_index := nz(be_ob_index[1], bar_index)

for i=l1i to h0i[zigzag_len]

    index = bar_index - i 

    if open[index] < close[index]

        be_ob_index := bar_index[index]


be_ob_since = bar_index - be_ob_index


be_bb_index = bar_index

be_bb_index := nz(be_bb_index[1], bar_index)

for i=h1i - zigzag_len to l1i

    index = bar_index - i

    if open[index] > close[index]

        be_bb_index := bar_index[index]


be_bb_since = bar_index - be_bb_index


bu_bb_index = bar_index

bu_bb_index := nz(bu_bb_index[1], bar_index)

for i=l1i - zigzag_len to h1i

    index = bar_index - i

    if open[index] < close[index]

        bu_bb_index := bar_index[index]


bu_bb_since = bar_index - bu_bb_index


if ta.change(market) != 0

    if market == 1

        line.new(h1i, h1, h0i, h1, color=color.green, width=2)

        label.new(int(math.avg(h1i, l0i)), h1, "MSB", color=color.new(color.black, 100), style=label.style_label_down, textcolor=color.green, size=size.small)

        bu_ob = box.new(bu_ob_index, high[bu_ob_since], bar_index + 10, low[bu_ob_since], bgcolor=bu_ob_color, border_color=bu_ob_border_color, text="Bu-OB", text_color=bu_ob_text_color, text_halign=text.align_right, text_size=text_size)

        bu_bb = box.new(bu_bb_index, high[bu_bb_since], bar_index + 10, low[bu_bb_since], bgcolor=bu_bb_color, border_color=bu_bb_border_color, text=l0 < l1 ? "Bu-BB" : "Bu-MB", text_color=bu_bb_text_color, text_halign=text.align_right, text_size=text_size)

        array.push(bu_ob_boxes, bu_ob)

        array.push(bu_bb_boxes, bu_bb)

    if market == -1

        line.new(l1i, l1, l0i, l1, color=color.red, width=2)

        label.new(int(math.avg(l1i, h0i)), l1, "MSB", color=color.new(color.black, 100), style=label.style_label_up, textcolor=color.red, size=size.small)

        be_ob = box.new(be_ob_index, high[be_ob_since], bar_index + 10, low[be_ob_since], bgcolor=be_ob_color, border_color=be_ob_border_color, text="Be-OB", text_color=be_ob_text_color, text_halign=text.align_right, text_size=text_size)

        be_bb = box.new(be_bb_index, high[be_bb_since], bar_index + 10, low[be_bb_since], bgcolor=be_bb_color, border_color=be_bb_border_color, text=h0 > h1 ? "Be-BB" : "Be-MB", text_color=be_bb_text_color, text_halign=text.align_right, text_size=text_size)

        array.push(be_ob_boxes, be_ob)

        array.push(be_bb_boxes, be_bb)


for bull_ob in bu_ob_boxes

    bottom = box.get_bottom(bull_ob)

    top = box.get_top(bull_ob)

    if close < bottom

        f_delete_box(bu_ob_boxes)

    else if close < top

        alert("Price in the BU-OB zone")

    else

        box.set_right(bull_ob, bar_index + 10)

    

for bear_ob in be_ob_boxes

    top = box.get_top(bear_ob)

    bottom = box.get_bottom((bear_ob))

    if close > top

        f_delete_box(be_ob_boxes)

    if close > bottom

        alert("Price in the BE-OB zone")

    else

        box.set_right(bear_ob, bar_index + 10)

        

for bear_bb in be_bb_boxes

    top = box.get_top(bear_bb)

    bottom = box.get_bottom(bear_bb)

    if close > top

        f_delete_box(be_bb_boxes)

    else if close > bottom

        alert("Price in the BE-BB zone")

    else

        box.set_right(bear_bb, bar_index + 10)

        

for bull_bb in bu_bb_boxes

    bottom = box.get_bottom(bull_bb)

    top = box.get_top(bull_bb)

    if close < bottom

        f_delete_box(bu_bb_boxes)

    else if close < top

        alert("Price in the BU-BB zone")

    else

        box.set_right(bull_bb, bar_index + 10)



alertcondition(ta.change(market) != 0, "MSB", "MSB")


Dateien:

JPG
dgfgdg.JPG
103.7 Kb

Bewerbungen

1
Entwickler 1
Bewertung
(252)
Projekte
570
36%
Schlichtung
64
20% / 58%
Frist nicht eingehalten
147
26%
Frei
2
Entwickler 2
Bewertung
(505)
Projekte
759
63%
Schlichtung
33
27% / 45%
Frist nicht eingehalten
23
3%
Frei
3
Entwickler 3
Bewertung
(558)
Projekte
925
48%
Schlichtung
301
59% / 25%
Frist nicht eingehalten
123
13%
Beschäftigt
4
Entwickler 4
Bewertung
(7)
Projekte
12
25%
Schlichtung
1
100% / 0%
Frist nicht eingehalten
0
Frei
5
Entwickler 5
Bewertung
(2)
Projekte
4
0%
Schlichtung
0
Frist nicht eingehalten
0
Frei
Ähnliche Aufträge
THE DEVELOPER MUST NOT HAVE ANY PENDING JOBS TIME IS OF THE ESSENCE I ALREADY HAVE SORUCE CODE, ADD ENTRIES AND CONDITIONS TO CODE I NEED THIS DONE BY TODAY OR TOMORROW MORNING THE LATEST The MT5 EA will work simultaneously on multi pairs the broker has to offer. The opening procedure will begin as follows: In this example I will use a BUY order. The same for SELL order. When the EA is dragged/ double clicked/ added
Hey, im looking for a person who can create an my very own version of pineconnector, which should have all the option of pineconnector and it should be user-friendly without any complications
HI, I'm looking for an experienced person who can add buy/sell indications and Alerts on existing Pinescript along with little modification of the script and the script should connect to MT5 platform using pineconnector MT5 platform should excute trade instantly as based on the alerts/indications on tradingview script
Need to create ea to trade in indian market by placing orders to Indian market platform through API form mqlHere's a basic outline of what script should include: Define Heikin Ashi candle pattern: Convert regular candles to Heikin Ashi candles. Order Execution: Execute orders on the open of the second candle after the signal is generated. Buy Call: When a buy call is generated, initiate a call option order. Set
I want the trade to trigger anytime it sees the opportunity on all time frames, sl tp should be automated and all trades should be trigger anytime on cpi news and etc
I need someone to help me convert my tradingview pinescript to mt4, I only got $20 for this and I am gonna be giving you more works ahead, Also I will be paying with cryptocurrency cause my PayPal os not working here, Don't know why
I want an Indicator that : Draws vertical lines at the opening of candles on a time frames selected.( I want to be able change the candle timeframe the line will be drawn. Eg. I can slelect 1H, 4H etc from the settings, and the vertical line will be drawn at the opening). Draw a horizontal line at the opening of the candles in the selected timeframe. Calculate the average range of the candles on a selected timeframe
I want to lock my indicators and my EAs in the data folder with a password because i am going to give my pc to a trader , the real names of the indicators also should be changed or covered on the screen so no one should go and find them online
Trade Entry Rule : 1 . New Arrow Higher or Lower Appear : Entry . (Range/Period: {Input}) After Entry Trailing Stop Trails { Trail Step (Input) } 2 . Lot Size { Input } 3 . Take Profit { Input } 4 . Max Number of Trades { Input } 5 . Total Number of Trades per Entry { Input } ---------------------------------------------------------------------------- 6 . Spread Filter { Input }
Placing of order and opening up position. And management of trading position/orders, cancellation of orders and closing of position order lot calculation processing trading errors and environmental state signal lifetime what the programme cannot do for you

Projektdetails

Budget
30+ USD
Für die Entwickler
27 USD