Spécifications

Attached to this post is the pinescript tradingview indicator code, i will also attach a link to the youtube explanatory video of how the indicator works on tradingview, i will like the exact thing on mt5, including the percentage prediction on each bar and the win loss counter ... it should work on both forex, stock and volatility indices on mt5


https://youtu.be/30FLWyEWroM?si=q9GpvJVHp-oyvsvZ// This work is licensed under a Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) https://creativecommons.org/licenses/by-nc-sa/4.0/
// © Zeiierman

//@version=5
indicator("Breakout Probability (Expo)",overlay=true,max_bars_back=5000)

// ~~ Tooltips {
t1 = "The space between the levels can be adjusted with a percentage step. 1% means that each level is located 1% above/under the previous one."
t2 = "Set the number of levels you want to display."
t3 = "If a level got 0 % likelihood of being hit, the level is not displayed as default. Enable the option if you want to see all levels regardless of their values."
t4 = "Enable this option if you want to display the backtest statistics for that a new high or low is made."
string [] tbl_tips = array.from("Number of times price has reached the first highest percentage level",
 "Number of times price failed to reach the first highest percentage level",
 "Win/Loss ratio")
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

// ~~ Inputs {
perc                    = input.float(1.0,title="Percentage Step",step=.1,minval=0,group="Settings",tooltip=t1)
nbr                     = input.int(5, title="Number of Lines",maxval=5,minval=1,group="Settings",tooltip=t2)
upCol                   = input.color(color.new(color.green,0),title="",inline="col"),dnCol=input.color(color.new(color.red,0),title="",inline="col"),fill=input.bool(true,title="BG Color",inline="col")
var bool [] bools       = array.from(input.bool(true,title="Disable 0.00%",group="Settings",tooltip=t3),input.bool(true, title="Show Statistic Panel",group="Settings",tooltip=t4))
var bool [] alert_bool  = array.from(
 input.bool(true,title="Ticker ID",group="Any alert() function call"),
 input.bool(true,title="High/Low Price",group="Any alert() function call"),
 input.bool(true,title="Bullish/Bearish Bias",group="Any alert() function call"),
 input.bool(true,title="Bullish/Bearish Percentage",group="Any alert() function call"))
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

// ~~ Variables {
b = bar_index
o = open
h = high
l = low
c = close
step = c*(perc/100)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

// ~~ Save Values In Matrix {
var total  = matrix.new<int>(7,4,0)
var vals   = matrix.new<float>(5,4,0.0)
var lines  = matrix.new<line>(1,10,line(na))
var labels = matrix.new<label>(1,10,label(na))
var tbl    = matrix.new<table>(1,1,table.new(position.top_right,2,3,
 frame_color=color.new(color.gray,50),frame_width=3,
 border_color=chart.bg_color,border_width=-2))
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

// ~~ Save Number Of Green & Red Candles {
green = c[1]>o[1]
red   = c[1]<o[1]
if green
    prev = matrix.get(total,5,0)
    matrix.set(total,5,0,prev+1)
if red
    prev = matrix.get(total,5,1)
    matrix.set(total,5,1,prev+1)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

// ~~ Functions {
//Lines
CreateLine(p,i,c)=>
    prevLine = matrix.get(lines,0,i)
    line.delete(prevLine)
    li = line.new(b[1],p,b,p,color=c,width=2)
    matrix.set(lines,0,i,li)
//Labels
CreateLabel(p,i,c,r,v)=>
    prevLabel = matrix.get(labels,0,i)
    label.delete(prevLabel)
    la = label.new(b+1,p,text=str.tostring(matrix.get(vals,r,v),format.percent),
     style=label.style_label_left,color=color.new(color.black,100),textcolor=c)
    matrix.set(labels,0,i,la)
//Score Calculation
Score(x,i)=>
    ghh = matrix.get(total,i,0)
    gll = matrix.get(total,i,1)
    rhh = matrix.get(total,i,2)
    rll = matrix.get(total,i,3)
    gtotal = matrix.get(total,5,0)
    rtotal = matrix.get(total,5,1)
    hh = h>=h[1] + x
    ll = l<=l[1] - x
    if green and hh
        matrix.set(total,i,0,ghh+1)
        matrix.set(vals,i,0,math.round(((ghh+1)/gtotal)*100,2))
    if green and ll
        matrix.set(total,i,1,gll+1)
        matrix.set(vals,i,1,math.round(((gll+1)/gtotal)*100,2))
    if red and hh
        matrix.set(total,i,2,rhh+1)
        matrix.set(vals,i,2,math.round(((rhh+1)/rtotal)*100,2))
    if red and ll
        matrix.set(total,i,3,rll+1)
        matrix.set(vals,i,3,math.round(((rll+1)/rtotal)*100,2))
//Backtest
Backtest(v)=>
    p1 = matrix.get(total,6,0)
    p2 = matrix.get(total,6,1)
    if v==h[1]
        if h>=v
            matrix.set(total,6,0,p1+1)
        else
            matrix.set(total,6,1,p2+1)
    else
        if l<=v
            matrix.set(total,6,0,p1+1)
        else 
            matrix.set(total,6,1,p2+1)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

// ~~ Code {
//Run Score Function
Score(0,0)
Score(step,1)
Score(step*2,2)
Score(step*3,3)
Score(step*4,4)

//Fetch Score Values
a1 = matrix.get(vals,0,0)
b1 = matrix.get(vals,0,1)
a2 = matrix.get(vals,0,2)
b2 = matrix.get(vals,0,3)

//Lines & Labels & Alerts
for i=0 to nbr-1
    hide = array.get(bools,0)
    if not hide or (hide and (green?math.min(matrix.get(vals,i,0),
     matrix.get(vals,i,1))>0:
     math.min(matrix.get(vals,i,2),
     matrix.get(vals,i,3))>0))
        hi = h[1]+(step*i)
        lo = l[1]-(step*i)
        //Plot Lines
        CreateLine(hi,i,upCol)
        CreateLine(lo,5+i,dnCol)
        //Plot Labels
        if green
            CreateLabel(hi,i,upCol,i,0)
            CreateLabel(lo,5+i,dnCol,i,1)
        else 
            CreateLabel(hi,i,upCol,i,2)
            CreateLabel(lo,5+i,dnCol,i,3)
        //Create Alert
        if array.includes(alert_bool, true)
            s1 = str.tostring(syminfo.ticker)
            s2 = "High Price: "+str.tostring(math.round_to_mintick(h[1]))+
             " | Low Price: "+str.tostring(math.round_to_mintick(l[1]))
            s3 = green?(math.max(a1,b1)==a1?"BULLISH":"BEARISH"):
             (math.max(a2,b2)==a2?"BULLISH":"BEARISH")
            s4 = green?(math.max(a1,b1)==a1?a1:b1):(math.min(a2,b2)==a2?a2:b2)
            s5 = red  ?(math.max(a2,b2)==a2?a2:b2):(math.min(a1,b1)==a1?a1:b1)
            string [] str_vals = array.from(s1,s2,"BIAS: "+s3,
             "Percentage: High: "+str.tostring(s4,format.percent)
             +" | Low: "+str.tostring(s5,format.percent))
            output = array.new_string()
            for x=0 to array.size(alert_bool)-1
                if array.get(alert_bool,x)
                    array.push(output,array.get(str_vals,x))
            //Alert Is Triggered On Every Bar Open With Bias And Percentage Ratio
            alert(array.join(output,'\n'),alert.freq_once_per_bar)
    else
        //Delete Old Lines & Labels
        line.delete(matrix.get(lines,0,i))
        line.delete(matrix.get(lines,0,5+i))
        label.delete(matrix.get(labels,0,i))
        label.delete(matrix.get(labels,0,5+i))

//Run Backtest Function
Backtest(green?(math.max(a1,b1)==a1?h[1]:l[1]):(math.max(a2,b2)==a2?h[1]:l[1]))
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

// ~~ Linefill {
if fill
    var filler = linefill(na)
    for i=0 to 8
        get = matrix.get(lines,0,i)
        get1= matrix.get(lines,0,i+1)
        col = i>4?color.new(dnCol,80) : i==4?color.new(color.gray,100) : color.new(upCol,80)
        filler := linefill.new(get,get1,color=col)
        linefill.delete(filler[1])
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

// ~~ Table {
if barstate.islast and array.get(bools,1)
    //Calulate WinRatio
    W  = matrix.get(total,6,0)
    L  = matrix.get(total,6,1)
    WR = math.round(W/(W+L)*100,2)
    string [] tbl_vals = array.from("WIN: "+str.tostring(W),
     "LOSS: "+str.tostring(L),
     "Profitability: "+str.tostring(WR,format.percent))
    color [] tbl_col = array.from(color.green,color.red,chart.fg_color)
    for i=0 to 2
        table.cell(matrix.get(tbl,0,0),0,i,array.get(tbl_vals,i),
         text_halign=text.align_center,bgcolor=chart.bg_color,
         text_color=array.get(tbl_col,i),text_size=size.auto,
         tooltip=array.get(tbl_tips,i))
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}


Répondu

1
Développeur 1
Évaluation
(9)
Projets
19
16%
Arbitrage
3
67% / 0%
En retard
0
Gratuit
2
Développeur 2
Évaluation
(278)
Projets
373
72%
Arbitrage
19
32% / 47%
En retard
14
4%
Gratuit
Publié : 14 codes
3
Développeur 3
Évaluation
(10)
Projets
6
33%
Arbitrage
6
0% / 67%
En retard
1
17%
Travail
4
Développeur 4
Évaluation
(296)
Projets
475
40%
Arbitrage
105
40% / 24%
En retard
80
17%
Occupé
Publié : 2 codes
5
Développeur 5
Évaluation
(322)
Projets
499
67%
Arbitrage
5
40% / 0%
En retard
4
1%
Gratuit
Publié : 8 codes
6
Développeur 6
Évaluation
(70)
Projets
91
25%
Arbitrage
26
19% / 54%
En retard
25
27%
Gratuit
7
Développeur 7
Évaluation
(171)
Projets
195
42%
Arbitrage
13
8% / 54%
En retard
9
5%
Gratuit
Publié : 3 codes
Commandes similaires
Wealthy bot 50 - 200 USD
‎Build a mobile-based trading bot system integrated with MetaTrader 5 that specializes in high-frequency “machine gun” style trading on synthetic indices (crash 50 and Crash 300). ‎ ‎The bot must continuously scan the market in real-time using M1 and M5 timeframes and execute frequent trades based on probability, not prediction. Its core function is to detect early signs of potential reversals by analyzing combined
Preciso de um especialista completo, totalmente profissional, que trabalhe com o indicador Hull Moving Average. Que faça entradas exatamente na mudança de cores com base no Exp_ColorHma, de Nikolay e também com a opção de entrada exatamente no cruzamento de duas Hull Average Moving(não na próxima vela), uma lenta e outra rápida. O programador deverá fazer um trabalhado de profissional. Dispenso curiosos ou
Tebza ngwenya 30 - 100 USD
Just know your deal,if you don't know what you are up to I gotchu. This is my first time trying also so yeah, but otherwise if you looking for something grand I'm here, if you got offered me well you in for some great time
EA Script editor 30 - 35 USD
I need someone who will help me with a script that supports / cancels out negative positions. So that with a deposit of 600 euros, it doesn't close 300 euros. More info on pv
Pips Muncher 30 - 35 USD
I need a good programmer to creat an ea that will open a trade once the parametres i set are met on the chat that i place it on. The Ea will not need to do any analyses as i would do that manually. It only needs to execute a trade when all the conditions that i will be sending meets. The ea will add stop loss an Tp
Società di investimento con attività tra Sanremo e Monaco ricerca un giovane collaboratore con esperienza nell’utilizzo avanzato di MetaTrader 5. Si richiede la conoscenza della lingua ITALIANA e INGLESE. Il collaboratore si occuperà di: • eseguire backtest di strategie di trading su MT5 • effettuare ottimizzazioni parametri tramite Strategy Tester • analizzare risultati e robustezza delle strategie • eseguire
ubject: Urgent Code Fixes + 4K Dashboard + Optimal Gold Settings Dear Developer, I need you to fix the following critical issues in the EA code, add a professional 4K dashboard, and implement the optimal gold settings below. These are essential requirements for the EA to work properly and profitably. 🔴 PART 1: CRITICAL ISSUES (MUST BE FIXED) 1. Trailing Stop Not Working ❌ The trailing stop does not move at all
have the Beatrix Inventor Expert Advisor (EA) that was profitable in the past but has been losing money recently. I need an experienced EA developer/optimizer to study the trade history (especially Stop Loss hits, drawdown periods, SL/TP behavior, win/loss ratio, etc.) and recommend + implement specific tweaks so it becomes consistently profitable again. Your job: 1. Deep analysis of why the EA is no longer
Project: Ready MT5 Multi-Symbol Expert Advisor (No Grid/Martingale) Platform: MetaTrader 5 (MQL5) Type: Fully automated Expert Advisor (EA) Strict mandatory requirements: - Absolutely NO grid trading in any form - Absolutely NO martingale (no lot multiplication on losses, no averaging, no anti-martingale if risky) - No other high-risk money management (e.g., no unnecessary hedging or aggressive entries) - At least 1
want to develop a trading robot (EA) for MetaTrader 5 based on 10 specific rules. The robot should include a professional interface to control all settings, including: Fixed lot size (0.50), Stop Loss (10 USD), RSI indicators for entry/exit, News filter, Trailing stop, and daily profit targets. I have the full logic ready to discuss with the developer. Please ensure high-quality code and testing

Informations sur le projet

Budget
30+ USD
Délais
à 2 jour(s)