ডাবল মুভিং মিডিয়ার বিপরীতমুখী কৌশল

লেখক:চাওঝাং, তারিখঃ ২০২৩-১১-২২ ১০ঃ০৭ঃ১৯
ট্যাগঃ

img

সারসংক্ষেপ

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

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

  1. স্বল্পমেয়াদী চলমান গড় সময়ের shortma (ডিফল্ট 7 দিন) এবং দীর্ঘমেয়াদী চলমান গড় সময়ের longma (ডিফল্ট 77 দিন) সেট করুন
  2. যখন সংক্ষিপ্ত এমএ দীর্ঘ এমএ অতিক্রম করে, তখন এটি কেনার সংকেত এবং রেকর্ড বার হিসাবে নির্ধারিত হয়। দীর্ঘ এমএ বোঝায় যে একটি আপট্রেন্ড শুরু হয়েছে। যখন সংক্ষিপ্ত এমএ দীর্ঘ এমএ এর নীচে অতিক্রম করে, তখন এটি বিক্রয় সংকেত এবং রেকর্ড বার হিসাবে নির্ধারিত হয়। দীর্ঘ এমএ বোঝায় যে আপট্রেন্ড শেষ হয়েছে।
  3. বারসিন্স মানগুলি তুলনা করুন। সংক্ষিপ্ত এমএ ক্রস করার পর থেকে যত বেশি বার, তত বেশি সময় ধরে আপট্রেন্ড অব্যাহত রয়েছে। সংক্ষিপ্ত এমএ ক্রস করার পর থেকে যত বেশি বার, বিপরীত সংকেত তত শক্তিশালী।
  4. যখন বিক্রয় সংকেতের জন্য বারসিন্স ক্রয় সংকেতের জন্য বারসিন্সের চেয়ে বড় হয়, তখন একটি ক্রয় সংকেত ট্রিগার হয়। যখন ক্রয় সংকেতের জন্য বারসিন্স বিক্রয় সংকেতের জন্য বারসিন্সের চেয়ে বড় হয়, তখন একটি বিক্রয় সংকেত ট্রিগার হয়।
  5. মূলত এটি একটি দ্বৈত এমএ বিপরীত কৌশল, প্রবণতা বিপরীত পয়েন্ট সনাক্ত করতে দ্রুত এবং ধীর এমএগুলির ক্রসওভার বিপরীত ব্যবহার করে।

সুবিধা

  1. কিছু মিথ্যা সংকেত ফিল্টার করার জন্য দ্বৈত এমএ ব্যবহার করে
  2. যোগ করা বার, যেহেতু তুলনা মিথ্যা বিরতি এবং কাছাকাছি মূল্য বিপরীত এড়ানো
  3. সহজেই বোঝা যায় এবং বাস্তবায়ন করা যায়
  4. বিভিন্ন সময়কাল এবং বাজারের জন্য কাস্টমাইজযোগ্য এমএ পরামিতি

ঝুঁকি

  1. ডুয়াল এমএ কৌশলগুলি আরও ঘন ঘন ট্রেডিং সংকেত তৈরি করে
  2. এমএ পরামিতির দুর্বল টিউনিং দীর্ঘতর প্রবণতা মিস করতে পারে
  3. দীর্ঘমেয়াদী ম্যানেজমেন্ট এজেন্টদের ভাঙ্গার সময় স্টপ লস দূরবর্তী হতে পারে, যা বৃহত্তর ড্রাউনডাউনের দিকে পরিচালিত করে
  4. কার্যকরভাবে কয়েল এবং দোলনা ফিল্টার করতে পারে না

উন্নতির নির্দেশাবলী

  1. বিভিন্ন বাজারে হুইপস এড়াতে অন্যান্য সূচক যোগ করুন
  2. স্টপ লস মেকানিজম যোগ করুন
  3. এমএ প্যারামিটার সমন্বয় অপ্টিমাইজ করুন
  4. বাজারের চক্রের উপর ভিত্তি করে MA পরামিতিগুলিকে গতিশীলভাবে সামঞ্জস্য করুন

সংক্ষিপ্তসার

কৌশলটি সামগ্রিকভাবে স্পষ্ট, সহজেই বোঝার যুক্তিযুক্ত, প্রবণতা বিপরীত পয়েন্টগুলি সনাক্ত করতে দ্রুত এবং ধীর এমএ বিপরীত ব্যবহার করে। তত্ত্বগতভাবে এটি কার্যকরভাবে প্রবণতা ট্র্যাক করতে পারে। তবে প্রকৃত বাস্তবায়নে এটিকে আরও শক্তিশালী এবং ব্যবহারিক করার জন্য অ্যালগরিদমটির অপ্টিমাইজেশান এবং পরামিতিগুলিকে সামঞ্জস্য করতে হবে।


/*backtest
start: 2022-11-15 00:00:00
end: 2023-11-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Up Down", "Up Down", precision = 6, pyramiding = 1, default_qty_type = strategy.percent_of_equity, default_qty_value = 99, commission_type = strategy.commission.percent, commission_value = 0.0, initial_capital = 1000, overlay = true)

buy = close > open and open > close[1]
sell = close < open and open < close[1]

longma = input(77,"Long MA Input")
shortma = input(7,"Short MA Input")
long = sma(close,longma)
short = sma(close, shortma)
mabuy = crossover(short,long) or buy and short > long
masell = crossunder(short,long) or sell and short > long

num_bars_buy = barssince(mabuy)
num_bars_sell = barssince(masell)
//plot(num_bars_buy, color = teal)
//plot(num_bars_sell, color = orange)

xbuy = crossover(num_bars_sell, num_bars_buy)
xsell = crossunder(num_bars_sell, num_bars_buy)
plotshape(xbuy,"Buy Up Arrow", shape.triangleup, location.belowbar, white, size = size.tiny)
plotshape(xsell,"Sell Down Arrow", shape.triangledown, location.abovebar, white, size = size.tiny)
plot(long,"Long MA", fuchsia, 2)

// Component Code Start
// Example usage:
// if testPeriod()
//   strategy.entry("LE", strategy.long)
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(01, "Backtest Start Month")
testStartDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(7, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() => true
// Component Code Stop

if testPeriod()
    strategy.entry("buy", true, when = xbuy, limit = close)
    strategy.close("buy", when = xsell)


আরো