[TOC]

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

उनमें से, n, n1, और n2 सभी अवधि पैरामीटर हैं। डिफ़ॉल्ट रूप से, n 10 अवधि है, n1 2 अल्पकालिक अवधि है, और n2 30 दीर्घकालिक अवधि है। यह भी KAMA के लेखक पेरी कॉफ़मैन द्वारा मान्यता प्राप्त मापदंडों का एक सेट है। n का उपयोग दिशा और अस्थिरता गणना दक्षता के लिए किया जाता है, n1 और n2 तेज़ चलती औसत और धीमी चलती औसत की अवधि हैं। सिद्धांत रूप में, जितना बड़ा होगा n1 पैरामीटर जितना अधिक होगा, KAMA उतना ही अधिक सुचारू होगा।
KAMA की गणना विधि है: पहले दिशा (DIR) और अस्थिरता (VIR) की गणना करें, और फिर दोनों के अनुपात के आधार पर दक्षता की गणना करें। दक्षता (ईआर) मूल्य परिवर्तन की डिग्री का एक माप है और इसकी गणना सरलता से की जाती है: दिशा / अस्थिरता। गणना परिणाम 0 और 1 के बीच है। जब ER मान 0 के करीब होता है, तो यह दर्शाता है कि बाजार अस्थिर अवस्था में है। जब ER मान 1 के करीब होता है, तो यह दर्शाता है कि बाजार ट्रेंडिंग अवस्था में है।
एक बार दक्षता (ईआर) की गणना हो जाने के बाद, तीव्र गतिमान औसत और धीमी गतिमान औसत को मिलाकर समतलीकरण स्थिरांक (सीएस) निकाला जा सकता है: दक्षता * (तेज - धीमा) + धीमा। सीएस प्रवृत्ति आंदोलन की गति का प्रतिनिधित्व करता है। सीएस के गणना सूत्र के अनुसार, हम पा सकते हैं कि सीएस का परिवर्तन हमेशा ईआर के परिवर्तन के समानुपातिक होता है।
इसके बाद गुणांक (CQ) की गणना समतलीकरण शक्ति के आधार पर की जाती है, जिसका लक्ष्य धीमी चक्र मापदंडों को गणना में अधिक महत्वपूर्ण भूमिका निभाने के लिए प्रेरित करना है, जो कि अधिक रूढ़िवादी दृष्टिकोण भी है। KAMA की अंतिम चिकनाई गुणांक (CQ) द्वारा निर्धारित की जाती है। KAMA की गणना में, गुणांक (CQ) अंतिम दो मूविंग एवरेज स्मूथिंग के अवधि मापदंडों को निर्धारित करता है, अर्थात्: घातीय भारित औसत (गतिशील मूविंग औसत (समापन मूल्य, गुणांक), 2).
यद्यपि KAMA की गणना पद्धति बहुत जटिल है, लेकिन इसका उपयोग सामान्य चलती औसत के समान ही है। व्यावहारिक अनुप्रयोगों में, यह न केवल बाजार के रुझान को निर्धारित कर सकता है, बल्कि सटीक खरीद और बिक्री बिंदुओं के लिए भी इस्तेमाल किया जा सकता है। क्योंकि यह बहुत “स्मार्ट” है, इसका उपयोग कई व्यापारिक रणनीतियों में किया जा सकता है और यहां तक कि डिजिटल मुद्राओं में भी इसे आजमाया जा सकता है।
चरण 1: KAMA की गणना करें
सूचना! ऊपरी बाएँ कोने में, प्रोग्रामिंग भाषा का चयन करें:My语言. तालिब लाइब्रेरी में पहले से ही एक तैयार KAMA मौजूद है, लेकिन इसमें केवल एक बाहरी पैरामीटर (n) अवधि है, और n1 और n2 डिफ़ॉल्ट रूप से 2 और 30 हैं। इस लेख में बताई गई रणनीतियाँ केवल संदर्भ के लिए हैं। अच्छे व्यावहारिक कौशल वाले मित्र भी अपनी रणनीतियाँ लिख सकते हैं। फिर My भाषा को सीधे जावास्क्रिप्ट भाषा के साथ भी मिलाया जा सकता है। निम्नलिखित कोड पर ध्यान दें:
%% // My语言内JavaScript的标准格式
scope.KAMA = function() {
var r = _C(exchange.GetRecords); // 获取K线数组
if (r.length > 140) { // 过滤K线长度
var kama = talib.KAMA(r, 140); // 调用talib库计算KAMA
return kama[kama.length - 2]; // 返回KAMA的具体数值
}
return;
}
%% // My语言内JavaScript的标准格式
चरण 2: ट्रेडिंग की शर्तों की गणना करें और ऑर्डर दें
%%
scope.KAMA = function() {
var r = _C(exchange.GetRecords);
if (r.length > 140) {
var kama = talib.KAMA(r, 140);
return kama[kama.length - 2];
}
return;
}
%%
K^^KAMA; // 把KAMA打印到图表上
A:CLOSE; // 把收盘价打印到图表上
K > REF(K, 1) && CLOSE > K,BK; // 开多
K < REF(K, 1) && CLOSE < K,SK; // 开空
K < REF(K, 1) || CLOSE < K,SP; // 平多
K > REF(K, 1) || CLOSE > K,BP; // 平空
चरण 3: रणनीति सिग्नल फ़िल्टरिंग विधि सेट करें
%%
scope.KAMA = function() {
var r = _C(exchange.GetRecords);
if (r.length > 140) {
var kama = talib.KAMA(r, 140);
return kama[kama.length - 2];
}
return;
}
%%
K^^KAMA;
A:CLOSE;
K > REF(K, 1) && CLOSE > K,BK;
K < REF(K, 1) && CLOSE < K,SK;
K < REF(K, 1) || CLOSE < K,SP;
K > REF(K, 1) || CLOSE > K,BP;
AUTOFILTER; // 启用一开一平信号过滤机制
वास्तविक ट्रेडिंग माहौल के करीब पहुंचने के लिए, हम बैकटेस्टिंग के दौरान तनाव परीक्षण करने के लिए ओपनिंग और क्लोजिंग पोजीशन के लिए 2 जंप की स्लिपेज का उपयोग करते हैं। परीक्षण वातावरण इस प्रकार है:
परीक्षण वातावरण
राजस्व विवरण
वित्तपोषण वक्र

उपरोक्त बैकटेस्ट परिणामों से देखते हुए, यह सरल KAMA रणनीति वास्तव में उम्मीदों पर खरी उतरी। 2018 में डिजिटल मुद्रा के सुपर बियर मार्केट में भी, पूंजी वक्र ने बड़ी वापसी नहीं दिखाई, और बाजार दीर्घकालिक अस्थिरता के दौर में था .बार-बार पोजीशन खोलने और बंद करने से अनावश्यक नुकसान होगा। साथ ही, 2019 में बुल मार्केट में भी इसका प्रदर्शन अच्छा रहा।
एक उत्कृष्ट रणनीति जिसे व्यवहार में लाया जा सकता है, उसे बार-बार परिष्कृत और परिष्कृत किया जाना चाहिए। इस लेख में बताई गई रणनीतियों में अभी भी अनुकूलन और उन्नयन के लिए बहुत जगह है, जैसे कि कुछ फ़िल्टरिंग शर्तें, सक्रिय लाभ-लेना और स्टॉप-अप जोड़ना। हानि की स्थिति, आदि। एक प्रकार के मूविंग एवरेज के रूप में, KAMA साधारण मूविंग एवरेज के फायदे और नुकसान को ग्रहण करता है और साथ ही उनमें सुधार भी करता है। अप्रत्याशित बाजार में, भले ही कोई “सर्वोत्तम पैरामीटर” तय हो, लेकिन भविष्य की बाजार स्थितियों के अनुकूल ढलना मुश्किल होता है। इसलिए, प्रवृत्ति का अनुसरण करने और बाजार स्थितियों के साथ बदलने का यह तरीका बेहतर विकल्प हो सकता है।