
এই কৌশলটি একটি গতিশীল ট্রেন্ড ট্র্যাকিং সিস্টেম যা একটি দ্বৈত চলমান গড় চ্যানেলের উপর ভিত্তি করে, একটি ঝুঁকি ব্যবস্থাপনা ব্যবস্থার সাথে মিলিত। এই কৌশলটি একটি ট্রেডিং চ্যানেল তৈরি করতে দুটি সরল চলমান গড় (SMA) ব্যবহার করে, যেখানে উপরের রেল সর্বোচ্চ মূল্য দ্বারা গণনা করা চলমান গড় ব্যবহার করে এবং নিম্ন রেল সর্বনিম্ন মূল্য দ্বারা গণনা করা চলমান গড় ব্যবহার করে। গতিশীল প্রবণতা অর্জনের জন্য, সিস্টেমটি উপরের ট্র্যাকটি অতিক্রম করে পরপর পাঁচটি K-লাইন বন্ধের দামকে প্রবেশ সংকেত হিসেবে ব্যবহার করে এবং নিম্ন ট্র্যাকের নীচে নেমে আসা বা সর্বোচ্চ বিন্দু থেকে 25% পিছিয়ে যাওয়াকে বহির্গমন সংকেত হিসেবে ব্যবহার করে। ট্র্যাকিং এবং ঝুঁকি নিয়ন্ত্রণ। ।
কৌশলটির মূল নীতি হল ডবল মুভিং এভারেজ চ্যানেলের মাধ্যমে দামের প্রবণতা ক্যাপচার করা এবং একটি কঠোর প্রবেশ এবং প্রস্থান প্রক্রিয়া স্থাপন করা:
এই কৌশলটি প্রবণতাগুলির কার্যকর ট্র্যাকিং এবং কার্যকর ঝুঁকি নিয়ন্ত্রণ অর্জনের জন্য কঠোর এন্ট্রি নিশ্চিতকরণ এবং দ্বৈত প্রস্থান প্রক্রিয়ার সাথে মিলিত ডুয়াল মুভিং এভারেজ চ্যানেলের মাধ্যমে একটি সম্পূর্ণ ট্রেন্ড ট্র্যাকিং ট্রেডিং সিস্টেম তৈরি করে। কৌশলটির সুবিধা সুস্পষ্ট কার্যকরী যুক্তি এবং নিখুঁত ঝুঁকি নিয়ন্ত্রণের মধ্যে নিহিত, তবে পরামিতিগুলিকে এখনও বিভিন্ন বাজার পরিবেশের জন্য অপ্টিমাইজ করা দরকার এবং বাজার পরিবেশ ফিল্টারিং এবং বহু-সময়ের নিশ্চিতকরণ যোগ করে আরও উন্নত করা যেতে পারে। সামগ্রিকভাবে, এটি সম্পূর্ণ কাঠামো এবং কঠোর যুক্তি সহ একটি পরিমাণগত ট্রেডিং কৌশল, সুস্পষ্ট প্রবণতা সহ বাজারের পরিবেশে প্রয়োগের জন্য উপযুক্ত।
/*backtest
start: 2025-01-02 00:00:00
end: 2025-01-09 00:00:00
period: 10m
basePeriod: 10m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/
//@version=5
strategy("Moving Average Channel (MAC)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// Parameters for Moving Averages
upperMALength = input.int(10, title="Upper MA Length")
lowerMALength = input.int(8, title="Lower MA Length")
stopLossPercent = input.float(25.0, title="Stop Loss (%)", minval=0.1) / 100
// Calculate Moving Averages
upperMA = ta.sma(high, upperMALength)
lowerMA = ta.sma(low, lowerMALength)
// Plot Moving Averages
plot(upperMA, color=color.red, title="Upper Moving Average")
plot(lowerMA, color=color.green, title="Lower Moving Average")
// Initialize variables
var int upperCounter = 0
var int lowerCounter = 0
var float entryPrice = na
var float highestPrice = na
// Update counters based on conditions
if (low <= upperMA)
upperCounter := 0
else
upperCounter += 1
if (high >= lowerMA)
lowerCounter := 0
else
lowerCounter += 1
// Entry condition: 5 consecutive bars above the Upper MA
if (upperCounter == 5 and strategy.position_size == 0)
strategy.entry("Long", strategy.long)
highestPrice := high // Initialize highest price
// Update the highest price after entry
if (strategy.position_size > 0)
highestPrice := na(highestPrice) ? high : math.max(highestPrice, high)
// Exit condition: 5 consecutive bars below the Lower MA
if (lowerCounter == 5 and strategy.position_size > 0)
strategy.close("Long", comment="Exit: 5 bars below Lower MA")
// Stop-loss condition: Exit if market closes below 25% of the highest price since entry
stopLossCondition = low < highestPrice * (1 - stopLossPercent)
if (stopLossCondition and strategy.position_size > 0)
strategy.close("Long", comment="Exit: Stop Loss")