ডাবল EMA ক্রসওভারের উপর ভিত্তি করে পরিমাণগত ট্রেডিং কৌশল


সৃষ্টির তারিখ: 2023-11-21 11:41:40 অবশেষে সংশোধন করুন: 2023-11-21 11:41:40
অনুলিপি: 0 ক্লিকের সংখ্যা: 620
1
ফোকাস
1617
অনুসারী

ডাবল EMA ক্রসওভারের উপর ভিত্তি করে পরিমাণগত ট্রেডিং কৌশল

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটি মূলত ডাবল ইএমএ গড়রেখার গোল্ডেন ফর্ক ডাইফোর্ক তত্ত্ব প্রয়োগ করে। ডাবল ইএমএ গড়রেখাকে দীর্ঘ ইএমএ এবং সংক্ষিপ্ত ইএমএ হিসাবে বিভক্ত করা হয়েছে। সংক্ষিপ্ত ইএমএ প্যারামিটারটি 10 দিন এবং দীর্ঘ ইএমএ প্যারামিটারটি 21 দিন সেট করা হয়েছে।

যখন সংক্ষিপ্ত ইএমএ লম্বা ইএমএ অতিক্রম করে, তখন একটি কেনার সংকেত উত্পন্ন হয়; যখন সংক্ষিপ্ত ইএমএ লম্বা ইএমএ অতিক্রম করে, তখন একটি বিক্রয় সংকেত উত্পন্ন হয়। এই কৌশলটি একই সাথে বৃদ্ধির হারের থ্রেশহোল্ড সেট করে, কেবলমাত্র যখন বৃদ্ধির হার থ্রেশহোল্ড অতিক্রম করে তখনই পজিশন খোলা হয় এবং যখন পতন থ্রেশহোল্ড অতিক্রম করে তখনই পজিশনটি প্লেইন করা হয়।

বিশেষ করে, ক্রয় শর্তটি হল সংক্ষিপ্ত ইএমএ দীর্ঘ ইএমএর চেয়ে বেশি এবং শেয়ারের মূল্য বৃদ্ধির হার সেট করা পজিটিভ থ্রেশহোল্ডের চেয়ে বেশি; খালি অবস্থানের শর্তটি হল সংক্ষিপ্ত ইএমএ দীর্ঘ ইএমএর চেয়ে কম এবং শেয়ারের মূল্য বৃদ্ধির হার সেট করা নেতিবাচক থ্রেশহোল্ডের চেয়ে কম।

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

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

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

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

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

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

সারসংক্ষেপ

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

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

//@version=3
strategy(title="ema(ema10-21)", overlay=true, pyramiding = 0, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, initial_capital = 15000, commission_type = strategy.commission.percent, commission_value = 0.2)

useTimeLimit    = input(defval = false, title = "Use Start Time Limiter?")
startYear       = input(defval = 2016, title = "Start From Year",  minval = 0, step = 1)
startMonth      = input(defval = 05, title = "Start From Month",  minval = 0,step = 1)
startDay        = input(defval = 01, title = "Start From Day",  minval = 0,step = 1)
startHour       = input(defval = 00, title = "Start From Hour",  minval = 0,step = 1)
startMinute     = input(defval = 00, title = "Start From Minute",  minval = 0,step = 1)

startTimeOk() => true

lenght0 = input(10)
lenght1 = input(21)

source = close

EmaShort = ema(ema(source, lenght0), lenght0)
EmaLong = ema(ema(source, lenght1),lenght1)
plot(EmaShort, color=red)
plot(EmaLong, color=purple)

growth = ((EmaShort-EmaLong)*100)/((EmaShort+EmaLong)/2)
thresholdUp = input(defval=0.05, title="Threshold Up", type=float, step=0.01)
thresholdDown = input(defval=-0.165, title="Threshold Down", type=float, step=0.001)

if( startTimeOk() )
    buy_condition = EmaShort > EmaLong and growth > thresholdUp
    buy_exit_condition = EmaShort < EmaLong and growth < thresholdDown
    strategy.entry("buy", strategy.long, comment="buy", when=buy_condition)
    strategy.close(id='buy', when=buy_exit_condition)