এই কৌশলটি একটি সাধারণ চলমান গড় ক্রস ট্রেডিং কৌশল। এটি একটি ক্রস পয়েন্ট ব্যবহার করে যা একটি দ্রুত চলমান গড় এবং একটি ধীর চলমান গড় একটি কেনা বা বিক্রয় সংকেত হিসাবে কাজ করে। যখন একটি দ্রুত চলমান গড় নীচে থেকে ধীর চলমান গড় অতিক্রম করে তখন এটি একটি কেনার সংকেত হিসাবে কাজ করে। যখন একটি দ্রুত চলমান গড় নীচে থেকে ধীর চলমান গড় অতিক্রম করে তখন এটি একটি বিক্রয় সংকেত হিসাবে কাজ করে। এই কৌশলটি দুটি চলমান গড়ের সমন্বয় করে যা কার্যকরভাবে বাজারের শব্দকে ফিল্টার করে এবং প্রবণতা সনাক্ত করে।
এই কৌশলটি মূলত নিম্নলিখিত ধাপগুলি অনুসরণ করে বাস্তবায়িত হয়ঃ
ফাস্ট এমএ এবং স্লো এমএ সেট করুন।
Type ইনপুট টাইপের উপর নির্ভর করে, দ্রুত চলমান গড় fast এবং ধীর চলমান গড় slow গণনা করা হয়। Type=1 হলে সরল চলমান গড়, Type=2 হলে সূচকীয় চলমান গড়।
start এবং finish সময় পরিসীমা সেট করুন
ক্রস ফাংশন সংজ্ঞায়িত করা হয়েছেঃ যখন দ্রুত নীচে থেকে ধীর অতিক্রম করে, একটি কেনার সংকেত উত্পন্ন হয়; যখন দ্রুত উপরে থেকে নীচে ধীর অতিক্রম করে, একটি বিক্রয় সংকেত উত্পন্ন হয়।
যখন ক্রস ফাংশনটি ট্রিগার করা হয়, তখন যদি রিটার্নিং সময়ের মধ্যে থাকে তবে একটি ক্রয়-খোলা বা প্লেইন-বিক্রয় নির্দেশ দেওয়া হয়।
পুনরাবৃত্তি উইন্ডোর শেষে বা ক্রস ফাংশনের অধীনে পরা হলে, বিক্রয় বন্ধ করার নির্দেশ জারি করা হয়।
দ্রুত চলমান গড় (FAST) এবং ধীর চলমান গড় (SLOW) এর ট্রেন্ড গ্রাফ আঁকুন।
এই কৌশলটি ধীর গতিতে চলমান গড়ের ক্রস দ্বারা একটি ধারক সময়ের মধ্যে প্রবণতা বিচার করে এবং সেই অনুযায়ী লেনদেনের সংকেত উত্পন্ন করে। একই সাথে বাস্তব লেনদেনের অনুকরণ করার জন্য একটি ব্যাকআপ সময় উইন্ডো সেট করে।
এই কৌশলটির সুবিধাগুলো হলঃ
চলমান গড়ের সাহায্যে ট্রেন্ডের সঠিক মূল্যায়ন করা যায় এবং এলোমেলো ওঠানামাকে কার্যকরভাবে ফিল্টার করা যায়
ধীরে ধীরে চলমান গড়ের সংমিশ্রণ প্রবণতার পরিবর্তনকে চিহ্নিত করতে পারে।
চলমান গড়ের প্যারামিটারগুলিকে সামঞ্জস্য করে বিভিন্ন সময়কালের প্রবণতাগুলির সাথে খাপ খাইয়ে নেওয়া যেতে পারে।
সরল চলমান গড় বা সূচকীয় চলমান গড় নির্বাচন করার নমনীয়তা রয়েছে।
কৌশল পরামিতি পরীক্ষা এবং অপ্টিমাইজ করার জন্য ফিডব্যাক ফাংশন ব্যবহার করা যেতে পারে।
এই কৌশলটি সহজ, সুস্পষ্ট এবং সহজেই বোঝা যায়।
চলমান গড়ের গ্রাফ তৈরি করা, যা প্রবণতা এবং প্রভাবগুলিকে স্বজ্ঞাতভাবে বিচার করতে পারে।
এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ
এই সংকেতটি একটি ত্রুটিপূর্ণ সংকেত হতে পারে।
চলমান গড়গুলি পিছিয়ে থাকে এবং একটি বিপরীতমুখী পয়েন্ট মিস করতে পারে।
কেবলমাত্র সমরেখার ক্রসিংয়ের উপর নির্ভর করে, অন্য সূচক বা শর্ত ফিল্টারিংয়ের সাথে মিলিত হয় না।
লেনদেনের খরচ বিবেচনা না করে লেনদেনের প্রভাব
কোন স্টপ লস পলিসি নেই
অযৌক্তিক প্যারামিটার সেটিং নীতির কার্যকারিতা প্রভাবিত করতে পারে।
রিটার্নিং টাইম স্পেসের ভুল নির্বাচন হতে পারে, যার ফলে অতিরিক্ত মিল হতে পারে।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ
MACD, RSI ইত্যাদির মতো অন্যান্য সূচকগুলির সাথে সংযুক্ত করে সংকেতগুলি যাচাই করতে, সঠিকতা বাড়ানোর জন্য।
স্টপ লস কৌশল যুক্ত করুন এবং একক ক্ষতি নিয়ন্ত্রণ করুন।
চলমান গড় প্যারামিটারগুলিকে বিভিন্ন সময়কালের সাথে সামঞ্জস্যপূর্ণ করার জন্য অপ্টিমাইজ করা হয়েছে।
খোলা পজিশন ম্যানেজমেন্ট যোগ করুন, বিভিন্ন বাজারের অবস্থার জন্য বিভিন্ন পজিশন ব্যবহার করুন।
লেনদেনের খরচ বিবেচনা করে প্রবেশ ও প্রস্থান পয়েন্ট পরিবর্তন করুন।
দীর্ঘ সময়ের জন্য ডেটা পরীক্ষা করুন, যাতে অতিরিক্ত মিল না হয়।
Walks forward analysis ব্যবহার করে ক্রমাগত প্যারামিটার অপ্টিমাইজ করুন।
একটি চলমান গড় ক্রস কৌশল একটি সহজ এবং ব্যবহারিক প্রবণতা অনুসরণ কৌশল। এটি র্যান্ডম ওঠানামা ফিল্টার করতে পারে, প্রবণতা দিক সনাক্ত করতে পারে। তবে কিছু সমস্যা রয়েছে যেমন পিছিয়ে পড়া এবং অন্যান্য সূচক সমন্বয় ব্যবহার করা উচিত। ক্রমাগত অপ্টিমাইজেশান পরীক্ষার মাধ্যমে কৌশলটি আরও কার্যকর করা যেতে পারে এবং রিয়েল-টাইমে প্রয়োগ করা আরও সুরক্ষিত এবং নির্ভরযোগ্য হতে পারে। সামগ্রিকভাবে, কৌশলটি প্রবণতা বিচার করার জন্য কম প্রয়োজনীয় বিনিয়োগকারীদের জন্য উপযুক্ত।
/*backtest
start: 2023-09-13 00:00:00
end: 2023-09-20 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
// strategy("MavCrossover v2", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
// Revision: 1
// Author: @ToS_MavericK
// === INPUT SMA ===
fastMA = input(defval = 13, title = "FastMA", minval = 1, step = 1)
slowMA = input(defval = 144, title = "SlowMA", minval = 1, step = 1)
Type = input(defval = 1, title = "Type (1 = SMA, 2 = EMA)", minval = 1, maxval = 2, step = 1)
SlowMAIsFactor = input(false)
slowMA := SlowMAIsFactor == true ? round(fastMA * slowMA) : slowMA
// === INPUT BACKTEST RANGE ===
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromYear = input(defval = 2018, title = "From Year", minval = 2012)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToYear = input(defval = 2020, title = "To Year", minval = 2012)
// === FUNCTION EXAMPLE ===
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
window() => true // create function "within window of time"
// === MA SETUP ===
fast = Type == 1 ? sma(close, fastMA) : ema(close, fastMA)
slow = Type == 1 ? sma(close, slowMA) : ema(close, slowMA)
// === EXECUTION ===
strategy.entry("L", strategy.long, when = crossover(fast, slow) and window()) // buy long when "within window of time" AND crossover
strategy.close("L", when = crossunder(fast, slow) or time > finish) // sell long when window ends OR crossunder
plot(fast, title = 'FastMA', color = yellow, linewidth = 2, style = line) // plot FastMA
plot(slow, title = 'SlowMA', color = aqua, linewidth = 2, style = line) // plot SlowMA