
ٹرانسمیشن ٹریکنگ حکمت عملی قیمتوں میں تبدیلی کی فیصد کا حساب لگانے کے ذریعہ قیمتوں کے خلاف ورزی کا تعین کرتی ہے ، ٹرانسمیشن فلٹرنگ سگنل کو جوڑتی ہے ، اور اعلی امکانات کو پکڑنے کے رجحان کے خلاف ورزی کو حاصل کرتی ہے۔ جب خریداری کا اشارہ ہوتا ہے تو ، حکمت عملی منافع کو روکنے کے لئے قیمتوں کے ٹریکنگ اسٹاپ نقصانات کا استعمال کرتی ہے ، تاکہ زیادہ سے زیادہ واپسی سے بچا جاسکے۔
اس حکمت عملی کے تحت خریدنے کے وقت کا تعین مندرجہ ذیل اشارے سے کیا جاتا ہے:
قیمت میں تبدیلی کا فیصد ((isFourPercentBull) - قیمتوں میں مؤثر طریقے سے توڑنے کا فیصلہ کرنے کے لئے پچھلے دن کے اختتامی قیمتوں کے مقابلے میں اختتامی قیمتوں میں تبدیلی کا فیصد شمار کرتا ہے۔
ہائی کلوز ریشو (HighCloseRatio) - قیمتوں کے توڑنے کی طاقت کا اندازہ لگانے کے لئے کلوز قیمتوں کے سب سے زیادہ قیمتوں کے تناسب کا حساب لگائیں۔
حجم - ایک مؤثر بریک اپ کو یقینی بنانے کے لئے ، پچھلے دن سے زیادہ حجم کی ضرورت ہوتی ہے۔
200 دن کی سادہ حرکت پذیری اوسط ((SMA) - رجحان کی سمت کا تعین کرنے کے لئے 200 دن کی لائن سے اوپر بند ہونے اور کھولنے کی قیمت کی ضرورت ہوتی ہے۔
جب مذکورہ بالا متعدد شرائط ایک ساتھ مل جاتی ہیں تو ، خریدنے کا اشارہ دیا جاتا ہے۔ اس کے بعد ، حکمت عملی قیمتوں کی پیروی کرنے والے اسٹاپ نقصانات کا استعمال کرتی ہے تاکہ منافع کو روکنے اور اس پر تالا لگایا جاسکے۔ خاص طور پر ، اسٹاپ لائن کی پیروی کرنے کا حساب کتاب فارمولہ یہ ہے:
trailPrice = close * (100 - trailPercent) / 100
اس میں trailPercent ایک قابل ترتیب اسٹاپ ٹریکنگ فی صد ہے۔ اس کا مطلب یہ ہے کہ جب قیمت بڑھتی ہے تو اسٹاپ لائن بھی بڑھتی ہے ، جس سے منافع کو لاک کیا جاتا ہے۔ جب قیمت اسٹاپ لائن پر واپس آتی ہے تو ، اس کی جگہ کا نقصان ختم ہوجاتا ہے۔
یہ ایک عام حکمت عملی ہے اور اس کے کچھ فوائد ہیں:
اس حکمت عملی کے کچھ خطرات بھی ہیں:
خطرے کا مقابلہ کرنے کے لئے حل یہ ہیں:
اس حکمت عملی کی اعلی اسٹاپ نقصان کی فریکوئنسی کو مدنظر رکھتے ہوئے ، مندرجہ ذیل سمتوں میں مزید اصلاح کی جاسکتی ہے۔
متحرک دھماکے سے باخبر رہنے کی حکمت عملی مجموعی طور پر ایک بہت ہی عملی رجحان سے باخبر رہنے کی حکمت عملی ہے۔ اس نے اس مسئلے کو حل کیا ہے کہ اسٹریٹجک حکمت عملی میں مؤثر طریقے سے روکنے اور روکنے کا مسئلہ حل نہیں کیا جاسکتا ہے۔ رجحانات کو پکڑنے کے ساتھ ساتھ ، خطرے کو بھی اچھی طرح سے کنٹرول کیا جاسکتا ہے۔ پیرامیٹرز کی اصلاح اور مشین لرننگ جیسے ذرائع کی تعارف کے ذریعہ ، اس حکمت عملی کے اثر کو مزید بڑھانے کی گنجائش ہے ، جو گہری تحقیق اور اطلاق کے قابل ہے۔
/*backtest
start: 2023-03-01 00:00:00
end: 2023-12-10 05:20: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/
// © doks23
//@version=5
strategy(title = "SD:Momentum Burst", overlay=true, initial_capital=1000,commission_value = 0,slippage = 0,process_orders_on_close=true)
//Check Vol
checkVol = input.bool(defval=false,title="IncludeAvgVolume?")
volSMAlength = input(50, title="VolumeLength")
volumeSma = ta.sma(volume, volSMAlength)
highvolume = volume >= volumeSma
volumeCond=checkVol?highvolume:true
// Profit and Loss
trailPercent = input.float(title="Trail%", defval=3, step=0.1)
//longCondition
PercentThreshold=input.float(3.8,'BreakoutPercent', step=0.1)
MaxThreshold=input.float(10,'Max Breakout', step=0.1)
HighCloseRatio=input.float(70,'Close to High Ratio', step=1)
float candleCloseBull = ((close[0] - open[0]) / (high[0] - open[0]) * 100)
float isFourPercentBull = (((close[0] - close[1]) / close[1]) * 100)
LongCond=volume > volume[1] and isFourPercentBull > PercentThreshold and candleCloseBull > HighCloseRatio and isFourPercentBull<MaxThreshold
barcolor(color=(LongCond?color.yellow: na),title='BObar')
longCondition= LongCond and volumeCond and close>ta.sma(close,200) and open>ta.sma(close,200)
//Input Strategy
DateCheck= input.bool(title = 'Custom Date Range?', defval=true,group = 'Strategy')
FromDate= input(defval = timestamp("1 Jan 2019 00:00"),group = 'Strategy')
ToDate =input(defval = timestamp("31 Dec 2023 00:00"),group = 'Strategy')
PostionSize =input.string('Contract','Select Position Size',options = ['Percent of Equity','Contract'],group = 'Strategy')
ContractQty =input.int(1,'No of Contract',group = 'Strategy')
//Backtesting Date Range
TimeWindow=true
// Number of Contract
var int trade_qty=na
if(PostionSize=='Contract')
trade_qty:=ContractQty
else
trade_qty:= (strategy.equity>strategy.initial_capital)?math.floor(strategy.equity/strategy.initial_capital):ContractQty
//Position Buy
BuyTriggerPrice = ta.valuewhen(longCondition,high,0)
//Trailing price
var float trailPrice = na
float percentMulti = (100 - trailPercent) / 100
longCondition2=longCondition and TimeWindow
if longCondition2
strategy.entry("Long", strategy.long,qty=trade_qty,stop = BuyTriggerPrice)
trailPrice := close*percentMulti
if strategy.position_size>0
trailPrice := math.max(close*percentMulti,trailPrice[1])
if low <= trailPrice
strategy.exit('Exit','Long',stop = trailPrice)
if strategy.position_size==0
trailPrice:=na
// Plot Strategy
var float trail_long_SL=na
if strategy.position_size>0
trail_long_SL:=trailPrice
else
trail_long_SL:=na
//Strategy Plot
PlotMA=input.bool(title="Plot MA?", defval=false)
plot(PlotMA?ta.sma(close,10):na,color = color.red,title = '10MA')
plot(PlotMA?ta.sma(close,21):na,color = color.white,title = '21MA')
plot(PlotMA?ta.sma(close,200):na,color = color.orange,title = '200MA')
// plot(trail_long_SL,color = color.gray,style = plot.style_steplinebr,linewidth = 1)