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


সৃষ্টির তারিখ: 2024-01-31 15:17:31 অবশেষে সংশোধন করুন: 2024-01-31 15:17:31
অনুলিপি: 1 ক্লিকের সংখ্যা: 597
1
ফোকাস
1617
অনুসারী

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

ওভারভিউ

এই কৌশলটি বিভিন্ন ধরণের গড়ের গণনা করে (Simple Moving Average SMA, Index Moving Average EMA, Hull Moving Average HMA এবং Quantitative Weighted Moving Average VWMA) এবং তাদের ক্রসপয়েন্টগুলি খুঁজে বের করে, ট্রেন্ডিংয়ের প্রবণতা নির্ধারণ করে এবং ট্রেন্ড অনুসরণ করে। যখন একটি সংক্ষিপ্ত গড় নীচে থেকে দীর্ঘমেয়াদী গড় অতিক্রম করে তখন একটি কেনার সংকেত উত্পন্ন করে; যখন একটি সংক্ষিপ্ত গড় উপরে থেকে নীচে দীর্ঘমেয়াদী গড় অতিক্রম করে তখন একটি বিক্রয় সংকেত উত্পন্ন করে।

কৌশল নীতি

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

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

মার্কেট ট্রেন্ড অনুসরণ করে ট্রেডিং করার জন্য এই ধরনের সমান্তরাল ক্রস-ডিক্রিমিনেশন ব্যবহার করুন।

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

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

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

  • গড় লাইনটি পশ্চাদপসরণশীল, ক্রস সংকেত প্রেরণ করার সময়, দামের চলাচলটি ইতিমধ্যে ঘটেছে বা বিপরীত দিকের কাছাকাছি রয়েছে, কিছুটা পশ্চাদপসরণের ঝুঁকি রয়েছে
  • প্রবণতা নির্ণয় ভুল হতে পারে, যার ফলে অপ্রয়োজনীয় ক্ষতি হতে পারে
  • গড় রেখা প্যারামিটারগুলি যুক্তিসঙ্গতভাবে কনফিগার করা দরকার, বিভিন্ন প্যারামিটারগুলি ফলাফলের মধ্যে বড় পার্থক্য আনতে পারে

ঝুঁকি মোকাবিলার উপায়ঃ

  • বাজারের পরিবর্তনের জন্য সংবেদনশীলতা বাড়ানোর জন্য গড় চক্র যথাযথভাবে সংক্ষিপ্ত করা
  • ভুল বিচার এড়াতে অন্যান্য সূচকগুলির সাথে মিলিতভাবে যাচাই করুন
  • প্যারামিটার অপ্টিমাইজেশান পদ্ধতিঃ ট্রাউজিং, মেশিন লার্নিং, জেনেটিক অ্যালগরিদম ইত্যাদি
  • পজিশনের আকার এবং স্টপ লস নিয়ন্ত্রণ করুন

কৌশল অপ্টিমাইজেশনের দিকনির্দেশনা

  • অন্যান্য পরিমাপ ফিল্টার যুক্ত করুন, একাধিক পরিমাপ বিচারকে একত্রিত করুন, সিদ্ধান্ত গ্রহণের নির্ভুলতা বাড়ান
  • বাজারের অবস্থার উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে গড় লাইন প্যারামিটারগুলি সামঞ্জস্য করে
  • মেশিন লার্নিং অ্যালগরিদমের সাথে স্বয়ংক্রিয়ভাবে শ্রেষ্ঠত্বের প্যারামিটার অনুসন্ধান করা
  • অপ্টিমাইজ করা স্টপ লস কৌশল

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*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)