یہ حکمت عملی لیزی بیئر کے VWAP اشارے سے Z فاصلے پر مبنی ہے۔ یہ قیمت اور VWAP کے درمیان Z فاصلے کا استعمال اوور بک اور اوور سیلڈ حالات ، نیز اندراجات اور باہر نکلنے کا تعین کرنے کے لئے کرتا ہے۔ اس حکمت عملی میں کچھ شور کو فلٹر کرنے کے لئے EMA لائنز اور Z فاصلے کو عبور کرنے والی 0 سطح شامل ہے۔
اہم افعال:
حل:
حکمت عملی قیمت-وی ڈبلیو اے پی تعلقات کا تعین کرنے کے لئے زیڈ فاصلہ کا استعمال کرتی ہے اور رجحان کے مواقع کو حاصل کرنے کے مقصد سے ای ایم اے کو فلٹر سگنلز میں شامل کرتی ہے۔ اس سے رجحانات کی پیروی کرنے کی اجازت ملتی ہے اور خطرے کو کنٹرول کرنے کے لئے اسٹاپ نقصان ہوتا ہے۔ اصلاح اور دیگر اشارے شامل کرنے سے استحکام میں بہتری آسکتی ہے۔ تاہم ، اصلاح کے دوران زیڈ فاصلہ کے پسماندہ مسئلے پر غور کیا جانا چاہئے۔ مجموعی طور پر ، یہ ایک سادہ ، واضح منطق کے ساتھ رجحان کی پیروی کرنے والی حکمت عملی ہے۔ جب مکمل طور پر بہتر بنایا جاتا ہے تو ، یہ رجحانات کی تجارت کے لئے ایک موثر ذریعہ بن سکتا ہے۔
/*backtest start: 2022-11-03 00:00:00 end: 2023-11-09 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © mohanee //@version=4 //This is based on Z distance from VWAP by Lazybear strategy(title="ZVWAP[LB] strategy", overlay=false,pyramiding=2, default_qty_type=strategy.fixed, default_qty_value=3, initial_capital=10000, currency=currency.USD) length=input(13,"length") calc_zvwap(pds, source1) => mean = sum(volume*source1,pds)/sum(volume,pds) vwapsd = sqrt(sma(pow(source1-mean, 2), pds) ) (close-mean)/vwapsd upperTop=2.5 //input(2.5) upperBottom=2.0 //input(2.0) lowerTop=-0.5 //input(-0.5) lowerBottom=-2.0 //input(-2.0) buyLine=input(-0.5, title="OverSold Line",minval=-2, maxval=3) sellLine=input(2.0, title="OverBought Line",minval=-2, maxval=3) fastEma=input(13, title="Fast EMA",minval=1, maxval=50) slowEma=input(55, title="Slow EMA",minval=10, maxval=200) stopLoss =input(5, title="Stop Loss",minval=1) hline(0, title="Middle Line", linestyle=hline.style_dotted, color=color.green) ul1=plot(upperTop, "OB High") ul2=plot(upperBottom, "OB Low") fill(ul1,ul2, color=color.red) ll1=plot(lowerTop, "OS High") ll2=plot(lowerBottom, "OS Low") fill(ll1,ll2, color=color.green) zvwapVal=calc_zvwap(length,close) plot(zvwapVal,title="ZVWAP",color=color.purple, linewidth=2) longEmaVal=ema(close,slowEma) shortEmaVal=ema(close,fastEma) vwapVal=vwap(hlc3) zvwapDipped=false for i = 1 to 10 zvwapDipped := zvwapDipped or zvwapVal[i]<=buyLine longCondition= shortEmaVal > longEmaVal and zvwapDipped and crossover(zvwapVal,0) barcolor(longCondition ? color.yellow: na) strategy.entry(id="ZVWAPLE", long=true, when= longCondition and strategy.position_size<1) //Add strategy.entry(id="ZVWAPLE", comment="Add", long=true, when= strategy.position_size>1 and close<strategy.position_avg_price and crossover(zvwapVal,0)) //calculate stop Loss stopLossVal = strategy.position_avg_price - (strategy.position_avg_price*stopLoss*0.01) strategy.close(id="ZVWAPLE",comment="SL Exit", when=close<stopLossVal) //close all on stop loss strategy.close(id="ZVWAPLE",comment="TPExitAll", qty=strategy.position_size , when= crossunder(zvwapVal,sellLine)) //close all zvwapVal>sellLine