
এই কৌশলটি সহজ চলমান গড় (এসএমএ) এর উপর ভিত্তি করে তৈরি করা হয়েছে। কৌশলটি দুটি এসএমএ ব্যবহার করে, যা দ্রুত এসএমএ এবং ধীর এসএমএ, যখন দ্রুত এসএমএ নীচের দিক থেকে ধীর এসএমএকে ভেঙে দেয়, তখন একটি কেনার সংকেত উত্পন্ন করে। যখন দ্রুত এসএমএ নীচের দিক থেকে ধীর এসএমএকে ভেঙে দেয়, তখন একটি বিক্রয় সংকেত উত্পন্ন করে।
এই কৌশলটি মূলত দুটি এসএমএ সূচক লাইনের উপর নির্ভর করে। এর মধ্যে, দ্রুত এসএমএর সময় সংক্ষিপ্ত সেট করুন, দামের পরিবর্তনগুলি আরও দ্রুত ক্যাপচার করতে পারে; ধীর এসএমএর সময় দীর্ঘ সেট করুন, কিছু গোলমাল ফিল্টার করতে পারে। যখন দ্রুত এসএমএ নীচের দিক থেকে ধীর এসএমএকে অতিক্রম করে, তখন স্বল্পমেয়াদী দাম দ্রুত বৃদ্ধি পায়, একটি কেনার সংকেত তৈরি করে। যখন দ্রুত এসএমএ উপরের দিক থেকে নীচে ধীর এসএমএকে অতিক্রম করে, তখন স্বল্পমেয়াদী দাম দ্রুত হ্রাস পায়, একটি বিক্রয় সংকেত তৈরি করে।
বিভিন্ন এসএমএ চক্র প্যারামিটার সেট করে, বিভিন্ন বাজার পরিস্থিতিতে কৌশলটির প্যারামিটারগুলিকে কিছুটা সামঞ্জস্য করা যায়। একই সাথে, কৌশলটি পুনরুদ্ধারের সময়সীমা সেট করার অনুমতি দেয়, যা historicalতিহাসিক ডেটাতে কৌশল প্যারামিটারগুলি পরীক্ষা করা সহজ করে।
উপরের ঝুঁকির জন্য নিম্নলিখিত পদক্ষেপগুলি গ্রহণ করা যেতে পারেঃ
এই কৌশলটি প্রচলিত ট্রেন্ড ট্র্যাকিং কৌশলগুলির মধ্যে একটি। এটি একটি সহজ দ্বৈত সমান্তরাল ক্রস নীতি ব্যবহার করে, যা প্যারামিটারগুলি যথাযথভাবে সেট করা থাকলে ভাল ট্র্যাকিংয়ের ফলাফল অর্জন করতে পারে। তবে এসএমএ নিজেই কিছুটা পিছিয়ে রয়েছে, যা প্রবণতার শক্তি নির্ধারণ করতে পারে না। সুতরাং, বাস্তব প্রয়োগে, অন্যান্য সহায়ক সরঞ্জামগুলি প্রবর্তন করা প্রয়োজন, সূচক প্যারেজ তৈরি করতে, পাশাপাশি অটোমেটেড প্যারামিটার অপ্টিমাইজেশন এবং ঝুঁকি নিয়ন্ত্রণের উপায়গুলিকে সহায়তা করে, যাতে কৌশলটি স্থিতিশীল এবং লাভজনক হতে পারে।
/*backtest
start: 2023-12-17 00:00:00
end: 2023-12-18 19:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//strategy(title="MA Cross Entry & Exit w/Date Range", overlay=true, initial_capital=10000, currency='USD')
strategy(title="SMA Cross Entry & Exit Strategy", overlay=true)
// Credit goes to this developer for the "Date Range Code"
// https://www.tradingview.com/script/62hUcP6O-How-To-Set-Backtest-Date-Range/
// === GENERAL INPUTS ===
// short ma
maFastSource = input(defval = open, title = "Fast MA Source")
maFastLength = input(defval = 36, title = "Fast MA Period", minval = 1)
// long ma
maSlowSource = input(defval = open , title = "Slow MA Source")
maSlowLength = input(defval = 46, title = "Slow MA Period", minval = 1)
// === SERIES SETUP ===
// a couple of ma's..
maFast = sma(maFastSource, maFastLength)
maSlow = sma(maSlowSource, maSlowLength)
// === PLOTTING ===
fast = plot(maFast, title = "Fast MA", color = red, linewidth = 2, style = line, transp = 30)
slow = plot(maSlow, title = "Slow MA", color = green, linewidth = 2, style = line, transp = 30)
// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 9, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2018, title = "From Year", minval = 2017)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 9999, title = "To Year", minval = 2017)
// === FUNCTION EXAMPLE ===
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
window() => time >= start and time <= finish ? true : false // create function "within window of time"
// === LOGIC ===
//enterLong = crossover(maFast, maSlow)
//exitLong = crossover(maSlow, maFast)
enterLong = crossover(maSlow, maFast)
exitLong = crossover(maFast, maSlow)
// Entry //
strategy.entry(id="Long Entry", long=true, when=window() and enterLong)
strategy.entry(id="Short Entry", long=false, when=window() and exitLong)
// === FILL ====
fill(fast, slow, color = maFast > maSlow ? green : red)