رفتار کے دھماکے کی نگرانی کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-03-01 11:08:43
ٹیگز:

img

جائزہ

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

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

اس حکمت عملی میں داخلہ سگنل کا تعین کرنے کے لئے استعمال ہونے والے اہم اشارے یہ ہیں:

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

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

  3. تجارت کا حجم (volume) - درست توڑ کو یقینی بنانے کے لئے تجارت کا حجم پچھلے دن سے زیادہ ہونا ضروری ہے۔

  4. 200 دن کا سادہ چلتا ہوا اوسط (ایس ایم اے) - رجحان کی سمت کا تعین کرنے کے لئے بندش کی قیمت اور افتتاحی قیمت کو 200 دن کی لائن سے زیادہ ہونا ضروری ہے۔

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

trailPrice = close * (100 - trailPercent) / 100

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

حکمت عملی کے فوائد

ایک عام بریک آؤٹ حکمت عملی کے طور پر، اس کے مندرجہ ذیل فوائد ہیں:

  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)

مزید