بولنگر بینڈ کے ساتھ کثیر ٹائم فریم ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-09-20 15:47:46
ٹیگز:

جائزہ

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

حکمت عملی منطق

  1. اپڈیٹیو بولنگر بینڈ کے اوپری اور نچلے بینڈ کا حساب لگائیں، جس میں چینل کی چوڑائی ایڈجسٹ کی جاسکتی ہے۔

  2. بریک آؤٹ ٹریکنگ کی حکمت عملی بینڈ بریک آؤٹ پر پوزیشن کھولنے اور بینڈ کے اندر قیمت میں واپسی پر روکنے کے لئے.

  3. ریورس ریورسنگ حکمت عملی جب قیمت بینڈ تک پہنچ جاتی ہے تو پوزیشن کھولنے اور جب قیمت بینڈ کے اندر واپس آجاتی ہے تو روکنے کے لئے.

  4. طویل / مختصر طرف کا تعین کرنے میں مدد کے لئے CCI اشارے کا استعمال کریں.

  5. دونوں حکمت عملیوں کے قابل عمل ہونے کی تصدیق کے لیے متعدد ٹائم فریموں میں بیک ٹیسٹ۔

فوائد

  1. بولنگر بینڈ قیمت کے رجحانات کو پکڑنے میں بدیہی ہیں.

  2. دونوں حکمت عملیوں کو مضبوطی کے لئے مختلف مارکیٹ کے حالات کے مطابق.

  3. سی سی آئی طویل / مختصر سمت کا تعین کرنے میں مدد کرتا ہے.

  4. ملٹی ٹائم فریم بیک ٹسٹنگ نتائج کو زیادہ قائل کرتی ہے۔

  5. سادہ اور واضح حکمت عملی کے قواعد کو لاگو کرنا آسان ہے.

خطرات

  1. بولنگر بینڈ بعض حالات میں ناکام ہو سکتے ہیں۔

  2. دونوں حکمت عملیوں میں قبل از وقت یا تاخیر سے روکنے کے خطرات.

  3. سی سی آئی غلط سگنل پیدا کر سکتا ہے۔

  4. احتیاط سے بیک ٹسٹ تعصب کو ہینڈل کریں.

  5. اصلاح سے زیادہ فٹ ہونے کا خطرہ ہوتا ہے۔

بہتری

  1. بہترین مجموعے تلاش کرنے کے لئے ٹیسٹ پیرامیٹرز.

  2. دوسرے اشارے کے ساتھ فلٹرز کا اضافہ کرنے کا جائزہ لیں.

  3. خطرات کو کم کرنے کے لئے اسٹاپ کو بہتر بنائیں.

  4. چینل کی چوڑائی کے لئے موافقت پذیر طریقوں کی تحقیق.

  5. مزید علامتوں اور ٹائم فریم کے ساتھ تصدیق کریں.

  6. پیرامیٹرز کو متحرک طور پر بہتر بنانے کے لیے مشین لرننگ کا استعمال کریں۔

نتیجہ

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


/*backtest
start: 2022-09-13 00:00:00
end: 2023-09-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title = "Underworld Hunter", overlay=true)

len = input(75, minval=1, title="Length")
src = input(close, title="Source")
basis = 0.0
basis := na(basis[1]) ? sma(src, len) : ema(ema(ema(src,len),len),len)

mult = input(1.9, minval=0.001, maxval=50, title="Deviation")
dev = mult * stdev(src, len)
upper = basis + dev
lower = basis - dev

//CCI calculation and inputs

lengthcci = input(20, minval=1, title="Period for CCI")
ma = sma(close, lengthcci)
ccivalue = (src - ma) / (0.015 * dev(src, lengthcci))

//CCI plotting

cciover0 = ccivalue >= 100 and ccivalue <= 120
cciover1 = ccivalue > 120 and ccivalue <= 140
cciover2 = ccivalue > 140 and ccivalue <= 160
cciover3 = ccivalue > 160 and ccivalue <= 180
cciover4 = ccivalue > 180

cciunder0 = ccivalue <= -100 and ccivalue >= -120
cciunder1 = ccivalue <= -120 and ccivalue > -140
cciunder2 = ccivalue <= -140 and ccivalue > -160
cciunder3 = ccivalue <= -160 and ccivalue > -180
cciunder4 = ccivalue <= -180

plotshape(cciover0, title="CCIO0", location=location.abovebar, color=#c6ff1a, transp=0, style=shape.circle, size=size.tiny)
plotshape(cciunder0, title="CCIU0", location=location.belowbar, color=#c6ff1a, transp=0, style=shape.circle, size=size.tiny)
plotshape(cciover1, title="CCIO1", location=location.abovebar, color=#ffff00, transp=0,style=shape.circle, size=size.tiny)
plotshape(cciunder1, title="CCIU1", location=location.belowbar, color=#ffff00, transp=0, style=shape.circle, size=size.tiny)
plotshape(cciover2, title="CCIO2", location=location.abovebar, color=#ff9900, transp=0, style=shape.circle, size=size.tiny)
plotshape(cciunder2, title="CCIU2", location=location.belowbar, color=#ff9900, transp=0, style=shape.circle, size=size.tiny)
plotshape(cciover3, title="CCIO3", location=location.abovebar, color=#ff0000, transp=0, style=shape.circle, size=size.tiny)
plotshape(cciunder3, title="CCIU3", location=location.belowbar, color=#ff0000, transp=0, style=shape.circle, size=size.tiny)
plotshape(cciover4, title="CCIO4", location=location.abovebar, color=#cc00cc, transp=0,style=shape.circle, size=size.tiny)
plotshape(cciunder4, title="CCIU4", location=location.belowbar, color=#cc00cc, transp=0,style=shape.circle, size=size.tiny)

//plotting

plot(upper, title="Upper shadow", color=color.black, transp = 30, linewidth = 4)
plot(upper, title="Upper line", color=#FF2E00, transp = 0, linewidth = 2)
plot(lower, title="Lower shadow", color=color.black, transp = 30, linewidth = 4)
plot(lower, title="Lower line", color=#FF2E00, transp = 0, linewidth = 2)
plot(basis, title="Basic line", color=color.red, transp = 50, linewidth = 2)

mean = input(title="Test Reverse to the Mean instead", type=input.bool, defval=false)
test = input(title="Enable testing", type=input.bool, defval=true)

ordersize=floor(50000/close)

if(close>upper and strategy.opentrades==0 and not mean and test)
    strategy.entry("Hunt Up", strategy.long, ordersize)
if (close<upper and close[1]<upper and close[2]<upper)
    strategy.close("Hunt Up", qty_percent = 100, comment = "Hunt End")

if(close<lower and strategy.opentrades==0 and not mean and test)
    strategy.entry("Hunt Down", strategy.short, ordersize)
if (close>lower and close[1]>lower and close[2]>lower)
    strategy.close("Hunt Down", qty_percent = 100, comment = "Hunt End")

//bounce of bands

if(close>upper and strategy.opentrades==0 and mean and test)
    strategy.entry("Sneak Down", strategy.short, ordersize)
if (close<upper and close[1]<upper and close[2]<upper and close>high[1])
    strategy.close("Sneak Down", qty_percent = 100, comment = "SneakEnd")

if(close<lower and strategy.opentrades==0 and mean and test)
    strategy.entry("Sneak Up", strategy.long, ordersize)
if (close>lower and close[1]>lower and close[2]>lower and close<low[1])
    strategy.close("Sneak Up", qty_percent = 100, comment = "Sneak End")




مزید