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

চলমান গড় ক্রসওভারের উপর ভিত্তি করে কৌশল অনুসরণ করে প্রবণতা

লেখক:চাওঝাং, তারিখঃ 2024-01-31 15:17:31
ট্যাগঃ

img

সারসংক্ষেপ

এই কৌশলটি বিভিন্ন ধরণের চলমান গড় (সহজ চলমান গড় এসএমএ, এক্সপোনেনশিয়াল চলমান গড় ইএমএ, হাল্ল চলমান গড় এইচএমএ এবং ওয়েটেড চলমান গড় ভিডাব্লুএমএ) গণনা করে এবং তাদের মধ্যে ক্রসওভার পয়েন্টগুলি সনাক্ত করে, বাজারের প্রবণতা নির্ধারণ এবং অনুসরণ করার জন্য ট্রেডিং সংকেত উত্পন্ন করে। এটি যখন স্বল্পমেয়াদী এমএ নীচে থেকে দীর্ঘমেয়াদী এমএ এর উপরে ক্রস করে তখন এটি কিনতে সংকেত উত্পন্ন করে এবং বিপরীত ক্রসিং ঘটে তখন সংকেত বিক্রি করে।

কৌশলগত যুক্তি

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

যখন স্বল্পমেয়াদী এমএ নীচে থেকে দীর্ঘমেয়াদী এমএ অতিক্রম করে, তখন এটি সংকেত দেয় যে স্বল্পমেয়াদী প্রবণতা শক্তিশালী হচ্ছে এবং বাজার একটি ঊর্ধ্বমুখী প্রবণতায় প্রবেশ করছে। সুতরাং এই ক্রসওভার পয়েন্টে একটি ক্রয় সংকেত উত্পন্ন হয়। বিপরীতভাবে, যখন স্বল্পমেয়াদী এমএ দীর্ঘমেয়াদী এমএ এর নীচে অতিক্রম করে, তখন এটি সংক্ষিপ্ত মেয়াদী প্রবণতা দুর্বল হচ্ছে এবং বাজারটি নেমে যাচ্ছে। সেই অনুযায়ী, একটি বিক্রয় সংকেত উত্পন্ন হয়।

এই ধরনের এমএ ক্রসওভারগুলি সনাক্ত করে, এই কৌশলটি বাজারের ট্রেডিংয়ের প্রবণতা অনুসরণ করে।

সুবিধা

  • প্রধান প্রবণতা নির্ধারণের জন্য ক্লাসিক এবং প্রাকটিক্যাল এমএ ক্রসওভার পদ্ধতি ব্যবহার করে
  • বিভিন্ন মঞ্জুরি প্রকারের সমন্বয় সমর্থন করে, নমনীয়তা প্রদান করে
  • সহজ এবং পরিষ্কার যুক্তি, সহজেই বুঝতে এবং স্বয়ংক্রিয়
  • কনফিগারযোগ্য প্যারামিটারগুলি বিভিন্ন বাজারের অবস্থার সাথে খাপ খায়

ঝুঁকি বিশ্লেষণ

  • এমএ-র বিলম্বিত প্রভাব রয়েছে, যখন দামের ক্রিয়াকলাপ ইতিমধ্যে ঘটেছে তখন সিগন্যালগুলি টার্নিং পয়েন্টে বা তার কাছে আসতে পারে
  • প্রবণতা মূল্যায়ন ভুল হতে পারে, অপ্রয়োজনীয় ক্ষতির কারণ হতে পারে
  • বিভিন্ন এমএ প্যারামিটার সেটিংসের সাথে ফলাফলগুলি উল্লেখযোগ্যভাবে পরিবর্তিত হয়

সমাধান:

  • আরও ভাল সংবেদনশীলতার জন্য সংক্ষিপ্ত এমএ সময়কাল ব্যবহার করুন
  • ভুল এড়াতে ক্রস-ভেরিফিকেশন জন্য অন্যান্য ফিল্টার যোগ করুন
  • প্যারামিটার অপ্টিমাইজেশান পদ্ধতি যেমন ব্রুট ফোর্স, মেশিন লার্নিং, জেনেটিক অ্যালগরিদম
  • কন্ট্রোল পজিশন ডিজাইনিং এবং স্টপ লস সঠিকভাবে

উন্নতির দিকনির্দেশ

  • নির্ভুলতা বাড়ানোর জন্য ফিল্টার হিসাবে অন্যান্য সূচক যোগ করুন
  • পরিবর্তিত বাজারের অবস্থার উপর ভিত্তি করে অটো-অ্যাডাপ্ট ম্যানেজমেন্ট ম্যানেজমেন্ট প্যারামিটার
  • স্বয়ংক্রিয় প্যারামিটার অপ্টিমাইজেশনের জন্য মেশিন লার্নিং ব্যবহার করুন
  • স্টপ লস কৌশলকে পরিমার্জন করুন

সিদ্ধান্ত

এই কৌশলটি প্রধান প্রবণতা সনাক্তকরণের জন্য এমএ ক্রসওভার ব্যবহারের ক্লাসিক ধারণার উপর ভিত্তি করে। নমনীয় এমএ সংমিশ্রণের সাথে এটি বাস্তবায়ন করা সহজ এবং অ্যালগরিদমিক ট্রেডিং অটোমেশনের জন্য উপযুক্ত। সামগ্রিকভাবে এটি যুক্তিসঙ্গতভাবে ব্যবহারিক তবে পারফরম্যান্স আরও উন্নত করতে প্যারামিটার টিউনিং, অতিরিক্ত ফিল্টার ইত্যাদির মতো বর্ধনের জন্য জায়গা ছেড়ে দেয়।


/*backtest
start: 2023-12-31 00:00:00
end: 2024-01-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//study(title="MA Crossover Strategy", overlay = true)
strategy("MA Crossover Strategy", overlay=true)
src = input(close, title="Source")

price = request.security(syminfo.tickerid, timeframe.period, src)
ma1 = input(25, title="1st MA Length")
type1 = input("HMA", "1st MA Type", options=["SMA", "EMA", "HMA", "VWMA"])

ma2 = input(7, title="2nd MA Length")
type2 = input("HMA", "2nd MA Type", options=["SMA", "EMA", "HMA", "VWMA"])

f_hma(_src, _length)=>
    _return = wma((2*wma(_src, _length/2))-wma(_src, _length), round(sqrt(_length)))

price1 = if (type1 == "SMA")
    sma(price, ma1)
else
    if (type1 == "EMA")
        ema(price, ma1)
    else
        if (type1 == "VWMA")
            vwma(price, ma1)
        else
            f_hma(price, ma1)
    
price2 = if (type2 == "SMA")
    sma(price, ma2)
else
    if (type2 == "EMA")
        ema(price, ma2)
    else
        if (type2 == "VWMA")
            vwma(price, ma2)
        else
            f_hma(price, ma2)


//plot(series=price, style=line,  title="Price", color=black, linewidth=1, transp=0)
plot(series=price1, style=line,  title="1st MA", color=blue, linewidth=2, transp=0)
plot(series=price2, style=line, title="2nd MA", color=green, linewidth=2, transp=0)


longCondition = crossover(price1, price2)
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = crossunder(price1, price2)
if (shortCondition)
    strategy.entry("Short", strategy.short)


আরো