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


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

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

ওভারভিউ

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

কৌশল নীতি

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

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

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

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

  1. এই সমান্তরাল ভিত্তিক নির্মাণের ফলে, স্বল্পমেয়াদী বাজার শব্দকে কার্যকরভাবে মুছে ফেলা যায়।
  2. একটি দ্বৈত সমান্তরাল কৌশল ব্যবহার করে, প্রবণতার দিকটি স্পষ্টভাবে নির্ধারণ করা যায়।
  3. প্যারামিটার অপ্টিমাইজেশনের জন্য, ধীরে ধীরে গড় লাইন সময়কাল কাস্টমাইজ করা যেতে পারে।
  4. এটির মধ্যে দীর্ঘমেয়াদী প্রবণতা এবং স্বল্পমেয়াদী সমন্বয় রয়েছে।
  5. নিয়মগুলি সহজ, পরিষ্কার, সহজেই বোঝা যায় এবং নতুনদের জন্য উপযুক্ত।

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

এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ

  1. যখন দামের তির্যক সমন্বয় ঘটে, তখন ট্রেডিং সিগন্যালের ত্রুটি তৈরি করা সহজ। গড় লাইন প্যারামিটারগুলি অপ্টিমাইজ করে ঝুঁকি হ্রাস করা যেতে পারে।
  2. দামের তীব্র ওঠানামা সম্পর্কে সঠিকভাবে বিচার করা এবং তার মোকাবেলা করা সম্ভব নয়।
  3. গড়রেখার সিস্টেমটি নিজেই পিছিয়ে রয়েছে এবং দামের বিপরীত দিকটি মিস করতে পারে। অন্যান্য সূচকগুলির সাথে একত্রিত হয়ে এটি অপ্টিমাইজ করা যেতে পারে।

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

এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ

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

সারসংক্ষেপ

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

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

//@version=2
strategy("EMA Strategy v2", shorttitle = "EMA Strategy v2", overlay=true, pyramiding = 3,default_qty_type = strategy.percent_of_equity, default_qty_value = 10)


// === Inputs ===
// short ma
maFastSource   = input(defval = close, title = "Fast MA Source")
maFastLength   = input(defval = 30, title = "Fast MA Period", minval = 1)

// long ma
maSlowSource   = input(defval = close, title = "Slow MA Source")
maSlowLength   = input(defval = 100, title = "Slow MA Period", minval = 1)

// invert trade direction
tradeInvert = input(defval = false, title = "Invert Trade Direction?")
// risk management
useStop     = input(defval = true, title = "Use Initial Stop Loss?")
slPoints    = input(defval = 0, title = "Initial Stop Loss Points", minval = 1)
useTS       = input(defval = true, title = "Use Trailing Stop?")
tslPoints   = input(defval = 0, title = "Trail Points", minval = 1)
useTSO      = input(defval = false, title = "Use Offset For Trailing Stop?")
tslOffset   = input(defval = 0, title = "Trail Offset Points", minval = 1)

// === Vars and Series ===
fastMA = ema(maFastSource, maFastLength)
slowMA = ema(maSlowSource, maSlowLength)

plot(fastMA, color=blue)
plot(slowMA, color=purple)

goLong() => crossover(fastMA, slowMA)
killLong() => crossunder(fastMA, slowMA)
strategy.entry("Buy", strategy.long, when = goLong())
strategy.close("Buy", when = killLong())

// Shorting if using
goShort() => crossunder (fastMA, slowMA)
killShort() => crossover(fastMA, slowMA)
//strategy.entry("Sell", strategy.short, when = goShort())
//strategy.close("Sell", when = killShort())

if (useStop)
    strategy.exit("XLS", from_entry ="Buy", stop = strategy.position_avg_price / 1.08 )
    strategy.exit("XSS", from_entry ="Sell", stop = strategy.position_avg_price * 1.58)