ایک سے زیادہ فلٹر بولنگر بینڈ تجارتی حکمت عملی


تخلیق کی تاریخ: 2024-01-17 15:12:57 آخر میں ترمیم کریں: 2024-01-17 15:12:57
کاپی: 1 کلکس کی تعداد: 592
1
پر توجہ دیں
1617
پیروکار

ایک سے زیادہ فلٹر بولنگر بینڈ تجارتی حکمت عملی

جائزہ

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

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

اشارے کا حساب کتاب

اس حکمت عملی میں بنیادی طور پر تین اشارے استعمال کیے جاتے ہیں: برلن بینڈ ، اوسط لائن اور آر ایس آئی۔ اس میں ، برلن بینڈ کا وسط سٹریٹ قیمت کی n دن کی سادہ حرکت پذیری اوسط ہے ، اور اوپری اور نچلے سٹریٹ بالترتیب وسط سٹریٹ + 2 گنا معیاری فرق اور وسط سٹریٹ -2 گنا معیاری فرق ہے۔ آر ایس آئی اشارے 0 ~ 100 کے درمیان کی ایک حد ہے جو ایک خاص مدت میں اتار چڑھاؤ کی بنیاد پر شمار کی جاتی ہے۔

ٹریڈنگ سگنل

یہ حکمت عملی تین اہم شرائط پر مبنی ہے جو ٹریڈنگ سگنل پیدا کرتی ہے:

(1) برین نیچے کی طرف ٹوٹ جاتا ہے اور K لائن کا ادارہ پیچھے ہٹ جاتا ہے۔ جب بند ہونے والی قیمت نیچے کی طرف ٹوٹ جاتی ہے اور اس K لائن کا ادارہ رنگ موجودہ رجحان کی سمت کے برعکس ہوتا ہے تو زیادہ کریں۔

(2) برن بیلٹ ٹریک ٹوٹ گیا اور K لائن کی ہستی کا الٹا ردوبدل۔ جب بند ہونے والی قیمت کے نیچے ٹریک ہوتا ہے اور اس K لائن کی ہستی کا رنگ موجودہ رجحان کی سمت کے برعکس ہوتا ہے تو ، خالی کریں۔

(3) K لائن ہستی کا رخ کرنا۔ اگر پوزیشن رکھنے کی سمت K لائن ہستی کے رنگ کے رخ سے مطابقت رکھتی ہے تو ، ہموار پوزیشن۔

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

طاقت کا تجزیہ

  • متعدد حالات کو سختی سے کنٹرول کرنے سے جعلی توڑ پھوڑ کے خطرات کو کم کیا جاسکتا ہے
  • ٹرینڈ ٹریک کرنے سے ٹریڈنگ کی فریکوئنسی کم ہوتی ہے
  • RSI اشارے معاون فیصلے سے الٹ پلٹ کے جال سے بچا جا سکتا ہے

خطرے کا تجزیہ

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

برین بینڈ پیرامیٹرز کو ایڈجسٹ کرکے اور اسٹاپ نقصان کو سختی سے کنٹرول کرکے خطرے کو کم کیا جاسکتا ہے۔

اصلاح کی سمت

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-12-17 00:00:00
end: 2024-01-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=3
strategy("Noro's Bollinger Strategy v1.4", shorttitle = "Bollinger str 1.4", overlay = true )

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(false, defval = false, title = "Short")

length = input(20, defval = 20, minval = 1, maxval = 1000, title = "Bollinger Length")
mult = input(1, defval = 1, minval = 0.001, maxval = 50, title = "Bollinger Mult")
source = input(ohlc4, defval = ohlc4, title = "Bollinger Source")

usebf = input(true, defval = true, title = "Use body-filter")
usecf = input(true, defval = true, title = "Use color-filter")
userf = input(true, defval = true, title = "Use RSI-filter")

fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
showbands = input(true, defval = true, title = "Show Bollinger Bands")

//Bollinger Bands
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev

//Lines
col = showbands ? black : na 
plot(upper, linewidth = 1, color = col)
plot(basis, linewidth = 1, color = col)
plot(lower, linewidth = 1, color = col)

//Body filter
nbody = abs(close - open)
abody = sma(nbody, 10)
body = nbody > abody / 2 or usebf == false

//Color filter
bar = close > open ? 1 : close < open ? -1 : 0 
gb = bar == 1 or usecf == false
rb = bar == -1 or usecf == false

//RSI Filter
fastup = rma(max(change(close), 0), 7)
fastdown = rma(-min(change(close), 0), 7)
rsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))
ursi = rsi > 70 or userf == false
drsi = rsi < 30 or userf == false

//Signals
up = close <= lower and rb and body and drsi and (close < strategy.position_avg_price or strategy.position_size == 0)
dn = close >= upper and gb and body and ursi and (close > strategy.position_avg_price or strategy.position_size == 0)
exit = ((strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open)) and body

//Trading
if up
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

if dn
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
    
if  exit
    strategy.close_all()