مومینٹم برسٹ ٹریکنگ حکمت عملی پر مبنی


تخلیق کی تاریخ: 2024-03-01 11:08:43 آخر میں ترمیم کریں: 2024-03-01 11:08:43
کاپی: 0 کلکس کی تعداد: 826
1
پر توجہ دیں
1617
پیروکار

مومینٹم برسٹ ٹریکنگ حکمت عملی پر مبنی

جائزہ

ٹرانسمیشن ٹریکنگ حکمت عملی قیمتوں میں تبدیلی کی فیصد کا حساب لگانے کے ذریعہ قیمتوں کے خلاف ورزی کا تعین کرتی ہے ، ٹرانسمیشن فلٹرنگ سگنل کو جوڑتی ہے ، اور اعلی امکانات کو پکڑنے کے رجحان کے خلاف ورزی کو حاصل کرتی ہے۔ جب خریداری کا اشارہ ہوتا ہے تو ، حکمت عملی منافع کو روکنے کے لئے قیمتوں کے ٹریکنگ اسٹاپ نقصانات کا استعمال کرتی ہے ، تاکہ زیادہ سے زیادہ واپسی سے بچا جاسکے۔

حکمت عملی کا اصول

اس حکمت عملی کے تحت خریدنے کے وقت کا تعین مندرجہ ذیل اشارے سے کیا جاتا ہے:

  1. قیمت میں تبدیلی کا فیصد ((isFourPercentBull) - قیمتوں میں مؤثر طریقے سے توڑنے کا فیصلہ کرنے کے لئے پچھلے دن کے اختتامی قیمتوں کے مقابلے میں اختتامی قیمتوں میں تبدیلی کا فیصد شمار کرتا ہے۔

  2. ہائی کلوز ریشو (HighCloseRatio) - قیمتوں کے توڑنے کی طاقت کا اندازہ لگانے کے لئے کلوز قیمتوں کے سب سے زیادہ قیمتوں کے تناسب کا حساب لگائیں۔

  3. حجم - ایک مؤثر بریک اپ کو یقینی بنانے کے لئے ، پچھلے دن سے زیادہ حجم کی ضرورت ہوتی ہے۔

  4. 200 دن کی سادہ حرکت پذیری اوسط ((SMA) - رجحان کی سمت کا تعین کرنے کے لئے 200 دن کی لائن سے اوپر بند ہونے اور کھولنے کی قیمت کی ضرورت ہوتی ہے۔

جب مذکورہ بالا متعدد شرائط ایک ساتھ مل جاتی ہیں تو ، خریدنے کا اشارہ دیا جاتا ہے۔ اس کے بعد ، حکمت عملی قیمتوں کی پیروی کرنے والے اسٹاپ نقصانات کا استعمال کرتی ہے تاکہ منافع کو روکنے اور اس پر تالا لگایا جاسکے۔ خاص طور پر ، اسٹاپ لائن کی پیروی کرنے کا حساب کتاب فارمولہ یہ ہے:

trailPrice = close * (100 - trailPercent) / 100

اس میں trailPercent ایک قابل ترتیب اسٹاپ ٹریکنگ فی صد ہے۔ اس کا مطلب یہ ہے کہ جب قیمت بڑھتی ہے تو اسٹاپ لائن بھی بڑھتی ہے ، جس سے منافع کو لاک کیا جاتا ہے۔ جب قیمت اسٹاپ لائن پر واپس آتی ہے تو ، اس کی جگہ کا نقصان ختم ہوجاتا ہے۔

اسٹریٹجک فوائد

یہ ایک عام حکمت عملی ہے اور اس کے کچھ فوائد ہیں:

  1. متعدد شرائط کی فلٹرنگ جس سے اس بات کو یقینی بنایا جا سکے کہ ٹوٹ پھوٹ کی تصدیق ہو اور جعلی ٹوٹ پھوٹ سے بچا جا سکے۔
  2. قیمتوں پر نظر رکھنے والے اسٹاپ نقصانات کا استعمال ، جس سے نقصانات کو روکنے اور منافع کو روکنے میں مدد ملتی ہے ، تاکہ واپسی کو زیادہ سے زیادہ سے بچایا جاسکے۔
  3. حکمت عملی کی منطق سادہ اور واضح ہے، سمجھنے اور بہتر بنانے میں آسان ہے۔

اسٹریٹجک رسک

اس حکمت عملی کے کچھ خطرات بھی ہیں:

  1. اس کے علاوہ ، اس نے کہا کہ اس کے نتیجے میں ، اس نے کہا کہ اس کی وجہ یہ ہے کہ اس کی وجہ سے ، اس کی وجہ سے ، اس کی وجہ سے ، اس کی وجہ سے۔
  2. ٹریسنگ سٹاپس کی شدت سے زیادہ ہونے کی وجہ سے ٹریسنگ سٹاپس کی کثرت ہو سکتی ہے۔
  3. پیرامیٹرز کی غلط ترتیب سے ٹرانزیکشن کی اعلی تعدد یا سگنل کی کمی ہوسکتی ہے۔

خطرے کا مقابلہ کرنے کے لئے حل یہ ہیں:

  1. پیرامیٹرز کو بہتر بنائیں ، اسٹاپ نقصان کو کم کریں ، اور کافی جگہ یقینی بنائیں۔
  2. واضح رجحانات کو نظر انداز نہ کرنے کے لئے مناسب طریقے سے توڑنے کی شرائط میں نرمی؛
  3. مختلف اقسام کی جانچ اور حکمت عملی کے استحکام کا اندازہ لگانا۔

اصلاح کی سمت

اس حکمت عملی کی اعلی اسٹاپ نقصان کی فریکوئنسی کو مدنظر رکھتے ہوئے ، مندرجہ ذیل سمتوں میں مزید اصلاح کی جاسکتی ہے۔

  1. اسٹاپ نقصان کے دیگر طریقوں جیسے اوسط ٹریکنگ، اے ٹی آر اور اتار چڑھاؤ کی شرح ٹریکنگ کی کوشش کریں؛
  2. مشین لرننگ الگورتھم کو شامل کرنا جو تاریخی اعداد و شمار کی تربیت پر مبنی ہے جس میں بہتر اثر انداز ہونے والے پریکٹس پیرامیٹرز کا مجموعہ ہے؛
  3. ٹرانزیکشن حجم کی بنیاد پر بریک آؤٹ کے لئے معاون قواعد و ضوابط کو بڑھانا تاکہ بریک آؤٹ کو یقینی بنایا جاسکے۔
  4. مختلف اقسام کے پیرامیٹرز کی ترتیب میں فرق کا اندازہ لگانا ، بہترین موزوں اقسام کی تلاش کرنا

خلاصہ کریں۔

متحرک دھماکے سے باخبر رہنے کی حکمت عملی مجموعی طور پر ایک بہت ہی عملی رجحان سے باخبر رہنے کی حکمت عملی ہے۔ اس نے اس مسئلے کو حل کیا ہے کہ اسٹریٹجک حکمت عملی میں مؤثر طریقے سے روکنے اور روکنے کا مسئلہ حل نہیں کیا جاسکتا ہے۔ رجحانات کو پکڑنے کے ساتھ ساتھ ، خطرے کو بھی اچھی طرح سے کنٹرول کیا جاسکتا ہے۔ پیرامیٹرز کی اصلاح اور مشین لرننگ جیسے ذرائع کی تعارف کے ذریعہ ، اس حکمت عملی کے اثر کو مزید بڑھانے کی گنجائش ہے ، جو گہری تحقیق اور اطلاق کے قابل ہے۔

حکمت عملی کا ماخذ کوڈ
/*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)