রিসোর্স লোড হচ্ছে... লোডিং...

Bollinger Bands এবং ATR এর উপর ভিত্তি করে মাল্টি-লেভেল ইন্টেলিজেন্ট ডায়নামিক ট্রেইলিং স্টপ কৌশল

লেখক:চাওঝাং, তারিখঃ 2024-12-11 14:52:24
ট্যাগঃবি বিএটিআরএমএএসএমএইএমএএসএমএমএডব্লিউএমএভিডব্লিউএমএএসডি

img

সারসংক্ষেপ

এই কৌশলটি বোলিংজার ব্যান্ড এবং এটিআর সূচকগুলির উপর ভিত্তি করে একটি বুদ্ধিমান ট্রেডিং সিস্টেম, যা বহু-স্তরের মুনাফা গ্রহণ এবং স্টপ-লস প্রক্রিয়া অন্তর্ভুক্ত করে। কৌশলটি মূলত নিম্ন বোলিংজার ব্যান্ডের কাছাকাছি বিপরীত সংকেত সনাক্ত করে এবং গতিশীল ট্রেইলিং স্টপ ব্যবহার করে ঝুঁকি পরিচালনা করে দীর্ঘ অবস্থানে প্রবেশ করে। সিস্টেমটি 20% মুনাফা লক্ষ্য এবং 12% স্টপ-লস স্তরের সাথে ডিজাইন করা হয়েছে, যখন এটিআর-ভিত্তিক গতিশীল ট্রেইলিং স্টপগুলিকে মুনাফা রক্ষা করার জন্য অন্তর্ভুক্ত করা হয় যখন প্রবণতা বিকাশের জন্য পর্যাপ্ত জায়গা দেয়।

কৌশলগত নীতি

মূল যুক্তিতে বেশ কয়েকটি মূল উপাদান অন্তর্ভুক্ত রয়েছেঃ

  1. প্রবেশের শর্তাবলীঃ নীচের বোলিংজার ব্যান্ড স্পর্শ করে একটি লাল মোমবাতি অনুসরণ করে একটি সবুজ মোমবাতি প্রয়োজন, সাধারণত একটি সম্ভাব্য বিপরীত সংকেত নির্দেশ করে।
  2. চলমান গড় নির্বাচনঃ ডিফল্ট 20-অবধি এসএমএ সহ একাধিক ধরণের (এসএমএ, ইএমএ, এসএমএমএ, ডাব্লুএমএ, ভিডাব্লুএমএ) সমর্থন করে।
  3. বোলিংজার ব্যান্ডের পরামিতিঃ ব্যান্ডউইথের জন্য ১.৫ স্ট্যান্ডার্ড ডিভিয়েশন ব্যবহার করে, যা ঐতিহ্যগত ২ স্ট্যান্ডার্ড ডিভিয়েশনের চেয়ে বেশি সংরক্ষণশীল।
  4. মুনাফা গ্রহণের প্রক্রিয়াঃ প্রাথমিক ২০% মুনাফা লক্ষ্যমাত্রা নির্ধারণ করা হয়।
  5. স্টপ লস ব্যবস্থাঃ মূলধন রক্ষার জন্য ১২% স্থির স্টপ লস ব্যবস্থা চালু করা হয়েছে।
  6. ডায়নামিক ট্রেইলিং স্টপঃ
    • লাভের লক্ষ্যমাত্রা অর্জনের পর ATR ট্রেলিং স্টপ সক্রিয় করে
    • উপরের বোলিংজার ব্যান্ড স্পর্শ করার পর এটিআর ডাইনামিক ট্রেইলিং স্টপ শুরু করে
    • গতিশীলভাবে ট্রেইলিং স্টপ দূরত্ব সামঞ্জস্য করতে ATR গুণক ব্যবহার করে

কৌশলগত সুবিধা

  1. একাধিক স্তরের ঝুঁকি নিয়ন্ত্রণঃ
    • স্থির স্টপ লস মূলধন রক্ষা করে
    • মুনাফায় গতিশীল ট্রেলিং স্টপ লক
    • উপরের বোলিংজার ব্যান্ড ট্রিগার ডাইনামিক স্টপ অতিরিক্ত সুরক্ষা প্রদান করে
  2. নমনীয় চলমান গড় নির্বাচন বিভিন্ন বাজারের অবস্থার সাথে অভিযোজিত করার অনুমতি দেয়
  3. এটিআর-ভিত্তিক গতিশীল ট্রেলিং স্টপ বাজারের অস্থিরতার উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে সামঞ্জস্য করে, অকাল প্রস্থান রোধ করে
  4. এন্ট্রি সিগন্যালগুলি মূল্যের প্যাটার্ন এবং প্রযুক্তিগত সূচকগুলিকে একত্রিত করে, সিগন্যালের নির্ভরযোগ্যতা উন্নত করে
  5. প্রকৃত ট্রেডিং অবস্থার কাছাকাছি অবস্থান পরিচালনা এবং লেনদেনের খরচ সেটিং সমর্থন করে

কৌশলগত ঝুঁকি

  1. দ্রুত দোলনশীল বাজারগুলি ঘন ঘন ব্যবসায়ের দিকে পরিচালিত করতে পারে, লেনদেনের ব্যয় বাড়িয়ে তুলতে পারে
  2. উচ্চ অস্থিরতার বাজারে ১২% ফিক্সড স্টপ লস খুব কম হতে পারে
  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


সম্পর্কিত

আরো