इस रणनीति में गतिशील औसत के क्रॉसिंग सिद्धांत का उपयोग किया जाता है, जो कि तेजी से और धीमी रेखाओं के क्रॉसिंग के माध्यम से प्रवृत्ति की दिशा का आकलन करता है, जो खरीद और बेचने के संकेत देता है। यह रणनीति सरल और विश्वसनीय है और स्थिर आय की तलाश करने वाले निवेशकों के लिए उपयुक्त है।
इस रणनीति में दो चलती औसत का उपयोग किया जाता है, 7 दिन की औसत के रूप में एक तेज और 5 महीने की औसत के रूप में एक धीमी रेखा। तेज गति से मूल्य परिवर्तन को पकड़ने के लिए, धीमी गति से शोर को खत्म करने के लिए, और प्रवृत्ति की दिशा का न्याय करने के लिए। जब तेज गति धीमी गति से नीचे की ओर से टूट जाती है, तो इसे बैल के संकेत के रूप में माना जाता है, और जब तेज गति से नीचे की ओर गिरती है, तो धीमी गति से टूट जाती है, इसे भालू के संकेत के रूप में माना जाता है, और शून्य।
विशेष रूप से, रणनीति 7-दिवसीय सरल चलती औसत और मई सरल चलती औसत की गणना करके और इसे एक मूल्य चार्ट पर चित्रित करके खरीदारी के संकेत उत्पन्न करती है। जब 7-दिवसीय रेखा नीचे से मई रेखा को पार करती है, तो यह एक खरीद संकेत उत्पन्न करती है; जब 7-दिवसीय रेखा ऊपर से नीचे से मई रेखा को पार करती है, तो यह एक बेचने का संकेत उत्पन्न करती है। रणनीति ने संकेत उत्पन्न करने के समय को भी चिह्नित किया है।
इस रणनीति के निम्नलिखित फायदे हैं:
यह एक सरल और विश्वसनीय सिद्धांत है, जो एक प्रसिद्ध चलती औसत के क्रॉसिंग सिद्धांत पर आधारित है।
केवल दो चलती औसत के साथ, पैरामीटर का चयन सरल और लागू करने में आसान है।
यह ट्रेंड को पहचानने और बाजार के शोर को फ़िल्टर करने में मदद करता है।
अलग-अलग आवधिक औसत रेखाओं का उपयोग विभिन्न समय के पैमाने पर रुझान परिवर्तन को पकड़ने के लिए किया जाता है
यह सरल है, कोड को समझने में आसान है, और तर्क स्पष्ट है।
दृश्य संकेत संकेत स्पष्ट रूप से सहज हैं, और परिचालन निर्णय स्पष्ट हैं।
इस रणनीति के कुछ जोखिम भी हैं:
केवल समरेखा क्रॉस ऑपरेशन के आधार पर, गलत ट्रिगर सिग्नल उत्पन्न करना आसान है।
प्रवृत्ति की ताकत या कमजोरी का आकलन करने में असमर्थता के कारण, अक्सर आघात के दौरान रुकावट का सामना करना पड़ता है।
स्थिर औसत चक्र बाजार में परिवर्तन के लिए अनुकूलन पैरामीटर की आवश्यकता नहीं है।
यह भी कहा गया है कि यह एक जोखिम है कि बाजार के अनुसार व्यापार किया जा सकता है।
एक सरल सिद्धांत के आधार पर, लाभ की संभावना कम हो सकती है।
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
अन्य सूचकांक जोड़ें जो खरीद और बिक्री के बिंदु को निर्धारित करते हैं, जैसे कि केडीजे सूचकांक जो ओवरबॉट और ओवरसोल्ड को निर्धारित करता है।
स्टॉप लॉस मैकेनिज्म जैसे स्टॉप लॉस को ट्रैक करना और नुकसान को रोकने के लिए।
औसत रेखा चक्र को अनुकूलित करें ताकि यह विभिन्न परिदृश्यों के लिए अनुकूल हो सके।
यह फ़िल्टर झूठी दरारों से बचने के लिए किया गया है।
प्रवृत्ति की ताकत का आकलन करें, जैसे कि औसत रेखा स्लिप की गणना, विभिन्न ताकतों के संचालन।
इस प्रकार, यह पता लगाया गया है कि क्या यह प्रवृत्ति निरंतर है, और अधिक समय चक्र विश्लेषण के साथ।
इस रणनीति के आधार पर चलती औसत के पार सिद्धांत, आसानी से और विश्वसनीय रूप से पहचान करने के लिए बुल और भालू रुझान. इसका फायदा यह है कि यह आसान है, और नुकसान यह है कि वहाँ कुछ अंधाधुंध रुझान का पालन करने का जोखिम है. इस तरह के तरीकों के रूप में पैरामीटर अनुकूलन, अतिरिक्त सहायक संकेतकों और अन्य के माध्यम से रणनीति की प्रभावशीलता को बढ़ा सकते हैं. निवेशकों को अपने जोखिम वरीयताओं के अनुसार उपयोग करने के लिए चुन सकते हैं.
/*backtest
start: 2022-09-30 00:00:00
end: 2023-10-06 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/
// © dadashkadir
//@version=4
strategy("Mount MaV - Day MaV CrossOver Strgty", shorttitle="Yusram Str.", overlay=true)
src = input(title= "Kaynak", type=input.source, defval=close)
mav = input(title="Hareketli Ortlama Tipi", defval="SMA", options=["SMA", "EMA", "WMA"])
Gbar = input(title="Günlük Bar Sayısı", defval=7, minval=1, maxval=999)
Abar = input(title="Aylık Bar Sayısı", defval=5, minval=1, maxval=999)
//displacement = input(20, minval=1, title="Displacement")
getMA(src, length) =>
ma = 0.0
if mav == "SMA"
ma := sma(src, length)
ma
if mav == "EMA"
ma := ema(src, length)
ma
if mav == "WMA"
ma := wma(src, length)
ma
ma
long = "M" //Aylık
ln = security(syminfo.ticker, long, src)
lnma = getMA(ln, Abar)
gnma = getMA(src, Gbar)
col1= gnma>gnma[1]
col3= gnma<gnma[1]
colorM = col1 ? color.green : col3 ? color.navy : color.yellow
l1 = plot(lnma, title="MhO", trackprice = true, style=plot.style_line, color=color.red, linewidth=3)
l2 = plot(gnma, title="DhO", trackprice = true, style=plot.style_line, color=colorM, linewidth=3)
fill(l1, l2, color = lnma < gnma ? color.green : color.red, title="Gölgelendirme", transp=90)
zamanaralik = input (2020, title="Backtest Başlangıç Tarihi")
al = crossover (gnma, lnma) and zamanaralik <= year
sat = crossover (lnma, gnma) and zamanaralik <= year
plotshape(al, title = "Giriş", text = 'Al', style = shape.labelup, location = location.belowbar, color= color.green, textcolor = color.white, transp = 0, size = size.tiny)
plotshape(sat, title = "Çıkış", text = 'Sat', style = shape.labeldown, location = location.abovebar, color= color.red, textcolor = color.white, transp = 0, size = size.tiny)
FromDay = input(defval = 1, title = "Str. Başlama Tarihi Gün", minval = 1, maxval = 31)
FromMonth = input(defval = 1, title = "Str. Başlama Tarihi Ay", minval = 1, maxval = 12)
FromYear = input(defval = 2015, title = "Str. Başlama Tarihi Yıl", minval = 2005)
ToDay = input(defval = 1, title = "Str. Bitiş Tarihi Gün", minval = 1, maxval = 31)
ToMonth = input(defval = 1, title = "Str. Bitiş Tarihi Ay", minval = 1, maxval = 12)
ToYear = input(defval = 9999, title = "Str. Bitiş Tarihi Yıl", minval = 2006)
Start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
Finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
Timerange() =>
time >= Start and time <= Finish ? true : false
if al
strategy.entry("Al", strategy.long, when=Timerange())
if sat
strategy.entry("Sat", strategy.short, when=Timerange())