Trương Nhật
Active Member
- 659
- 747
@Trương Nhật mình cho khoảng xấp xỉ là 0.01 có gì bạn tự điều chỉnh nhé, 2 dòng 138 và 147
Mã://@version=4 //BO Novecento @TruongNhat //author: anhnguyen14 strategy(title="BO TDF @TruongNhat", overlay=false, pyramiding=10) // === INPUT BACKTEST RANGE === Date = input(true, title = "=== Date Option ===") FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromYear = input(defval = 2019, title = "From Year", minval = 2017) ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12) ToYear = input(defval = 9999, title = "To Year", minval = 2017) // === DATE RANGE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => time >= start and time <= finish ? true : false // create function "within window of time" // === Trading Time === CTimeDvM = input(true, title = "=== Trading Time ===") FromHourDvM = input(defval = 05, title = "From Hour", minval = 00, maxval = 23) FromMinuteDvM = input(defval = 00, title = "From Minute", minval = 00, maxval = 59) ToHourDvM = input(defval = 04, title = "To Hour", minval = 00, maxval = 23) ToMinuteDvM = input(defval = 59, title = "To Minute", minval = 00, maxval = 59) GMT_FHDvM=FromHourDvM<7?FromHourDvM-7+24:FromHourDvM-7 GMT_THDvM=ToHourDvM<7?ToHourDvM-7+24:ToHourDvM-7 fhDvM= (GMT_FHDvM<10?"0"+tostring(GMT_FHDvM):tostring(GMT_FHDvM)) fmDvM= (FromMinuteDvM<10?"0"+tostring(FromMinuteDvM):tostring(FromMinuteDvM)) thDvM= (GMT_THDvM<10?"0"+tostring(GMT_THDvM):tostring(GMT_THDvM)) tmDvM= (ToMinuteDvM<10?"0"+tostring(ToMinuteDvM):tostring(ToMinuteDvM)) WorkingHourDvM = fhDvM+fmDvM+"-"+thDvM+tmDvM t0_DvM = time(timeframe.period, WorkingHourDvM) //bgcolor(CTimeDvM? t0_DvM? color.gray : na:na, title="Trading Time", transp=90) //The Vostro Indicator period156 = 100 level = input(8, title="Vostro Level") gd120 = sum(hl2, 5) gd128 = gd120 * .2 gd121 = sum(high - low, 5) gd136 = gd121 * .2 * .2 ibuff116 = (low - gd128) / gd136 ibuff112 = (high - gd128) / gd136 ibuff108 = iff(ibuff112 > level and high > wma(hl2, period156), 90, iff(ibuff116 < -level and low < wma(hl2, period156), -90, 0)) ibuff109 = iff(ibuff112 > level and ibuff112[1] > level or ibuff116 < -level and ibuff116[1] < -8, 0, ibuff108) plot((ibuff109/100), title="The VosTro", color=color.blue, linewidth=2, transp=40) //plot(80) //plot(-80) //Trend Direction Force Index filterHigh = 0.5 filterMid = 0 filterLow = -0.5 price = close //TDF5 lookback5 = input(5, title="TDF Fast") mma5 = ema(price * 1000, lookback5) smma5 = ema(mma5, lookback5) impetmma5 = mma5 - mma5[1] impetsmma5 = smma5 - smma5[1] divma5 = abs(mma5 - smma5) averimpet5 = (impetmma5 + impetsmma5) / 2 number5 = averimpet5 pow5 = 3 result5 = float(na) for i = 1 to pow5 - 1 by 1 if i == 1 result5 := number5 result5 result5 := result5 * number5 result5 tdf5 = divma5 * result5 ntdf5 = tdf5 / highest(abs(tdf5), lookback5 * 3) //c = ntdf5 > filterHigh ? color.green : ntdf < filterLow ? color.red : color.gray plot(ntdf5, title="TDF5", linewidth=2, color=color.red, transp=40) //TFD20 lookback20 = input(20, title="TDF Slow") mma20 = ema(price * 1000, lookback20) smma20 = ema(mma20, lookback20) impetmma20 = mma20 - mma20[1] impetsmma20 = smma20 - smma20[1] divma20 = abs(mma20 - smma20) averimpet20 = (impetmma20 + impetsmma20) / 2 number20 = averimpet20 pow20 = 3 result20 = float(na) for i = 1 to pow20 - 1 by 1 if i == 1 result20 := number20 result20 result20 := result20 * number20 result20 tdf20 = divma20 * result20 ntdf20 = tdf20 / highest(abs(tdf20), lookback20 * 3) //c = ntdf5 > filterHigh ? color.green : ntdf < filterLow ? color.red : color.gray plot(ntdf20, title="TDF5", linewidth=2, color=color.yellow, transp=40) hline(filterHigh, color=color.black) //hline(filterMid, color=color.black) hline(filterLow, color=color.black) hline(1, linewidth=2) hline(-1, linewidth=2) //Barry Support & Resistance FractalLen=3 isFractal(x) => highestbars(x,FractalLen*2+1)==-FractalLen sF=isFractal(-low), support=low, support:=sF ? low[FractalLen] : support[1] rF=isFractal(high), resistance=high, resistance:=rF ? high[FractalLen] : resistance[1] //plot(series=support, title="Support", color=color.blue, offset=-FractalLen) //plot(series=resistance, title="Resistance", color=color.red, offset=-FractalLen) //plotshape(sF, title="Lower fractal", style=shape.diamond, location=location.belowbar, color=color.black, offset=-FractalLen, size=size.tiny) //plotshape(rF, title="Upper fractal", style=shape.diamond, location=location.abovebar, color=color.black, offset=-FractalLen, size=size.tiny) //Put Condition //Novecento M5 - Put Condition - Novecentas Setup x1DvM= //ibuff109>80 ntdf5==1 and ntdf20>=0 and ntdf20<0.01 //Novecento M5 - Call Condition - Novecentas Setup y1DvM= //ibuff109<-80 ntdf5==-1 and ntdf20>-0.01 and ntdf20<=0 // - /FUNCTIONS xDvM= x1DvM yDvM= y1DvM //--------------------------------------\\ // - /FUNCTIONS //--------------------------------------\\ //plot Signal putcol = CTimeDvM?t0_DvM?xDvM? color.red : na:na:na callcol = CTimeDvM?t0_DvM?yDvM? color.blue : na:na:na PutSignal= CTimeDvM?t0_DvM?xDvM?-2:na:na:na CallSignal= CTimeDvM?t0_DvM?yDvM?-2:na:na:na plot(PutSignal, title='Put Signal', style=plot.style_columns, color=color.red, offset=1, transp=0) plot(CallSignal, title='Call Signal', style=plot.style_columns, color=color.blue, offset=1, transp=0) plotshape(PutSignal, title='Put', text="Put", style=shape.labeldown, location=location.bottom, color=color.orange, textcolor=color.black, offset=1, transp=0) plotshape(CallSignal, title='Call', text="Call", style=shape.labelup, location=location.bottom, color=color.orange, textcolor=color.black, offset=1, transp=0) //Trading Time if (CTimeDvM) strategy.entry("Call", strategy.long, when=yDvM and window() and t0_DvM) if (CTimeDvM) strategy.entry("Put", strategy.short, when=xDvM and window() and t0_DvM) strategy.close_all(when=barstate.isnew) //EOF
code này nè bác @vĩnh0902.