وسائل لوڈ ہو رہے ہیں... لوڈنگ...

Bollinger Bands اور ATR پر مبنی کثیر سطحہ ذہین متحرک ٹریلنگ اسٹاپ حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-12-11 14:52:24
ٹیگز:بی بیاے ٹی آرایم اےایس ایم اےای ایم اےایس ایم ایم اےڈبلیو ایم اےوی ڈبلیو ایم اےایس ڈی

img

جائزہ

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

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

بنیادی منطق میں کئی اہم اجزاء شامل ہیں:

  1. داخلہ کی شرائط: ایک سبز موم بتی کی ضرورت ہوتی ہے جو سرخ موم بتی کے بعد نیچے بولنگر بینڈ کو چھوتی ہے ، عام طور پر ممکنہ الٹ سگنل کی نشاندہی کرتی ہے۔
  2. چلتی اوسط کا انتخاب: ڈیفالٹ 20 پیریڈ ایس ایم اے کے ساتھ متعدد اقسام (ایس ایم اے ، ای ایم اے ، ایس ایم ایم اے ، ڈبلیو ایم اے ، وی ڈبلیو ایم اے) کی حمایت کرتا ہے۔
  3. بولنگر بینڈ پیرامیٹرز: بینڈوڈتھ کے لئے 1.5 معیاری انحراف کا استعمال کرتا ہے ، جو روایتی 2 معیاری انحراف سے زیادہ محتاط ہے۔
  4. منافع لینے کا طریقہ کار: ابتدائی 20 فیصد منافع کا ہدف طے کرتا ہے۔
  5. اسٹاپ نقصان کا طریقہ کار: سرمایہ کی حفاظت کے لئے 12 فیصد فکسڈ اسٹاپ نقصان کا نفاذ۔
  6. متحرک ٹریک سٹاپ:
    • منافع کے ہدف تک پہنچنے کے بعد اے ٹی آر ٹریلنگ اسٹاپ کو چالو کرتا ہے
    • اوپری بولنگر بینڈ کو چھونے کے بعد اے ٹی آر متحرک ٹریلنگ اسٹاپ شروع کرتا ہے
    • متحرک طور پر پیچھے رکنے فاصلے کو ایڈجسٹ کرنے کے لئے ATR ضرب استعمال کرتا ہے

حکمت عملی کے فوائد

  1. متعدد سطحوں پر خطرہ کنٹرول:
    • مقررہ سٹاپ نقصان کا بنیادی تحفظ
    • منافع میں متحرک ٹریلنگ اسٹاپ لاکس
    • اپر بولنگر بینڈ ٹرگرڈ ڈائنامک اسٹاپ اضافی تحفظ فراہم کرتا ہے
  2. لچکدار حرکت پذیر اوسط انتخاب مختلف مارکیٹ کے حالات کے مطابق ڈھالنے کی اجازت دیتا ہے
  3. اے ٹی آر پر مبنی متحرک ٹریلنگ اسٹاپ مارکیٹ کی اتار چڑھاؤ کی بنیاد پر خود بخود ایڈجسٹ ہوتا ہے ، جو قبل از وقت باہر نکلنے سے روکتا ہے
  4. انٹری سگنل قیمت کے نمونوں اور تکنیکی اشارے کو یکجا کرتے ہیں، سگنل کی وشوسنییتا کو بہتر بناتے ہیں
  5. پوزیشن مینجمنٹ اور ٹرانزیکشن لاگت کی ترتیبات کی حمایت کرتا ہے، حقیقی تجارتی حالات کے قریب

حکمت عملی کے خطرات

  1. تیزی سے اتار چڑھاؤ والی منڈیوں کے نتیجے میں کثرت سے تجارت ہوسکتی ہے ، جس سے لین دین کی لاگت میں اضافہ ہوتا ہے
  2. 12 فیصد فکسڈ اسٹاپ نقصان انتہائی اتار چڑھاؤ والے بازاروں میں بہت تنگ ہوسکتا ہے
  3. بولنگر بینڈ سگنل رجحان مارکیٹوں میں جھوٹے سگنل پیدا کر سکتے ہیں
  4. ATR ٹرائلنگ اسٹاپ شدید اتار چڑھاؤ کے دوران زیادہ سے زیادہ ڈراؤونگ کا باعث بن سکتا ہے تخفیف کے اقدامات:
  • طویل عرصے تک استعمال کرنے کی سفارش (30 منٹ سے 1 گھنٹہ)
  • اسٹاپ نقصان کی شرح کو مخصوص آلات کی خصوصیات کی بنیاد پر ایڈجسٹ کریں
  • غلط سگنل کو کم کرنے کے لئے رجحان فلٹرز شامل کرنے پر غور کریں
  • مختلف مارکیٹ ماحول کے لئے متحرک طور پر ATR ضرب کو ایڈجسٹ کریں

حکمت عملی کی اصلاح کی ہدایات

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

خلاصہ

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


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Demo GPT - Bollinger Bands Strategy with Tightened Trailing Stops", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_value=0.1, slippage=3)

// Input settings
length = input.int(20, minval=1)
maType = input.string("SMA", "Basis MA Type", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
src = input(close, title="Source")
mult = 1.5 // Standard deviation multiplier set to 1.5
offset = input.int(0, "Offset", minval=-500, maxval=500)
atrMultiplier = input.float(1.0, title="ATR Multiplier for Trailing Stop", minval=0.1) // ATR multiplier for trailing stop

// Time range filters
start_date = input(timestamp("2018-01-01 00:00"), title="Start Date")
end_date = input(timestamp("2069-12-31 23:59"), title="End Date")
in_date_range = true

// Moving average function
ma(source, length, _type) =>
    switch _type
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

// Calculate Bollinger Bands
basis = ma(src, length, maType)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev

// ATR Calculation
atr = ta.atr(length) // Use ATR for trailing stop adjustments

// Plotting
plot(basis, "Basis", color=#2962FF, offset=offset)
p1 = plot(upper, "Upper", color=#F23645, offset=offset)
p2 = plot(lower, "Lower", color=#089981, offset=offset)
fill(p1, p2, title="Background", color=color.rgb(33, 150, 243, 95))

// Candle color detection
isGreen = close > open
isRed = close < open

// Flags for entry and exit conditions
var bool redTouchedLower = false
var float targetPrice = na
var float stopLossPrice = na
var float trailingStopPrice = na

if in_date_range
    // Entry Logic: First green candle after a red candle touches the lower band
    if close < lower and isRed
        redTouchedLower := true
    if redTouchedLower and isGreen
        strategy.entry("Long", strategy.long)
        targetPrice := close * 1.2       // Set the target price to 20% above the entry price
        stopLossPrice := close * 0.88   // Set the stop loss to 12% below the entry price
        trailingStopPrice := na         // Reset trailing stop on entry
        redTouchedLower := false

    // Exit Logic: Trailing stop after 20% price increase
    if strategy.position_size > 0 and not na(targetPrice) and close >= targetPrice
        if na(trailingStopPrice)
            trailingStopPrice := close - atr * atrMultiplier // Initialize trailing stop using ATR
        trailingStopPrice := math.max(trailingStopPrice, close - atr * atrMultiplier) // Tighten dynamically based on ATR

    // Exit if the price falls below the trailing stop after 20% increase
    if strategy.position_size > 0 and not na(trailingStopPrice) and close < trailingStopPrice
        strategy.close("Long", comment="Trailing Stop After 20% Increase")
        targetPrice := na // Reset the target price
        stopLossPrice := na // Reset the stop loss price
        trailingStopPrice := na // Reset trailing stop

    // Stop Loss: Exit if the price drops 12% below the entry price
    if strategy.position_size > 0 and not na(stopLossPrice) and close <= stopLossPrice
        strategy.close("Long", comment="Stop Loss Triggered")
        targetPrice := na // Reset the target price
        stopLossPrice := na // Reset the stop loss price
        trailingStopPrice := na // Reset trailing stop

    // Trailing Stop: Activate after touching the upper band
    if strategy.position_size > 0 and close >= upper and isGreen
        if na(trailingStopPrice)
            trailingStopPrice := close - atr * atrMultiplier // Initialize trailing stop using ATR
        trailingStopPrice := math.max(trailingStopPrice, close - atr * atrMultiplier) // Tighten dynamically based on ATR

    // Exit if the price falls below the trailing stop
    if strategy.position_size > 0 and not na(trailingStopPrice) and close < trailingStopPrice
        strategy.close("Long", comment="Trailing Stop Triggered")
        trailingStopPrice := na // Reset trailing stop
        targetPrice := na // Reset the target price
        stopLossPrice := na // Reset the stop loss price


متعلقہ

مزید