Техническое задание
//@version=5indicator("Infinity and Sniper by Leo", overlay=true, precision=0, explicit_plot_zorder=true, max_labels_count=500)
// Get user inputemaEnergy = falsesensitivity = input.float(6, " Sensitivity (0.5 - 10)", 0.5, 10, step=0.1)keltner_length = 10atrPeriod = 10factor = 3.5
// Keltner Channel functionkeltner_channel(src, length) =>ma = ta.sma(src, length)rangec = high - lowupper = ma + rangeclower = ma - rangec[upper, lower]
// Modified Supertrend function using Keltner Channelsupertrend(_src, factor, atrLen, kel_length) =>[upperKeltner, lowerKeltner] = keltner_channel(_src, kel_length)rangec = upperKeltner - lowerKeltnerupperBand = _src + factor * rangeclowerBand = _src - factor * rangecprevLowerBand = nz(lowerBand[1])prevUpperBand = nz(upperBand[1])lowerBand := lowerBand > prevLowerBand or close[1] < prevLowerBand ? lowerBand : prevLowerBandupperBand := upperBand < prevUpperBand or close[1] > prevUpperBand ? upperBand : prevUpperBandint direction = nafloat superTrend = naprevSuperTrend = superTrend[1]
if na(rangec[1])direction := 1else if prevSuperTrend == prevUpperBanddirection := close > upperBand ? -1 : 1elsedirection := close < lowerBand ? 1 : -1superTrend := direction == -1 ? lowerBand : upperBand[superTrend, direction]
// Get Componentsema1 = ta.ema(high, 9)ema2 = ta.ema(high, 12)ema3 = ta.ema(high, 15)ema4 = ta.ema(high, 18)ema5 = ta.ema(high, 21)ema6 = ta.ema(high, 24)ema7 = ta.ema(high, 27)ema8 = ta.ema(high, 30)ema9 = ta.ema(high, 33)ema10 = ta.ema(high, 36)ema11 = ta.ema(high, 39)ema12 = ta.ema(high, 42)ema13 = ta.ema(high, 45)ema14 = ta.ema(high, 48)ema15 = ta.ema(high, 51)
// Colorsgreen = #2BBC4Dred = #C51D0B
emaEnergyColor(ma) =>if na(ma)color.gray // o cualquier otro color predeterminadoelseemaEnergy ? (close >= ma ? green : red) : na
// Plotsplot(ema3, "", emaEnergyColor(ema3), editable=false)plot(ema4, "", emaEnergyColor(ema4), editable=false)plot(ema5, "", emaEnergyColor(ema5), editable=false)plot(ema6, "", emaEnergyColor(ema6), editable=false)plot(ema7, "", emaEnergyColor(ema7), editable=false)plot(ema8, "", emaEnergyColor(ema8), editable=false)plot(ema9, "", emaEnergyColor(ema9), editable=false)plot(ema10, "", emaEnergyColor(ema10), editable=false)plot(ema11, "", emaEnergyColor(ema11), editable=false)plot(ema12, "", emaEnergyColor(ema12), editable=false)plot(ema13, "", emaEnergyColor(ema13), editable=false)plot(ema14, "", emaEnergyColor(ema14), editable=false)plot(ema15, "", emaEnergyColor(ema15), editable=false)
[supertrend, direction] = supertrend(close, sensitivity, 11, keltner_length)bull = ta.crossover(close, supertrend)bear = ta.crossunder(close, supertrend)
y1 = low - (ta.atr(30) * 2)y2 = high + (ta.atr(30) * 2)
// Braid Filter
//-- InputsmaType = input.string('McGinley', 'Filter', options=['EMA', 'DEMA', 'TEMA', 'WMA', 'VWMA', 'SMA', 'SMMA', 'HMA', 'LSMA', 'Kijun', 'McGinley', 'RMA'])Period1 = 3Period2 = 7Period3 = 20PipsMinSepPercent = input(60, 'Filter Strength')
//-- Moving Averagema(type, src, len) =>float result = 0if type == 'SMA' // Simpleresult := ta.sma(src, len)resultif type == 'EMA' // Exponentialresult := ta.ema(src, len)resultif type == 'DEMA' // Double Exponentiale = ta.ema(src, len)result := 2 * e - ta.ema(e, len)resultif type == 'TEMA' // Triple Exponentiale = ta.ema(src, len)result := 3 * (e - ta.ema(e, len)) + ta.ema(ta.ema(e, len), len)resultif type == 'WMA' // Weightedresult := ta.wma(src, len)resultif type == 'VWMA' // Volume Weightedresult := ta.vwma(src, len)resultif type == 'SMMA' // Smoothedw = ta.wma(src, len)result := na(w[1]) ? ta.sma(src, len) : (w[1] * (len - 1) + src) / lenresultif type == 'RMA'result := ta.rma(src, len)resultif type == 'HMA' // Hullresult := ta.wma(2 * ta.wma(src, len / 2) - ta.wma(src, len), math.round(math.sqrt(len)))resultif type == 'LSMA' // Least Squaresresult := ta.linreg(src, len, 0)resultif type == 'Kijun' //Kijun-senkijun = math.avg(ta.lowest(len), ta.highest(len))result := kijunresultif type == 'McGinley'mg = 0.0mg := na(mg[1]) ? ta.ema(src, len) : mg[1] + (src - mg[1]) / (len * math.pow(src / mg[1], 4))result := mgresultresult
//-- Braid Filterma01 = ma(maType, close, Period1)ma02 = ma(maType, open, Period2)ma03 = ma(maType, close, Period3)
max = math.max(math.max(ma01, ma02), ma03)min = math.min(math.min(ma01, ma02), ma03)dif = max - min
filter = ta.atr(14) * PipsMinSepPercent / 100
//-- PlotsBraidColor = ma01 > ma02 and dif > filter ? color.green : ma02 > ma01 and dif > filter ? color.red : color.gray
//plot(dif, 'Braid', BraidColor, 5, plot.style_columns)//plot(filter, 'Filter', color.new(color.blue, 0), 2, plot.style_line)//bgcolor(BraidColor, transp=90)
// Braid Filter Finish
buy = bull and ma01 > ma02 and dif > filter ? label.new(bar_index, y1, "BUY", xloc.bar_index, yloc.price, green, label.style_label_up, color.white, size.normal) : nasell = bear and ma02 > ma01 and dif > filter ? label.new(bar_index, y2, "SELL", xloc.bar_index, yloc.price, red, label.style_label_down, color.white, size.normal) : na
[supertrends, directions] = ta.supertrend(factor, atrPeriod)bodyMiddle = plot((open + close) / 2, display=display.none)// Trend Catcher Indicator (Example)ema100 = ta.ema(close, 10)ema200 = ta.ema(close, 20)trendCatcher = ta.crossover(ema100, ema200) ? 1 : ta.crossunder(ema100, ema200) ? -1 : 0trendColor = trendCatcher == 1 ? color.rgb(90, 23, 102) : nabarcolor(trendColor)// Colored candlesbarcolor(color = close > supertrends ? color.rgb(102, 255, 0) : color.rgb(255, 0, 0))
// Take Profit Script
colorsr = 'DARK'bullcolorr = colorsr == 'DARK' ? color.rgb(0, 255, 8) : #00DBFFbearcolorr = colorsr == 'DARK' ? color.rgb(255, 0, 0) : #E91E63
ShowTEX = input.bool(true, "Show Take Profit Signals")TE1 = trueTE2 = trueTE3 = true//TE4 = input(true, 'TE - 4' , group="Money Moves [Trend Exhaustion]" , inline = "TEX")
rsiLengthInput = 22rsiSourceInput = closemaTypeInput = ta.sma(close, 14)up66 = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)downw = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)rsi66 = downw == 0 ? 100 : up66 == 0 ? 0 : 100 - (100 / (1 + up66 / downw))rsiMA = maTypeInput
long1 = ta.crossover(rsi66, 30)long2 = ta.crossover(rsi66, 20)long3 = ta.crossover(rsi66, 15)//long4 = ta.crossover(rsi66, 10)
// SHORTshort1 = ta.crossunder(rsi66, 70)short2 = ta.crossunder(rsi66, 80)short3 = ta.crossunder(rsi66, 85)//short4 = ta.crossunder(rsi66, 90)
// LONGplotshape(long1 and ShowTEX and TE1, "GO LONG 1", style=shape.circle, location=location.belowbar,size=size.tiny, color = color.new(bullcolorr , 60) , text="Sell TP" , textcolor = bullcolorr , editable = false)plotshape(long2 and ShowTEX and TE2, "GO LONG 2", style=shape.circle, location=location.belowbar,size=size.tiny, color = color.new(bullcolorr , 50), text="Sell TP" , textcolor = bullcolorr , editable = false)plotshape(long3 and ShowTEX and TE3, "GO LONG 3", style=shape.circle, location=location.belowbar,size=size.tiny, color = color.new(bullcolorr , 10), text="Sell TP", textcolor = bullcolorr , editable = false)//plotshape(long4 and ShowTEX, "GO LONG 4", style=shape.circle, location=location.belowbar,size=size.tiny, color=color.gray, text="4")
// SHORTplotshape(short1 and ShowTEX and TE1, "GO SHORT 1", style=shape.circle, location=location.abovebar,size=size.tiny, color = color.new(bearcolorr , 60) , text="Buy TP" , textcolor = bearcolorr , editable = false)plotshape(short2 and ShowTEX and TE2, "GO SHORT 2", style=shape.circle, location=location.abovebar,size=size.tiny, color = color.new(bearcolorr , 50) , text="Buy TP" , textcolor = bearcolorr , editable = false)plotshape(short3 and ShowTEX and TE3, "GO SHORT 3", style=shape.circle, location=location.abovebar,size=size.tiny, color = color.new(bearcolorr , 10) , text="Buy TP" , textcolor = bearcolorr , editable = false)//plotshape(short4 and ShowTEX, "GO SHORT 4", style=shape.circle, location=location.abovebar,size=size.tiny, color=color.gray, text="4")
alertcondition(long1 or short1 , 'Trend Exhausted - 1', 'Trend Exhausted | Strength - 1 ')alertcondition(long2 or short2 , 'Trend Exhausted - 2', 'Trend Exhausted | Strength - 2 ')alertcondition(long3 or short3 , 'Trend Exhausted - 3', 'Trend Exhausted | Strength - 3 ')
// Peak Profit Script
import protradingart/pta_plot/6 as pp
pp.peakprofit(bull and ma01 > ma02 and dif > filter, bear and ma02 > ma01 and dif > filter)
//------------------------------------------------------------------------------// === Nas Infinity Algo ===//------------------------------------------------------------------------------
Periods = 40src = hl2Multiplier = input.float(title='Sensitivity', step=0.1, defval=7.2)changeATR = trueshowsignals = input(title='Show Buy/Sell Signals ?', defval=true)highlighting = input(title='Highlighter On/Off ?', defval=false)atr2 = ta.sma(ta.tr, Periods)atr = changeATR ? ta.atr(Periods) : atr2up = src - Multiplier * atrup1 = nz(up[1], up)up := close[1] > up1 ? math.max(up, up1) : updn = src + Multiplier * atrdn1 = nz(dn[1], dn)dn := close[1] < dn1 ? math.min(dn, dn1) : dntrend = 1trend := nz(trend[1], trend)trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trendupPlot = plot(trend == 1 ? up : na, title='Up Trend', style=plot.style_linebr, linewidth=2, color=highlighting == true ? #4caf50 : #ffffff00)buySignal = trend == 1 and trend[1] == -1plotshape(buySignal and showsignals ? up : na, title='Buy', text='Buy', location=location.absolute, style=shape.labelup, size=size.normal, color=#4caf50, textcolor=color.new(color.white, 0))dnPlot = plot(trend == 1 ? na : dn, title='Down Trend', style=plot.style_linebr, linewidth=2, color= highlighting == true ? #ff5252 : #ffffff00)sellSignal = trend == -1 and trend[1] == 1plotshape(sellSignal and showsignals ? dn : na, title='Sell', text='Sell', location=location.absolute, style=shape.labeldown, size=size.normal, color=color.new(color.red, 0), textcolor=color.new(color.white, 0))mPlot = plot(ohlc4, title='', style=plot.style_circles, linewidth=0)longFillColor = highlighting ? trend == 1 ? #4caf4f0b : #ffffff00 : #ffffff00shortFillColor = highlighting ? trend == -1 ? #ff52520e : #ffffff00 : #ffffff00fill(mPlot, upPlot, title='UpTrend Highligter', color=longFillColor, transp=90)fill(mPlot, dnPlot, title='DownTrend Highligter', color=shortFillColor, transp=90)alertcondition(buySignal, title='SuperTrend Buy', message='SuperTrend Buy!')alertcondition(sellSignal, title='SuperTrend Sell', message='SuperTrend Sell!')changeCond = trend != trend[1]alertcondition(changeCond, title='SuperTrend Direction Change', message='SuperTrend has changed direction!')
// Bar Colorsvar color barColor = naif (sellSignal)barColor := color.redelse if (buySignal)barColor := color.greenelsebarColor := barColor[1]
barcolor(barColor)//------------------------------------------------------------------------------// === OPTIMUM SNIPER V.1 ===//------------------------------------------------------------------------------
//Get user settingsshowBuySell = input(true, "Show Buy & Sell", group="BUY & SELL SIGNALS")sensitivity1 = input.float(3, "Sensitivity (1-6)", 1, 6, group="BUY & SELL SIGNALS")percentStop = input.float(1, "Stop Loss % (0 to Disable)", 0, group="BUY & SELL SIGNALS")offsetSignal = input.float(5, "Signals Offset", 0, group="BUY & SELL SIGNALS")showRibbon = input(false, "Show Trend Ribbon", group="TREND RIBBON")smooth1 = input.int(5, "Smoothing 1", 1, group="TREND RIBBON")smooth2 = input.int(8, "Smoothing 2", 1, group="TREND RIBBON")showReversal = input(false, "Show Reversals", group="REVERSAL SIGNALS")showPdHlc = input(false, "Show P.D H/L/C", group="PREVIOUS DAY HIGH LOW CLOSE")lineColor = input.color(color.yellow, "Line Colors", group="PREVIOUS DAY HIGH LOW CLOSE")lineWidth = input.int(1, "Width Lines", group="PREVIOUS DAY HIGH LOW CLOSE")lineStyle = input.string("Solid", "Line Style", ["Solid", "Dashed", "Dotted"])labelSize = input.string("normal", "Label Text Size", ["small", "normal", "large"])labelColor = input.color(color.yellow, "Label Text Colors")showEmas = input(false, "Show EMAs", group="EMA")srcEma1 = input(close, "Source EMA 1")lenEma1 = input.int(7, "Length EMA 1", 1)srcEma2 = input(close, "Source EMA 2")lenEma2 = input.int(21, "Length EMA 2", 1)srcEma3 = input(close, "Source EMA 3")lenEma3 = input.int(144, "Length EMA 3", 1)showSwing = input(false, "Show Swing Points", group="SWING POINTS")prdSwing = input.int(10, "Swing Point Period", 2, group="SWING POINTS")colorPos = input(color.new(color.green, 50), "Positive Swing Color")colorNeg = input(color.new(color.red, 50), "Negative Swing Color")showDashboard = input(false, "Show Dashboard", group="TREND DASHBOARD")locationDashboard = input.string("Middle Right", "Table Location", ["Top Right", "Middle Right", "Bottom Right", "Top Center", "Middle Center", "Bottom Center", "Top Left", "Middle Left", "Bottom Left"], group="TREND DASHBOARD")tableTextColor = input(color.white, "Table Text Color", group="TREND DASHBOARD")tableBgColor = input(#2A2A2A, "Table Background Color", group="TREND DASHBOARD")sizeDashboard = input.string("Normal", "Table Size", ["Large", "Normal", "Small", "Tiny"], group="TREND DASHBOARD")showRevBands = input.bool(false, "Show Reversal Bands", group="REVERSAL BANDS")lenRevBands = input.int(30, "Length", group="REVERSAL BANDS")// Functionssmoothrng(x, t, m) =>wper = t * 2 - 1avrng = ta.ema(math.abs(x - x[1]), t)smoothrng = ta.ema(avrng, wper) * mrngfilt(x, r) =>rngfilt = xrngfilt := x > nz(rngfilt[1]) ? x - r < nz(rngfilt[1]) ? nz(rngfilt[1]) : x - r : x + r > nz(rngfilt[1]) ? nz(rngfilt[1]) : x + rpercWidth(len, perc) => (ta.highest(len) - ta.lowest(len)) * perc / 100securityNoRep(sym, res, src) => request.security(sym, res, src, barmerge.gaps_off, barmerge.lookahead_on)swingPoints(prd) =>pivHi = ta.pivothigh(prd, prd)pivLo = ta.pivotlow (prd, prd)last_pivHi = ta.valuewhen(pivHi, pivHi, 1)last_pivLo = ta.valuewhen(pivLo, pivLo, 1)hh = pivHi and pivHi > last_pivHi ? pivHi : nalh = pivHi and pivHi < last_pivHi ? pivHi : nahl = pivLo and pivLo > last_pivLo ? pivLo : nall = pivLo and pivLo < last_pivLo ? pivLo : na[hh, lh, hl, ll]f_chartTfInMinutes() =>float _resInMinutes = timeframe.multiplier * (timeframe.isseconds ? 1 :timeframe.isminutes ? 1. :timeframe.isdaily ? 60. * 24 :timeframe.isweekly ? 60. * 24 * 7 :timeframe.ismonthly ? 60. * 24 * 30.4375 : na)f_kc(src, len, sensitivity1) =>basis = ta.sma(src, len)span = ta.atr(len)[basis + span * sensitivity1, basis - span * sensitivity1]wavetrend(src, chlLen, avgLen) =>esa = ta.ema(src, chlLen)d = ta.ema(math.abs(src - esa), chlLen)ci = (src - esa) / (0.015 * d)wt1 = ta.ema(ci, avgLen)wt2 = ta.sma(wt1, 3)[wt1, wt2]f_top_fractal(src) => src[4] < src[2] and src[3] < src[2] and src[2] > src[1] and src[2] > src[0]f_bot_fractal(src) => src[4] > src[2] and src[3] > src[2] and src[2] < src[1] and src[2] < src[0]f_fractalize (src) => f_top_fractal(src) ? 1 : f_bot_fractal(src) ? -1 : 0f_findDivs(src, topLimit, botLimit) =>fractalTop = f_fractalize(src) > 0 and src[2] >= topLimit ? src[2] : nafractalBot = f_fractalize(src) < 0 and src[2] <= botLimit ? src[2] : nahighPrev = ta.valuewhen(fractalTop, src[2], 0)[2]highPrice = ta.valuewhen(fractalTop, high[2], 0)[2]lowPrev = ta.valuewhen(fractalBot, src[2], 0)[2]lowPrice = ta.valuewhen(fractalBot, low[2], 0)[2]bearSignal = fractalTop and high[2] > highPrice and src[2] < highPrevbullSignal = fractalBot and low[2] < lowPrice and src[2] > lowPrev[bearSignal, bullSignal]// Get componentssource = closesmrng1 = smoothrng(source, 27, 1.5)smrng2 = smoothrng(source, 55, sensitivity1)smrng = (smrng1 + smrng2) / 2filt = rngfilt(source, smrng)up2 = 0.0, up2 := filt > filt[1] ? nz(up2[1]) + 1 : filt < filt[1] ? 0 : nz(up2[1])dn2 = 0.0, dn2 := filt < filt[1] ? nz(dn2[1]) + 1 : filt > filt[1] ? 0 : nz(dn2[1])bullCond = bool(na), bullCond := source > filt and source > source[1] and up2 > 0 or source > filt and source < source[1] and up2 > 0bearCond = bool(na), bearCond := source < filt and source < source[1] and dn2 > 0 or source < filt and source > source[1] and dn2 > 0lastCond = 0, lastCond := bullCond ? 1 : bearCond ? -1 : lastCond[1]bull1 = bullCond and lastCond[1] == -1bear1 = bearCond and lastCond[1] == 1countBull = ta.barssince(bull1)countBear = ta.barssince(bear1)trigger = nz(countBull, bar_index) < nz(countBear, bar_index) ? 1 : 0ribbon1 = ta.sma(close, smooth1)ribbon2 = ta.sma(close, smooth2)rsi = ta.rsi(close, 21)rsiOb = rsi > 70 and rsi > ta.ema(rsi, 10)rsiOs = rsi < 30 and rsi < ta.ema(rsi, 10)dHigh = securityNoRep(syminfo.tickerid, "D", high [1])dLow = securityNoRep(syminfo.tickerid, "D", low [1])dClose = securityNoRep(syminfo.tickerid, "D", close[1])ema111 = ta.ema(srcEma1, lenEma1)ema22 = ta.ema(srcEma2, lenEma2)ema33 = ta.ema(srcEma3, lenEma3)[hh, lh, hl, ll] = swingPoints(prdSwing)ema = ta.ema(close, 144)emaBull = close > emaequal_tf(res) => str.tonumber(res) == f_chartTfInMinutes() and not timeframe.issecondshigher_tf(res) => str.tonumber(res) > f_chartTfInMinutes() or timeframe.issecondstoo_small_tf(res) => (timeframe.isweekly and res=="1") or (timeframe.ismonthly and str.tonumber(res) < 10)securityNoRep1(sym, res, src) =>bool bull_ = nabull_ := equal_tf(res) ? src : bull_bull_ := higher_tf(res) ? request.security(sym, res, src, barmerge.gaps_off, barmerge.lookahead_on) : bull_bull_array = request.security_lower_tf(syminfo.tickerid, higher_tf(res) ? str.tostring(f_chartTfInMinutes()) + (timeframe.isseconds ? "S" : "") : too_small_tf(res) ? (timeframe.isweekly ? "3" : "10") : res, src)if array.size(bull_array) > 1 and not equal_tf(res) and not higher_tf(res)bull_ := array.pop(bull_array)array.clear(bull_array)bull_TF1Bull = securityNoRep1(syminfo.tickerid, "1" , emaBull)TF3Bull = securityNoRep1(syminfo.tickerid, "3" , emaBull)TF5Bull = securityNoRep1(syminfo.tickerid, "5" , emaBull)TF15Bull = securityNoRep1(syminfo.tickerid, "15" , emaBull)TF30Bull = securityNoRep1(syminfo.tickerid, "30" , emaBull)TF60Bull = securityNoRep1(syminfo.tickerid, "60" , emaBull)TF120Bull = securityNoRep1(syminfo.tickerid, "120" , emaBull)TF240Bull = securityNoRep1(syminfo.tickerid, "240" , emaBull)TF480Bull = securityNoRep1(syminfo.tickerid, "480" , emaBull)TFDBull = securityNoRep1(syminfo.tickerid, "1440", emaBull)[upperKC1, lowerKC1] = f_kc(close, lenRevBands, 3)[upperKC2, lowerKC2] = f_kc(close, lenRevBands, 4)[upperKC3, lowerKC3] = f_kc(close, lenRevBands, 5)[upperKC4, lowerKC4] = f_kc(close, lenRevBands, 6)[wt1, wt2] = wavetrend(hlc3, 9, 12)[wtDivBear1, wtDivBull1] = f_findDivs(wt2, 15, -40)[wtDivBear2, wtDivBull2] = f_findDivs(wt2, 45, -65)wtDivBull = wtDivBull1 or wtDivBull2wtDivBear = wtDivBear1 or wtDivBear2// Colorscyan = #00DBFF, cyan30 = color.new(cyan, 70)pink = #E91E63, pink30 = color.new(pink, 70)red1 = #FF5252, red30 = color.new(red1 , 70)// Plot
srcStop = closeatrBand = srcStop * (percentStop / 120)atrStop = trigger ? srcStop - atrBand : srcStop + atrBandlastTrade(src) => ta.valuewhen(bull or bear, src, 0)entry_y = lastTrade(srcStop)stop_y = lastTrade(atrStop)tp1_y = (entry_y - lastTrade(atrStop)) * 1 + entry_ytp2_y = (entry_y - lastTrade(atrStop)) * 2 + entry_ytp3_y = (entry_y - lastTrade(atrStop)) * 3 + entry_ylabelTpSl(y, txt, color) =>label labelTpSl = percentStop != 0 ? label.new(bar_index + 1, y, txt, xloc.bar_index, yloc.price, color, label.style_label_left, color.white, size.normal) : nalabel.delete(labelTpSl[1])labelTpSl(entry_y, "Entry: " + str.tostring(math.round_to_mintick(entry_y)), color.gray)labelTpSl(stop_y , "Stop Loss: " + str.tostring(math.round_to_mintick(stop_y)), color.red)labelTpSl(tp1_y, "Take Profit 1: " + str.tostring(math.round_to_mintick(tp1_y)), color.green)labelTpSl(tp2_y, "Take Profit 2: " + str.tostring(math.round_to_mintick(tp2_y)), color.green)labelTpSl(tp3_y, "Take Profit 3: " + str.tostring(math.round_to_mintick(tp3_y)), color.green)lineTpSl(y, color) =>line lineTpSl = percentStop != 0 ? line.new(bar_index - (trigger ? countBull : countBear) + 4, y, bar_index + 1, y, xloc.bar_index, extend.none, color, line.style_solid) : naline.delete(lineTpSl[1])lineTpSl(entry_y, color.gray)lineTpSl(stop_y, color.red)lineTpSl(tp1_y, color.green)lineTpSl(tp2_y, color.green)lineTpSl(tp3_y, color.green)
Откликнулись
1
Оценка
Проекты
455
26%
Арбитраж
134
21%
/
57%
Просрочено
100
22%
Работает
2
Оценка
Проекты
5
20%
Арбитраж
4
25%
/
25%
Просрочено
0
Свободен
3
Оценка
Проекты
577
36%
Арбитраж
64
20%
/
58%
Просрочено
147
25%
Свободен
Опубликовал: 1 статью, 22 примера
4
Оценка
Проекты
19
11%
Арбитраж
7
14%
/
57%
Просрочено
4
21%
Свободен
5
Оценка
Проекты
613
34%
Арбитраж
34
38%
/
44%
Просрочено
9
1%
Занят
6
Оценка
Проекты
941
47%
Арбитраж
302
59%
/
25%
Просрочено
125
13%
Работает
7
Оценка
Проекты
9
22%
Арбитраж
0
Просрочено
0
Свободен
Похожие заказы
A robot
50+ USD
hy i am looking for someone who can fix robot for me .i need someone who know about order block .my entries are only order block. I have robot already i need only fix it.i just need someone who can fix this as soon as possible
Hello, I m looking for experienced developer to code me indicator Market structure all in one in my EA MONEYPAL, to open trade on FVG separated by fractal signals.Thank you Regards
Looking for special EMA cross EA
30+ USD
EMA CROSS OVER I NEED EMA CROSS OVER ROBOT THAT EMA 5,10,21 CONDITIONS 1 5 EMA ABOVE 21 CANDLE CLOSE BUY 2 5 EMA JUST BELOW EMA 10 TAKE PROFIT 3 5 EMA BELOW 21 CANDLE CLOSE SELL 4 5 EMA JUST CLOSE EMA 10 FROM DOWN TAKE PROFIT
Build a Copy Trading system
30+ USD
I’m looking to consult with an experienced developer about the creation of a reliable copy trading system specifically designed for scalping . Currently, we are managing more than 100 accounts copying trades from a single master account. Since we use scalping strategies, even a small delay can impact the performance and results. The systems we’ve tried so far have delays of up to 5 seconds, which is too much for this
Hello, I want to debug my sierra chart and I have the study. That's the study I just want to add 4 study overlay in the input settings and color bar based on alert condition is sg1=1 That's the study I want it to trail the order instead of flat to avoid too much slippage What I do is the 15-Minutes chart I have filter also in the 10tick chart if those filters are meet the bar is green or red using sierrachar color
Build a plugin which fetches risk metric from VM
1500 - 2500 USD
The PRD: 1. Plugin ensures that individual opening positions come from MT4 to our colocated virtual machine 2. A score is returned from a lookup 3. Binary decision based on score. 4. Matches closing position with opening position; doesn't score, simply closes the trade. The plugin UX should have the following: 1. Risk threshold per grouping, easily entered by the client 2. Reporting of revenue comparisons To confirm
Build an EA for magic number
50+ USD
I need an EA for magic number that shows three unique numbers in every single candle.Mainly this EA shows the strength of the candle and momentum . More details inbox me
Specification AR Code a grid expert advisor (EA) MQL5 that uses a sort of hedged laddering mechanism . Core Logic Outline: Initial Setup : Open a double trade (Buy & Sell) at the current market price. Set two pending double trades (Buy/Sell limits) at a fixed distance on either side (e.g., ±X pips). On Trigger Event : When price hits one of the pending double trade levels, execute the new double position
Need a simple Dollar risk manager EA
30 - 70 USD
Description: I need a professional MetaTrader 5 developer to build a clean, fully editable Expert Advisor (EA) that strictly controls risk based on dollar-loss thresholds per lot size, and includes hard rules for equity protection and trade limits. Trade Management Rules 1. Dollar-Based Auto Close (Per Lot Size) The EA must close each individual XAUUSD trade once its loss in USD reaches a specific threshold tied to
I need someone experienced to develop a trading robot with the criteria's - Heikin ashi candle logic - Buystops under certain conditions - Trailing stop losses at a certain interval - Dynamic position sizing so its able to calculate lot sizes and risk the correct % each trade , - Understand heikin ashi swing high swing low logic to find where to place the stop loss/identify correct entries , - Be able to only make
Информация о проекте
Бюджет
10000+ USD
Исполнителю
9000
USD