ডুয়াল ইএমএ ক্রসওভার কৌশল

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

img

সারসংক্ষেপ

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

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

এই কৌশলটির মূল উপাদানগুলি হল:

  1. দ্রুততম ইএমএ এবং ধীরতম ইএমএ এর জন্য দৈর্ঘ্য সেট করুন। এখানে দ্রুততম ইএমএ দৈর্ঘ্য 12, ধীরতম ইএমএ 26।

  2. দ্রুততম ইএমএ এবং ধীরতম ইএমএ গণনা করুন। দ্রুততম ইএমএ দ্রুত প্রতিক্রিয়া দেখায় যখন ধীরতম ইএমএ আরো স্থিতিশীল।

  3. ট্রেডিং সিগন্যাল তৈরির জন্য EMA ক্রসওভার পরিস্থিতি নির্ধারণ করুন। যখন দ্রুত EMA ধীর EMA এর উপরে অতিক্রম করে, তখন একটি ক্রয় সংকেত তৈরি করা হয়। যখন দ্রুত EMA ধীর EMA এর নীচে অতিক্রম করে, তখন একটি বিক্রয় সংকেত তৈরি করা হয়।

  4. সংকেতগুলির উপর ভিত্তি করে ট্রেড প্রবেশ করুন। যখন লম্বা হয়, তখন বিদ্যমান শর্ট পজিশনগুলি লম্বা পজিশন খোলার আগে প্রথমে বন্ধ করা হয়। বিপরীত।

  5. স্টপ লস পয়েন্ট সেট করুন। যখন লম্বা হয়, তখন স্টপ লস ট্রিগার হয় যদি দাম একটি সেট শতাংশ দ্বারা পূর্ববর্তী সর্বনিম্নের নীচে পড়ে। বিপরীত।

  6. সিগন্যালের উপর ভিত্তি করে প্রস্থান লেনদেন। দ্রুত EMA ধীর EMA এর নীচে ক্রস করার সময় লং পজিশন বন্ধ হয়। দ্রুত EMA ধীর EMA এর উপরে ক্রস করার সময় শর্ট পজিশন বন্ধ হয়।

লজিকটি সহজ এবং স্বজ্ঞাত। ইএমএ ক্রসওভার প্রবণতা দিক এবং শক্তি নির্ধারণ করে। দ্রুততম ইএমএ স্বল্পমেয়াদী মূল্য পরিবর্তনের প্রতি দ্রুত প্রতিক্রিয়া দেখায় যখন ধীরতম ইএমএ দীর্ঘমেয়াদী প্রবণতার প্রতি ধারাবাহিকভাবে প্রতিক্রিয়া দেখায়। দুটি লাইনের ক্রসওভার প্রবণতা পরিবর্তন সনাক্ত করার একটি ক্লাসিক উপায়।

সুবিধা বিশ্লেষণ

এই কৌশলটির সুবিধাগুলো হল:

  1. EMA এবং ক্রসওভার স্বীকৃত কার্যকর সূচক এবং সংকেত।

  2. মধ্য ও দীর্ঘমেয়াদী প্রবণতা কার্যকরভাবে ট্র্যাক করতে পারে এবং সুযোগগুলি দ্রুত ধরতে পারে।

  3. ডুয়াল ইএমএ সেটআপ স্বল্পমেয়াদী বাজারের ওঠানামা থেকে গোলমাল এড়ায়।

  4. এখানে প্রবেশের নিয়ম, বেরিয়ে আসার নিয়ম এবং স্টপ লস নিয়ম আছে।

  5. শুধুমাত্র কিছু পরামিতি প্রয়োজন, overfitting প্রবণ নয়. সহজ পরামিতি মিটিং beginners জন্য উপযুক্ত.

  6. ভাল ব্যাকটেস্ট ফলাফল, লাইভ ট্রেডিং জন্য কার্যকর। স্বতন্ত্রভাবে বা অন্যান্য কৌশল সঙ্গে মিলিত ব্যবহার করা যেতে পারে।

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

এই কৌশলটির কিছু ঝুঁকিঃ

  1. ডুয়াল ইএমএ ক্রসওভার মিথ্যা সংকেত এবং whipsaws উত্পাদন প্রবণতা। অবৈধ সংকেত ফিল্টার করার জন্য পরামিতি tuning প্রয়োজন।

  2. বিভিন্ন পরিস্থিতি এবং প্রবণতা বিপরীত ভাল পরিচালনা করতে পারে না। অন্যান্য সূচক থেকে নিশ্চিতকরণের প্রয়োজন।

  3. ডুয়াল ইএমএ কৌশল উচ্চতা এবং বিক্রয় নিম্নতা তাড়া করার প্রবণতা। অবস্থান আকার এবং মুনাফা গ্রহণ নিয়ন্ত্রণ করা উচিত।

  4. ব্যাকটেস্টের ফলাফল কিছু পরিমাণে অতিরিক্ত ফিট হতে পারে। প্যারামিটার সংবেদনশীলতা স্থায়িত্বের জন্য পরীক্ষা করা উচিত।

  5. সময়মত স্টপ লস না হলে বড় ক্ষতি হতে পারে। যুক্তিসঙ্গত স্টপ লস স্তর নির্ধারণ করা উচিত।

  6. লেনদেনের খরচ প্রকৃত লাভজনকতা প্রভাবিত করতে পারে। বিভিন্ন পণ্যের জন্য কমিশন ফ্যাক্টর বিবেচনা করা উচিত।

উন্নতির ক্ষেত্র

কৌশল উন্নত করার কিছু উপায়:

  1. মেশিন লার্নিং এবং ওয়াক ফরওয়ার্ড অপ্টিমাইজেশান ব্যবহার করে সর্বোত্তম সমন্বয় খুঁজে পেতে EMA সময়ের পরামিতিগুলি অপ্টিমাইজ করুন।

  2. অনিশ্চিত প্রবণতা এড়াতে ADX, CCI ইত্যাদির মতো প্রবণতা ফিল্টার সূচক যুক্ত করুন।

  3. ব্যালেন্স ভলিউমে ট্রেডিং ভলিউমের মতো ভলিউম সূচক যোগ করুন যাতে নিশ্চিত হয় যে প্রকৃত ট্রেডিং সিগন্যাল চালাচ্ছে।

  4. বাজারের অস্থিরতার উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে স্টপগুলি সামঞ্জস্য করার জন্য গতিশীল স্টপ লস বাস্তবায়ন করুন।

  5. ঝুঁকি ব্যবস্থাপনার জন্য সংশ্লিষ্ট পণ্যগুলিকে একত্রিত করুন।

  6. প্যারামিটার অপ্টিমাইজেশান, ফিচার ইঞ্জিনিয়ারিং, সিগন্যাল ফিল্টারিং ইত্যাদির জন্য মেশিন লার্নিং চালু করা।

  7. লেনদেনের খরচ বিবেচনা করুন, ট্রেডিং ফ্রিকোয়েন্সি কমাতে স্টপ এবং আকার সামঞ্জস্য করুন।

  8. পণ্যের বৈশিষ্ট্যগুলির উপর ভিত্তি করে প্যারামিটারগুলি কাস্টমাইজ করুন অভিযোজনযোগ্যতা উন্নত করতে।

  9. স্থিতিশীলতা বৃদ্ধির জন্য অন্যান্য কৌশলগুলির সাথে একত্রিত একটি যৌগিক কৌশল কাঠামো ডিজাইন করুন।

এই উন্নতিগুলি লাইভ ট্রেডিংয়ের জন্য কৌশলটিকে আরও শক্তিশালী এবং লাভজনক করে তুলতে পারে।

সিদ্ধান্ত

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


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

//@version=2

strategy(title = "EMA Cross Strategy", shorttitle = "EMA Cross",calc_on_order_fills=true,calc_on_every_tick =true, initial_capital=21000,commission_value=.25,overlay = true,default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
StartYear = input(2018, "Backtest Start Year")
StartMonth = input(1, "Backtest Start Month")
StartDay = input(1, "Backtest Start Day")
UseStopLoss = input(true,"UseStopLoss")

window() => time >=  timestamp(StartYear, StartMonth, StartDay,00,00) ? true : false

stopLoss = input(20, title = "Stop loss percentage(0.1%)")


maFastSource   = input(defval = open, title = "Fast MA Source")
maFastLength   = input(defval = 12, title = "Fast MA Period", minval = 1)
// long ma
maSlowSource   = input(defval = open, title = "Slow MA Source")
maSlowLength   = input(defval = 26, title = "Slow MA Period", minval = 1)

maFast = ema(maFastSource, maFastLength)
maSlow = ema(maSlowSource, maSlowLength)


fast = plot(maFast, title = "Fast MA", color = #7a8598, linewidth = 2, style = line, transp = 50)
slow = plot(maSlow, title = "Slow MA", color = #e08937, linewidth = 2, style = line, transp = 50)


longEMA = crossover(maFast, maSlow)
exitLong = crossunder(maFast, maSlow)

shortEMA = crossover(maSlow, maFast)
exitShort = crossover(maFast, maSlow)


if (longEMA)
    strategy.entry("LongId", strategy.long, when=window())
 
if (shortEMA)
    strategy.entry("ShortId", strategy.short, when=window())


if (UseStopLoss)
    strategy.exit("StopLoss", "LongId", loss = close * stopLoss / 1000 / syminfo.mintick)
    strategy.exit("StopLoss", "ShortId", loss = close * stopLoss / 1000 / syminfo.mintick)

আরো