
यह रणनीति एक सरल SMA औसत रेखा क्रॉसिंग रणनीति है। यह दो अलग-अलग अवधि के सरल चलती औसत का उपयोग करता है। (SMA) जब तेज रेखा नीचे से ऊपर की ओर धीमी रेखा से गुजरती है, तो यह अधिक होता है, और जब तेज रेखा ऊपर से नीचे की ओर धीमी रेखा से गुजरती है, तो यह शांत होता है। यह रणनीति दो समान रेखाओं की लंबाई को अनुकूलित कर सकती है, साथ ही साथ आरंभ और समाप्ति की तारीखें भी।
इस रणनीति का मुख्य विचार व्यापार करने के लिए समानांतर रेखा की प्रवृत्ति विशेषताओं और समानांतर रेखा के पार संकेत विशेषताओं का उपयोग करना है। जब तेज रेखा धीमी रेखा के ऊपर होती है, तो यह दर्शाता है कि यह वर्तमान में बढ़ रही प्रवृत्ति में है, और एक बहुस्तरीय स्थिति होनी चाहिए; जब तेज रेखा धीमी रेखा के नीचे होती है, तो यह दर्शाता है कि यह वर्तमान में गिरावट की प्रवृत्ति में है, और इसे बंद करना चाहिए।
एसएमए समानांतर क्रॉसिंग रणनीति एक सरल, समझने में आसान, क्लासिक व्यावहारिक ट्रेंड ट्रैकिंग रणनीति है, जो शुरुआती लोगों के लिए सीखने और उपयोग करने के लिए उपयुक्त है। यह समानांतर की प्रवृत्ति की विशेषता और समानांतर क्रॉसिंग की संकेत विशेषता का उपयोग करता है, जो बाजार की प्रवृत्ति में बदलाव को जल्दी से पकड़ सकता है। लेकिन इस रणनीति में कुछ सीमाएं और जोखिम भी हैं, जैसे कि विलंबता, लगातार व्यापार, स्टॉप की कमी आदि। इसलिए, वास्तविक अनुप्रयोगों में, रणनीति की स्थिरता और लाभप्रदता बढ़ाने के लिए उचित अनुकूलन और सुधार की आवश्यकता होती है।
/*backtest
start: 2023-03-22 00:00:00
end: 2024-03-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © j0secyn
//@version=5
strategy("MA Cross", overlay=true, margin_long=100, margin_short=100, default_qty_value=100, default_qty_type=strategy.percent_of_equity, initial_capital=10000)
// === INPUT BACKTEST RANGE ===
fromDay = input.int(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input.int(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input.int(defval = 2018,title = "From Year", minval = 1970)
thruDay = input.int(defval = 30, title = "Thru Day", minval = 1, maxval = 31)
thruMonth = input.int(defval = 9, title = "Thru Month", minval = 1, maxval = 12)
thruYear = input.int(defval = 2024, title = "Thru Year", minval = 1970)
slow_ma_length = input.int(defval = 100, title = "Slow MA lenght")
fast_ma_length = input.int(defval = 30, title = "Fast MA lenght")
// === FUNCTION EXAMPLE ===
start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window
finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window
window() => true
// === LOGIC ===
crossOv = ta.crossover(ta.sma(close, fast_ma_length), ta.sma(close, slow_ma_length))
crossUn = ta.crossunder(ta.sma(close, fast_ma_length), ta.sma(close, slow_ma_length))
// === EXECUTION ===
// strategy.entry("L", strategy.long, when = window() and crossOv) // enter long when "within window of time" AND crossover
// strategy.close("L", when = window() and crossUn) // exits long when "within window of time" AND crossunder
strategy.entry("L", strategy.long, when = window() and crossOv) // enter long when "within window of time" AND crossover
strategy.close("L", when = window() and crossUn) // exits long when "within window of time" AND crossunder