কৌশল অনুসরণ করে ডাবল মুভিং এভারেজ প্রবণতা


সৃষ্টির তারিখ: 2024-03-22 13:56:44 অবশেষে সংশোধন করুন: 2024-03-22 13:56:44
অনুলিপি: 1 ক্লিকের সংখ্যা: 501
1
ফোকাস
1617
অনুসারী

কৌশল অনুসরণ করে ডাবল মুভিং এভারেজ প্রবণতা

সারসংক্ষেপ

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

কৌশলগত নীতি

এই কৌশলটির কেন্দ্রবিন্দু হল দুটি চলমান গড়ঃ একটি দ্রুত গড় ((ডিফল্ট চক্রটি ৩২) এবং একটি ধীর গড় ((ডিফল্ট চক্রটিও ৩২, প্যারামিটার দ্বারা সামঞ্জস্য করা যায়) । যখন সমাপ্তির দামের উপরে / নীচে এই দুটি সমান্তরাল গঠিত হয়, তখন প্রবণতা বিপরীত হয় এবং কৌশলটি একটি বিক্রয়-বিক্রয় সংকেত তৈরি করেঃ

  • যখন আপনি একটি দ্রুত গড় রেখায় একটি ধীর গড় রেখা অতিক্রম করেন, তখন আপনি আরো কিছু করতে পারেন।
  • যখন দ্রুত গড়ের নীচে ধীর গড়ের মধ্য দিয়ে যায়, ফাঁকা করুন
  • যখন একাধিক পয়েন্ট রাখা হয়, দ্রুত গড় লাইন নীচে ধীর গড় লাইন, সমতল এবং খালি করা
  • যখন আপনার কাছে খালি কার্ড থাকে, তখন দ্রুত গড়রেখায় ধীর গড়রেখায় হাঁটুন, খালি করুন এবং অতিরিক্ত করুন

এই সমান্তরাল ক্রসিং পদ্ধতির মাধ্যমে, কৌশলটি প্রবণতা অনুসরণ করতে পারে, একটি উত্থান প্রবণতা এবং একটি খালি প্রবণতা একটি খালি প্রবণতা ধরে রাখতে পারে, যতক্ষণ না প্রবণতা একটি বিপরীত সংকেত পায়।

অ্যাডভান্টেজ অ্যানালিসিস

  1. ট্রেন্ড ট্র্যাকিংঃ এই কৌশলটি ট্রেন্ডের মধ্যবর্তী ক্রস-লাইন বিচার করে কার্যকরভাবে বাজারের মূল প্রবণতাগুলিকে ক্যাপচার করতে এবং মেনে চলতে সক্ষম।
  2. সহজেই ব্যবহার করা যায়ঃ কৌশলগত যুক্তি পরিষ্কার, শুধুমাত্র দুটি গড় লাইন ব্যবহার করা হয়, প্যারামিটার সেট করা সহজ, সহজে বোঝা এবং আয়ত্ত করা যায়।
  3. বহুমুখীতা: কৌশলটি বিভিন্ন জাত এবং সময়কালের জন্য বহুমুখী এবং বিভিন্ন বাজারে ব্যবহার করা যেতে পারে।
  4. সময়মত স্টপ লসঃ ট্রেন্ডের বিপরীতমুখী হওয়ার সময়, কৌশলটি সময়মতো পজিশন খালি করতে এবং ক্ষতি নিয়ন্ত্রণ করতে পারে।

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

  1. ঝড়বাজারে খারাপ পারফরম্যান্সঃ যখন বাজার ঝড়ের মধ্যে থাকে, তখন ঘন ঘন ক্রস সিগন্যালের ফলে কৌশলটি ঘন ঘন লেনদেনের চেয়ে বেশি ক্ষতি হয়।
  2. অপ্রত্যাশিত পরিস্থিতিতে প্রতিক্রিয়াহীনতা: চরম পরিস্থিতির মুখোমুখি (যেমন দ্রুত উত্থান বা পতন), কৌশলটি প্রতিক্রিয়াহীন হতে পারে, যার ফলে বড় ক্ষতি হতে পারে।
  3. প্যারামিটার অপ্টিমাইজেশান কঠিনঃ গড়পড়তা প্যারামিটার অপ্টিমাইজেশনের জন্য প্রচুর পরিমাণে ঐতিহাসিক তথ্য এবং পুনরাবৃত্তি প্রয়োজন এবং ভবিষ্যতের প্রভাবের জন্য প্যারামিটারগুলির নির্দেশিকা সীমিত।

উপরোক্ত ঝুঁকির জন্য, যথাযথ ফিল্টার যুক্ত করার কথা বিবেচনা করা যেতে পারে, যেমন এটিআর বা গড় বাস্তব তরঙ্গের ফিল্টার, অস্থির বাজারে অত্যধিক লেনদেন হ্রাস করা; যুক্তিসঙ্গত স্টপ লস সেট করুন, একক ক্ষতি নিয়ন্ত্রণ করুন; বাজারকে খাপ খাইয়ে নেওয়ার জন্য প্যারামিটারগুলি ক্রমাগত অপ্টিমাইজ করুন। তবে কৌশলটির সীমাবদ্ধতাগুলি সম্পূর্ণরূপে এড়ানো কঠিন।

Optimization Direction অপ্টিমাইজেশন দিকনির্দেশ

  1. প্রবণতা নিশ্চিতকরণঃ ট্রেডিং সিগন্যাল তৈরির পরে, প্রবণতা নিশ্চিতকরণ সূচকগুলি যেমন MACD, DMI ইত্যাদি যুক্ত করা যেতে পারে, যাতে আরও সংকেত ফিল্টার করা যায়।
  2. ডায়নামিক স্টপ লসঃ স্থির শতাংশ বা দামের স্টপ লসের পরিবর্তে এটিআর এর মতো সূচকগুলির উপর ভিত্তি করে ডায়নামিক স্টপ লস সেট করা ঝুঁকিকে আরও ভালভাবে নিয়ন্ত্রণ করতে পারে।
  3. পজিশন ম্যানেজমেন্টঃ প্রবণতা শক্তি, ওঠানামা এবং অন্যান্য সূচক অনুযায়ী পজিশনের আকার পরিবর্তন করুন, প্রবণতা শক্তিশালী হলে পজিশন বাড়ান, প্রবণতা দুর্বল হলে পজিশন হ্রাস করুন।
  4. মাল্টি-পিরিয়ড মাল্টি-লেভেলঃ একাধিক স্তরের সমান্তরাল সিস্টেম বিবেচনা করুন, যেমন দিন + 4 ঘন্টা লাইন, একে অপরকে ফিল্টার এবং নিশ্চিত করুন, প্রবণতা ধরে রাখার নির্ভুলতা বাড়ান।
  5. প্যারামিটার স্বনির্ধারণঃ প্যারামিটার অপ্টিমাইজেশনের পদ্ধতি যেমন জেনেটিক্যাল অ্যালগরিদম প্রবর্তন করা যাতে কৌশলগত প্যারামিটারগুলি বিভিন্ন বাজারের অবস্থার সাথে খাপ খাইয়ে নিতে পারে।

উপরোক্ত অপ্টিমাইজেশানগুলি জটিল বাজারগুলির সাথে মোকাবিলা করার জন্য কৌশলগুলির দক্ষতা বাড়িয়ে তুলতে পারে, তবে সতর্কতা অবলম্বন করা উচিত যে অতিরিক্ত অপ্টিমাইজেশানগুলি ভবিষ্যতে দুর্বল পারফরম্যান্সের জন্য কার্ভ ফিট হতে পারে।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-03-16 00:00:00
end: 2024-03-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5

//study(title="Demo - SSL Basic", shorttitle="Demo - SSL Basic", overlay=true)
strategy(title='Demo - SSL Basic', shorttitle='Demo - SSL Basic', overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=100, commission_value=0.15)

// Backtest Date Range
start_date_long = input(title='Backtest Long Start Date', defval=timestamp('01 Jan 2018 00:00 +0530'))
end_date_long = input(title='Backtest Long End Date', defval=timestamp('25 Jan 2030 00:00 +0530'))
backtest_range = true

// Inputs
maType = input.string(title='SSL MA Type', options=['SMA', 'EMA', 'WMA'], defval='SMA')
sslLen = input(title='SSL Length', defval=32)
showCross = input(title='Show Crossover?', defval=true)
showEntry = input(title='Show Entry?', defval=true)
showTrend = input(title='Show Trend Colors?', defval=true)

// Calc MA for SSL Channel
calc_ma(close, len, type) =>
    float result = 0
    if type == 'SMA'  // Simple
        result := ta.sma(close, len)
        result
    if type == 'EMA'  // Exponential
        result := ta.ema(close, len)
        result
    if type == 'WMA'  // Weighted
        result := ta.wma(close, len)
        result    
    result

// Add SSL Channel
maHigh = calc_ma(high, sslLen, maType)
maLow = calc_ma(low, sslLen, maType)
Hlv = int(na)
Hlv := close > maHigh ? 1 : close < maLow ? -1 : Hlv[1]
sslDown = Hlv < 0 ? maHigh : maLow
sslUp = Hlv < 0 ? maLow : maHigh
ss1 = plot(sslDown, title='Down SSL', linewidth=2, color=showTrend ? na : color.red)
ss2 = plot(sslUp, title='Up SSL', linewidth=2, color=showTrend ? na : color.lime)

// Conditions
longCondition = ta.crossover(sslUp, sslDown)
shortCondition = ta.crossover(sslDown, sslUp)

// Strategy
if shortCondition
    strategy.close('Long', comment='Long Exit', alert_message='JSON')

if longCondition
    strategy.close('Short', comment='Short Exit', alert_message='JSON')

if backtest_range and longCondition
    strategy.entry('Long', strategy.long, comment='Long Entry', alert_message='JSON')

if backtest_range and shortCondition
    strategy.entry('Short', strategy.short, comment= 'Short Entry', alert_message='JSON')


// Plots
fill(ss1, ss2, color=showTrend ? sslDown < sslUp ? color.new(color.lime, transp=75) : color.new(color.red, transp=75) : na, title='Trend Colors')