
এই কৌশলটি একটি চলমান গড়-ভিত্তিক ট্রেডিং কৌশল। এটি 45 দিনের চলমান গড়কে প্রধান প্রযুক্তিগত সূচক হিসাবে ব্যবহার করে এবং দামের চলমান গড়কে ভেঙে যাওয়ার সংকেত অনুসারে ক্রয় এবং বিক্রয় পরিচালনা করে।
যখন দাম বেড়ে ৪৫ দিনের চলমান গড় অতিক্রম করে, তখন একটি ক্রয় সংকেত উৎপন্ন হয়; যখন পজিশন রাখা হয় ৮ দিন পর, তখন একটি বিক্রয় সংকেত উৎপন্ন হয়। এর পরে, যদি আবার দাম বেড়ে ৪৫ দিনের চলমান গড় অতিক্রম করে, তখন আবার একটি ক্রয় সংকেত উৎপন্ন হয়। এইভাবে চক্রীয় অপারেশন।
এই কৌশলটি নিম্নরূপঃ
এটিই হচ্ছে কৌশলটির মূল লেনদেনের ধারণাগুলি।
এই কৌশলটির সুবিধাগুলো হলঃ
এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ
প্রতিকারঃ
এই কৌশলটি মূলত নিম্নলিখিত দিকগুলি থেকে অপ্টিমাইজ করা যেতে পারেঃ
চলমান গড় প্যারামিটারগুলিকে অনুকূলিতকরণ করুন, সর্বোত্তম প্যারামিটার সমন্বয় খুঁজুন। 15 দিন, 30 দিন, 60 দিন ইত্যাদি বিভিন্ন দিনের প্যারামিটার পরীক্ষা করা যেতে পারে।
পজিশন ধরে রাখার সময় অপ্টিমাইজ করুন, সর্বোত্তম পজিশন ধরে রাখার দিন খুঁজুন। আপনি বিভিন্ন পজিশন ধরে রাখার সময় যেমন 5 দিন, 10 দিন, 15 দিন পরীক্ষা করতে পারেন।
ট্রেন্ড ট্র্যাকিং এবং ঝুঁকি নিয়ন্ত্রণের জন্য মোবাইল স্টপ যুক্ত করুন। যেমন ট্রায়ালিং স্টপ বা এটিআর স্টপ।
অন্য সূচক যেমন MACD, KDJ ইত্যাদি যোগ করে ফিল্টার করুন, মিথ্যা সংকেত কমাতে।
পুনরায় প্রবেশের শর্তগুলিকে অপ্টিমাইজ করুন যাতে খুব ঘন ঘন লেনদেন হয় না। যেমন শীতল সময় বাড়ানো ইত্যাদি।
বিভিন্ন বাজার এবং বিভিন্ন জাতের জন্য কার্যকারিতা পরীক্ষা করুন। বিভিন্ন বাজারের জন্য প্যারামিটারগুলি অপ্টিমাইজ করা দরকার।
মুভিং এভারেজ ক্রসিং কৌশলটি সামগ্রিকভাবে একটি সহজ এবং ব্যবহারিক ট্রেন্ড ট্র্যাকিং কৌশল। এটি মুভিং এভারেজের ট্রেন্ড ট্র্যাকিং ফাংশনটি ব্যবহার করে, দামের ব্রেকআউটের সাথে ট্রেডিং সিগন্যাল তৈরি করে। সুবিধাটি সহজেই বাস্তবায়িত হয়, ট্রেড-অফগুলি কিছুটা ভুল-ভ্রান্তি হতে পারে। প্যারামিটারগুলি অপ্টিমাইজ করা এবং সহায়ক প্রযুক্তিগত সূচকগুলি যুক্ত করে আরও ভাল ফলাফল পাওয়া যায়।
/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Moving Average Crossover Strategy", overlay=true)
// Calculate the 45-day moving average
ma_length = 45
ma = ta.sma(close, ma_length)
// Track position entry and entry bar
var bool in_long_position = na
var int entry_bar = na
var int exit_bar = na
// Entry condition: Close price crosses above the 45-day moving average to enter the position
if (not in_long_position and ta.crossover(close, ma) and not na(ma[1]) and close > ma and close[1] < ma[1])
in_long_position := true
entry_bar := bar_index
// Exit condition: Close the position after holding for 8 trading days
if (in_long_position and bar_index - entry_bar >= 8)
in_long_position := false
exit_bar := bar_index
// Re-entry condition: Wait for price to cross over the 45-day moving average again
if (not in_long_position and ta.crossover(close, ma) and not na(ma[1]) and close > ma and close[1] > ma[1] and (na(exit_bar) or bar_index - exit_bar >= 8))
in_long_position := true
entry_bar := bar_index
// Execute long entry and exit
if (in_long_position)
strategy.entry("Long", strategy.long)
if (not in_long_position)
strategy.close("Long")