بینڈ چینلز پر مبنی ملٹی ٹائم فریم تجارتی حکمت عملی


تخلیق کی تاریخ: 2023-09-20 15:47:46 آخر میں ترمیم کریں: 2023-09-20 15:47:46
کاپی: 0 کلکس کی تعداد: 772
1
پر توجہ دیں
1617
پیروکار

جائزہ

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

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

  1. حساب لگانے کے لئے خود کو اپنانے کے لئے Wavelength چینل کے اوپر اور نیچے ریل، چینل کی چوڑائی پیرامیٹرز کے ذریعے ایڈجسٹ کیا گیا

  2. بریک ٹریکنگ کی حکمت عملی ، جس میں قیمتوں کے راستے کو توڑنے کے بعد پوزیشن کھولی جاتی ہے ، اور راستے کے اندر ہونے پر رک جاتی ہے۔

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

  4. سی سی آئی کے اشارے سے زیادہ ہوائی لائنوں کا تعین کرنے میں مدد ملتی ہے۔

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

طاقت کا تجزیہ

  1. Wavelength Channel بہت آسان اور بدیہی ہے، اور قیمتوں کے رجحانات کو مؤثر طریقے سے پکڑتا ہے.

  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")