कैन्फ़मैन अनुकूली मूविंग एवरेज ट्रेंड फ़ॉलोइंग रणनीति


निर्माण तिथि: 2023-12-13 17:25:33 अंत में संशोधित करें: 2023-12-13 17:25:33
कॉपी: 0 क्लिक्स: 731
1
ध्यान केंद्रित करना
1212
समर्थक

कैन्फ़मैन अनुकूली मूविंग एवरेज ट्रेंड फ़ॉलोइंग रणनीति

अवलोकन

यह रणनीति प्रवृत्ति दिशा का न्याय करने के लिए कैंफमैन एडाप्टिव मूविंग एवरेज (KAMA) का उपयोग करती है, जो मध्य-लंबी रेखा प्रवृत्ति को पकड़ने के लिए है। यह रणनीति ट्रेडिंग सिग्नल की गुणवत्ता में सुधार के लिए चलती औसत की प्रवृत्ति ट्रैकिंग और कैंफमैन एडाप्टिव एवरेज की गतिशील समायोजन विशेषताओं को जोड़ती है।

रणनीति सिद्धांत

इस रणनीति का मुख्य सूचक है कफमैन स्व-अनुकूलित चलती औसत (KAMA) । KAMA अपने भारित कारकों को गतिशील रूप से बाजार में उतार-चढ़ाव के आकार के अनुसार समायोजित करता है, जिससे वक्र की संवेदनशीलता बढ़ जाती है। विशेष रूप से, जब बाजार में उतार-चढ़ाव बढ़ता है, तो KAMA की वक्र अधिक चिकनी हो जाती है; जब बाजार में उतार-चढ़ाव कम होता है, तो KAMA की वक्र अधिक संवेदनशील हो जाती है। इस प्रकार कुछ शोर को फ़िल्टर किया जा सकता है, जबकि नए रुझानों को समय पर पकड़ना संभव है।

रणनीति पहले KAMA के मूल्य की गणना करती है। इसके बाद KAMA लाइन के खुलेपन की स्थिति का न्याय करती हैः जब बंद मूल्य KAMA लाइन को पार करता है तो एक खरीद संकेत उत्पन्न होता है; जब बंद मूल्य KAMA लाइन को पार करता है तो एक बेचने का संकेत उत्पन्न होता है। इन व्यापार संकेतों के आधार पर स्थिति खोलने के लिए और अधिक खुलेपन करना।

श्रेष्ठता विश्लेषण

इस रणनीति का सबसे बड़ा लाभ यह है कि KAMA सूचक का उपयोग प्रवृत्ति का निर्णय लेने के लिए किया जाता है। KAMA सूचक अपने आप में एक मजबूत प्रवृत्ति ट्रैकिंग क्षमता रखता है, जो बाजार की स्थिति के अनुकूल पैरामीटर को गतिशील रूप से समायोजित कर सकता है, जिससे अधिक विश्वसनीय व्यापारिक संकेत उत्पन्न होते हैं। सरल चलती औसत और सूचकांक चलती औसत की तुलना में, KAMA सूचक बेहतर प्रवृत्ति की पहचान करने और झूठे संकेतों को कम करने में सक्षम है।

इसके अलावा, रणनीति केवल प्रवृत्ति की दिशा का आकलन करने के लिए KAMA की रिक्त स्थिति का उपयोग करती है। कोई अतिरिक्त फ़िल्टरिंग शर्तें सेट नहीं की गई हैं, जो रणनीति तर्क को सरल बनाती हैं और कम पैरामीटर भी देती हैं, जिससे अति-अनुकूलन का जोखिम कम हो जाता है, जो पैरामीटर स्थिरता और क्रॉस-मार्केट अनुकूलन के लिए फायदेमंद है।

जोखिम विश्लेषण

इस रणनीति का मुख्य जोखिम यह है कि KAMA स्वयं एक पिछड़ा हुआ सूचक है, और ट्रेडिंग सिग्नल उत्पन्न होने पर बाजार की प्रवृत्ति पहले से ही उलट सकती है। इससे स्टॉप लॉस का जोखिम पैदा हो सकता है। इसके अलावा, KAMA वक्र के भीतर अल्पकालिक उतार-चढ़ाव की स्थिति भी हो सकती है, जो कुछ लगातार गलत संकेतों का उत्पादन कर सकती है।

जोखिम को कम करने के लिए, अन्य संकेतकों के साथ व्यापार संकेतों की पुष्टि करने के लिए विचार किया जा सकता है, जैसे कि अस्थिरता दर सूचक, लेन-देन की मात्रा सूचक, आदि। पैरामीटर को उचित रूप से समायोजित किया जा सकता है, पहचान करना KAMA वक्र को और अधिक चिकना बनाता है।

अनुकूलन दिशा

इस रणनीति को अनुकूलित करने के लिए बहुत जगह है, मुख्य रूप से निम्नलिखित पहलुओं सेः

  1. सिग्नल फ़िल्टरिंग के लिए अन्य संकेतकों के साथ संयोजन, जैसे कि MACD, कंपन सूचकांक, आदि, सिग्नल गुणवत्ता में सुधार

  2. एकल हानि को नियंत्रित करने के लिए चलती रोक या शेष वक्र रोक का उपयोग करके अतिरिक्त रोक रणनीति

  3. प्रवृत्ति को अधिक प्रभावी ढंग से कैप्चर करने के लिए पैरामीटर का अनुकूलन

  4. बहु-समय चक्र विश्लेषण जोड़ें, उच्च समय चक्रों का उपयोग करें और बड़े रुझानों की दिशा निर्धारित करें

  5. मशीन सीखने के तरीकों का उपयोग करके स्वचालित रूप से पैरामीटर को अनुकूलित करें ताकि वे विभिन्न किस्मों के अनुकूल हो सकें

संक्षेप

इस रणनीति की समग्र सोच स्पष्ट है, यह KAMA सूचक के माध्यम से प्रवृत्ति की दिशा का आकलन करती है, इसमें प्रवृत्ति ट्रैकिंग क्षमता, सरल तर्क और कम पैरामीटर जैसे फायदे हैं। लेकिन प्रवृत्ति को बदलने के लिए पिछड़ेपन की पहचान करने का जोखिम भी है। इस रणनीति को कई तरीकों से अनुकूलित किया जा सकता है, जिससे इसकी प्रभावशीलता बेहतर हो और इसकी अनुकूलनशीलता अधिक व्यापक हो।

रणनीति स्रोत कोड
/*backtest
start: 2022-12-06 00:00:00
end: 2023-12-12 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2019

//@version=3
strategy(title = "Noro's KAMA Strategy", shorttitle="KAMA str", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot")
length = input(3, minval = 1) 
fast = input(2, minval = 1)
slow = input(30, minval = 1)
src = input(title = "Source",  defval = close)
type = input(defval = "Trend", options = ["Trend", "Crossing"], title = "Type")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//KAMA
volatility = sum(abs(src-src[1]), length)
change = abs(src[1]-src[length])
er = iff(volatility != 0, change/volatility, 0)
fastSC = 2/(fast+1)
slowSC = 2/(slow+1)
sc = pow((er*(fastSC-slowSC))+slowSC, 2)
bid = hl2
kama = 0.0
kama := nz(kama[1])+(sc*(bid-nz(kama[1])))
plot(kama, color = black, title = "KAMA", trackprice = false, style = line, linewidth = 3)

//Signals
up = false
dn = false
up := (type == "Crossing" and kama > kama[1]) or (type == "Trend" and close > kama)
dn := (type == "Crossing" and kama < kama[1]) or (type == "Trend" and close < kama)

//Trading
size = strategy.position_size
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up
    strategy.entry("L", strategy.long, needlong ? lot : 0, when = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    
if dn
    strategy.entry("S", strategy.short, needshort ? lot : 0, when = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))