یہ حکمت عملی ویو ٹرینڈ اشارے کی بنیاد پر ڈیزائن کی گئی ہے۔ ویو ٹرینڈ اشارے میں قیمت چینل اور چلتی اوسط کو یکجا کیا گیا ہے تاکہ مارکیٹ کے رجحانات کو مؤثر طریقے سے پہچانا جاسکے اور تجارتی سگنل پیدا کیے جاسکے۔ یہ حکمت عملی طویل یا مختصر پوزیشنوں میں داخل ہوتی ہے جب ویو ٹرینڈ لائن اوور بک یا اوور سیل کی حیثیت کی نمائندگی کرنے والی کلیدی سطحوں کو عبور کرتی ہے۔
یہ حکمت عملی ویو ٹرینڈ اشارے کا استعمال کرتے ہوئے رجحانات اور زیادہ خرید / زیادہ فروخت کی سطح کی نشاندہی کرتی ہے ، جو حکمت عملی کے بعد ایک موثر رجحان تشکیل دیتی ہے۔ قلیل مدتی آسکیلیٹرز کے مقابلے میں ، ویو ٹرینڈ جھوٹے سگنلز سے گریز کرتا ہے اور بہتر استحکام فراہم کرتا ہے۔ مناسب رسک کنٹرول کے طریقوں سے ، یہ مستحکم منافع حاصل کرسکتا ہے۔ پیرامیٹرز اور ماڈل ٹوننگ سے کارکردگی میں مزید اضافے کی توقع کی جاسکتی ہے۔
/*backtest start: 2023-11-20 00:00:00 end: 2023-11-27 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@author SoftKill21 //@version=4 strategy(title="WaveTrend strat", shorttitle="WaveTrend strategy") n1 = input(10, "Channel Length") n2 = input(21, "Average Length") Overbought = input(70, "Over Bought") Oversold = input(-30, "Over Sold ") // BACKTESTING RANGE // From Date Inputs 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 = 2001, title = "From Year", minval = 1970) // To Date Inputs toDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) toYear = input(defval = 2020, title = "To Year", minval = 1970) // Calculate start/end date and time condition DST = 1 //day light saving for usa //--- Europe London = iff(DST==0,"0000-0900","0100-1000") //--- America NewYork = iff(DST==0,"0400-1500","0500-1600") //--- Pacific Sydney = iff(DST==0,"1300-2200","1400-2300") //--- Asia Tokyo = iff(DST==0,"1500-2400","1600-0100") //-- Time In Range timeinrange(res, sess) => time(res, sess) != 0 london = timeinrange(timeframe.period, London) newyork = timeinrange(timeframe.period, NewYork) startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00) finishDate = timestamp(toYear, toMonth, toDay, 00, 00) time_cond = true //and (london or newyork) ap = hlc3 esa = ema(ap, n1) d = ema(abs(ap - esa), n1) ci = (ap - esa) / (0.015 * d) tci = ema(ci, n2) wt1 = tci wt2 = sma(wt1,4) plot(0, color=color.gray) plot(Overbought, color=color.red) plot(Oversold, color=color.green) plot(wt1, color=color.green) longButton = input(title="Long", type=input.bool, defval=true) shortButton = input(title="Short", type=input.bool, defval=true) if(longButton==true) strategy.entry("long",1,when=crossover(wt1,Oversold) and time_cond) strategy.close("long",when=crossunder(wt1, Overbought)) if(shortButton==true) strategy.entry("short",0,when=crossunder(wt1, Overbought) and time_cond) strategy.close("short",when=crossover(wt1,Oversold)) //strategy.close_all(when= not (london or newyork),comment="time") if(dayofweek == dayofweek.friday) strategy.close_all(when= timeinrange(timeframe.period, "1300-1400"), comment="friday")