حکمت عملی کے بعد رفتار میں اتار چڑھاؤ


تخلیق کی تاریخ: 2023-11-28 16:57:28 آخر میں ترمیم کریں: 2023-11-28 16:57:28
کاپی: 1 کلکس کی تعداد: 630
1
پر توجہ دیں
1619
پیروکار

حکمت عملی کے بعد رفتار میں اتار چڑھاؤ

جائزہ

یہ حکمت عملی ایک بُرین بینڈ پر مبنی متحرک اتار چڑھاؤ ٹریکنگ حکمت عملی ہے۔ یہ بُرین بینڈ اشارے کے ساتھ مل کر مارکیٹ کے رجحانات اور الٹ پوائنٹس کا تعین کرتی ہے ، جس سے مارکیٹ میں اتار چڑھاؤ کا تعین ہوتا ہے۔

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

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

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

طاقت کا تجزیہ

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

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

خطرے کا تجزیہ

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

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

اصلاح کی سمت

اس حکمت عملی میں مندرجہ ذیل نکات کو بہتر بنایا جاسکتا ہے:

  1. برین بینڈ کے پیرامیٹرز کو مختلف مارکیٹوں کے مطابق ایڈجسٹ کیا جاسکتا ہے تاکہ بہترین پیرامیٹرز کا مجموعہ تلاش کیا جاسکے۔
  2. رجحانات کے انحراف کی وسعت اور اوسط کے حساب سے دوسرے اختیارات کی جانچ کی جاسکتی ہے۔
  3. مزید فلٹرز شامل کرنے سے حراستی سگنل کا تعین کرنے میں غلطی کا امکان کم ہوجاتا ہے۔
  4. نقصان کو روکنے کے لئے ٹیسٹ کرنے کے لئے دوسرے طریقوں جیسے ٹریل نقصان کو روکنے کے لئے.
  5. مخصوص نسلوں اور دورانیوں کے لئے پیرامیٹرز کو ایڈجسٹ کیا جا سکتا ہے.

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-11-20 00:00:00
end: 2023-11-27 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=3
strategy("Noro's Bollinger Strategy v1.3", shorttitle = "Bollinger str 1.3", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100.0, pyramiding = 5)

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

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

uset = input(true, defval = true, title = "Use trend entry")
usect = input(true, defval = true, title = "Use counter-trend entry")

fromyear = input(2018, defval = 2018, 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
body = abs(close - open)
abody = ema(body, 30)

//Signals
bar = close > open ? 1 : close < open ? -1 : 0 
up1 = bar == -1 and ohlc4 >= basis and ohlc4 < upper and (close < strategy.position_avg_price or strategy.position_size == 0) and uset
dn1 = bar == 1 and ohlc4 <= basis and ohlc4 > lower and (close > strategy.position_avg_price or strategy.position_size == 0) and uset
up2 = close <= lower and usect
dn2 = close >= upper and usect
exit = ((strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open)) and body > abody / 2

//Trading
if up1 or up2
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

if dn1 or dn2
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
    strategy.close_all()