گولڈن کراس بولنگر بینڈ کی حکمت عملی کے ذریعے موونگ ایوریج بریکنگ


تخلیق کی تاریخ: 2023-11-21 12:01:25 آخر میں ترمیم کریں: 2023-11-21 12:01:25
کاپی: 0 کلکس کی تعداد: 820
1
پر توجہ دیں
1617
پیروکار

گولڈن کراس بولنگر بینڈ کی حکمت عملی کے ذریعے موونگ ایوریج بریکنگ

جائزہ

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

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

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

  1. 50 دن کے ای ایم اے اور 200 دن کے ای ایم اے کا استعمال کرتے ہوئے سنہری فورک فیصلے کا نظام بنانا ، جب تیزی سے چلنے والی اوسط پر آہستہ آہستہ چلنے والی اوسط کو عبور کیا جائے تو یہ سمجھا جاتا ہے کہ یہ ایک بالائی رجحان میں ہے۔

  2. جب قیمت وی ڈبلیو اے پی سے زیادہ ہوتی ہے تو ، یہ سمجھا جاتا ہے کہ قیمتوں میں اضافے کے مرحلے میں ، زیادہ ذخیرہ کرنے کے لئے فائدہ مند ہے۔

  3. جب قیمتوں نے ابھی تک برن کے نیچے کی ٹریک کو چھوا یا توڑ دیا ہے تو ، اس سے ظاہر ہوتا ہے کہ اسٹاک کی قیمتیں ممکنہ طور پر ایک اچھال کے مقام کے قریب ہیں ، جس کا امکان بہتر ہے۔

  4. کثیر ہولڈر پوزیشنوں میں داخل ہونے کے بعد ، قیمتوں میں برن سے زیادہ ریل پر آنے پر بروقت اسٹاپ آؤٹ ہوجاتا ہے۔

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

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

  • گولڈ فورک کے فیصلے کے نظام کا استعمال کرتے ہوئے ، بڑے رجحانات کی سمت کا تعین کریں ، اور زلزلے کے حالات میں چھوٹے جیت اور نقصان سے بچیں۔

  • VWAP اشارے قیمتوں کے اتار چڑھاو کی سمت کا اندازہ لگانے کے لئے استعمال کیا جاتا ہے ، جس سے خریداری کے مقامات کا انتخاب زیادہ درست ہوتا ہے۔

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

  • اس کے علاوہ ، یہ بھی کہا گیا ہے کہ اس کی حکمت عملی کو درست اور قابل اعتماد بنانے کے لئے متعدد اشارے ایک دوسرے کی توثیق کرتے ہیں۔

اسٹریٹجک خطرات اور حل

  • گولڈ فورک فیصلہ کرنے کے نظام میں ممکنہ طور پر جھوٹے سگنل جاری کیے جائیں۔ اس کے لئے اوسط لائن کی مدت کو مناسب طور پر کم کیا جائے اور دیگر اشارے کی تصدیق کے ساتھ کام کیا جائے۔

  • برن بینڈ پیرامیٹرز کی غلط ترتیب بھی حکمت عملی کو غیر موثر بنا سکتی ہے۔ برن بینڈ کی مدت اور معیاری انحراف پیرامیٹرز کو ایڈجسٹ کیا جانا چاہئے۔

  • اسٹاپ نقصان کی ترتیب بہت زیادہ نرمی ہے اور نقصان کو مؤثر طریقے سے کنٹرول نہیں کیا جاسکتا ہے۔ اسٹاپ نقصان کی حد کو مناسب طریقے سے سخت کرنا چاہئے تاکہ یہ یقینی بنایا جاسکے کہ خطرہ قابو میں ہے۔

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

  • گولڈ فورک مساوی لائن مجموعہ کو بہتر بنائیں ، مختلف مساوی لائن پیرامیٹرز کی جانچ کریں ، بہترین پیرامیٹرز تلاش کریں۔

  • مختلف دورانیے کے برن بینڈ پیرامیٹرز کی جانچ کرنا تاکہ طول و عرض اور آئسولیشن کے لئے بہترین پیرامیٹرز کا مجموعہ تلاش کیا جاسکے۔

  • خطرے کو مؤثر طریقے سے کنٹرول کرنے کے لئے لیکن اس کے نتیجے میں بہت زیادہ متحرک نہیں ہونے کے لئے نقصان کی حد کی جانچ اور اصلاح کریں.

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 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
strategy(title="VWAP and BB strategy [$$]", overlay=true,pyramiding=2, default_qty_value=1, default_qty_type=strategy.fixed,    initial_capital=10000, currency=currency.USD)


fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 6, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2020, title = "From Year", minval = 1970)
 
// To Date Inputs
toDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 8, 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-1300","0500-1400")
//--- 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 = time >= startDate and time <= finishDate 


is_price_dipped_bb(pds,source1) =>
    t_bbDipped=false
    for i=1 to pds
        t_bbDipped:=  (t_bbDipped   or  close[i]<source1) ? true : false
        if t_bbDipped==true
            break
        else
            continue
            
    t_bbDipped


is_bb_per_dipped(pds,bbrSrc) =>
    t_bbDipped=false
    for i=1 to pds
        t_bbDipped:=  (t_bbDipped   or  bbrSrc[i]<=0) ? true : false
        if t_bbDipped==true
            break
        else
            continue
            
    t_bbDipped
    

// variables  BEGIN
shortEMA = input(50, title="fast EMA", minval=1)
longEMA = input(200, title="slow EMA", minval=1)

//BB

smaLength = input(7, title="BB SMA Length", minval=1)
bbsrc = input(close, title="BB Source")

strategyCalcOption = input(title="strategy to use", type=input.string, options=["BB", "BB_percentageB"],      defval="BB")



//addOnDivergence = input(true,title="Add to existing on Divergence")
//exitOption = input(title="exit on RSI or BB", type=input.string, options=["RSI", "BB"],      defval="BB")

//bbSource = input(title="BB  source", type=input.string, options=["close", "vwap"],      defval="close")
     
//vwap_res = input(title="VWAP Resolution", type=input.resolution, defval="session")
stopLoss = input(title="Stop Loss%", defval=1, minval=1)

//variables  END

longEMAval= ema(close, longEMA)
shortEMAval= ema(close, shortEMA)
ema200val = ema(close, 200)


vwapVal=vwap(close)



// Drawings

//plot emas
plot(shortEMAval, color = color.green, linewidth = 1, transp=0)
plot(longEMAval, color = color.orange, linewidth = 1, transp=0)
plot(ema200val, color = color.purple, linewidth = 2, style=plot.style_line ,transp=0)



//bollinger calculation 
mult = input(2.0, minval=0.001, maxval=50, title="StdDev")
basis = sma(bbsrc, smaLength)
dev = mult * stdev(bbsrc, smaLength)
upperBand = basis + dev
lowerBand = basis - dev
offset = input(0, "Offset", type = input.integer, minval = -500, maxval = 500)

bbr = (bbsrc - lowerBand)/(upperBand - lowerBand) 
//bollinger calculation 

//plot bb
//plot(basis, "Basis", color=#872323, offset = offset)
p1 = plot(upperBand, "Upper", color=color.teal, offset = offset)
p2 = plot(lowerBand, "Lower", color=color.teal, offset = offset)
fill(p1, p2, title = "Background", color=#198787, transp=95)


plot(vwapVal, color = color.purple, linewidth = 2, transp=0)


// Colour background

//barcolor(shortEMAval>longEMAval and close<=lowerBand ? color.yellow: na)
  

//longCondition=  shortEMAval > longEMAval and  close>open and  close>vwapVal
longCondition=  ( shortEMAval > longEMAval  and close>open and close>vwapVal and close<upperBand ) //and time_cond //     and  close>=vwapVal 



//Entry
strategy.entry(id="long", comment="VB LE" , long=true,  when= longCondition and ( strategyCalcOption=="BB"? is_price_dipped_bb(10,lowerBand) : is_bb_per_dipped(10,bbr)  )   and strategy.position_size<1 )   //is_price_dipped_bb(10,lowerBand))  //and strategy.position_size<1       is_bb_per_dipped(15,bbr) 


//add to the existing position
strategy.entry(id="long", comment="Add" , long=true,  when=strategy.position_size>=1 and close<strategy.position_avg_price and close>vwapVal) //and time_cond)

barcolor(strategy.position_size>=1  ? color.blue: na)



strategy.close(id="long", comment="TP Exit",   when=crossover(close,upperBand) )

//stoploss
stopLossVal =   strategy.position_avg_price * (1-(stopLoss*0.01) )
//strategy.close(id="long", comment="SL Exit",   when= close < stopLossVal)

//strategy.risk.max_intraday_loss(stopLoss, strategy.percent_of_equity)