
एहलर्स ट्राइपोल बटवॉर्स्ट फ़िल्टर क्रॉस-ट्रेंड क्वांटिटेटिव ट्रेडिंग स्ट्रैटेजी एक तकनीकी विश्लेषण पद्धति है जो सिग्नल प्रोसेसिंग सिद्धांत पर आधारित है और यह जॉन एहलर्स के ट्राइपोल बटवॉर्स्ट फ़िल्टर एल्गोरिदम को वित्तीय बाजार के डेटा पर लागू करती है। यह रणनीति फ़िल्टर के माध्यम से कीमतों में उतार-चढ़ाव को चिकना करती है, संभावित बाजार रुझानों की पहचान करती है, और फ़िल्टर वेवल्यू और ट्रिगर वैल्यू के बीच के क्रॉसिंग पॉइंट का उपयोग करके ट्रेडिंग सिग्नल उत्पन्न करती है। इसके अलावा, रणनीति में स्प्रेड डिटेक्शन तंत्र को एकीकृत किया गया है, जो ट्रेडिंग निर्णयों की सटीकता में सुधार के लिए नियमित और छिपे हुए बहु-क्षेत्र बाजार संकेतों को पकड़ने के लिए उपयोग किया जाता है। इस रणनीति का मुख्य लाभ बाजार के शोर को प्रभावी ढंग से कम करने, रुझानों की पहचान की विश्वसनीयता में सुधार करने और सटीक प्रवेश और निकास बिंदुओं के माध्यम से ट्रेडिंग जोखिम को नियंत्रित करने में है।
एहलर्स त्रिपोल बटवर्थ फिल्टर क्रॉस-ट्रेंड क्वांटिफाइंग ट्रेडिंग रणनीति का मूल अपने अद्वितीय गणितीय मॉडल में निहित है। बटवर्थ फिल्टर एक प्रकार का कम-प्रवाह फिल्टर है जो सिग्नल प्रोसेसिंग के क्षेत्र में व्यापक रूप से उपयोग किया जाता है। इसकी मुख्य विशेषता यह है कि इसमें बैंड के भीतर अधिकतम समतलता के साथ आवृत्ति प्रतिक्रिया होती है। वित्तीय बाजारों में, यह विशेषता इसे दीर्घकालिक रुझान जानकारी को बनाए रखने के लिए अल्पकालिक मूल्य उतार-चढ़ाव को प्रभावी ढंग से फ़िल्टर करने में सक्षम बनाती है।
इस रणनीति को लागू करने के लिए मुख्य रूप से निम्नलिखित चरणों का पालन करना होगाः
फ़िल्टर गणनापारित किया गयाःcalculateButterworthFilterफ़ंक्शन त्रिपोल बटवर्थ फ़िल्टर मानों की गणना करता है। यह फ़ंक्शन एक गणितीय सूत्र का उपयोग करता है जो मूल मूल्य डेटा को चिकनी फ़िल्टर मानों और उनके संबंधित ट्रिगर मानों में परिवर्तित करता है। फ़िल्टर मानों की गणना में जटिल गणितीय संचालन शामिल हैं, जिसमें सूचकांक फ़ंक्शन, त्रिकोण फ़ंक्शन और पुनरावर्ती गणना शामिल है।
सिग्नल निर्माणइस रणनीति के तहत, ट्रेडिंग सिग्नल को दो तरीकों से उत्पन्न किया जाता हैः
लेन-देन निष्पादन: उत्पन्न सिग्नल के आधार पर संबंधित लेन-देन संचालन करना:
कोड में, नीति का उपयोग करेंstrategy.entryऔरstrategy.closeफ़ंक्शंस लेन-देन के संचालन करते हैं औरplotshapeफ़ंक्शन चार्ट पर व्यापार संकेत बिंदुओं की कल्पना करता है.
Ehlers त्रिध्रुवीय बार्टवर्थ फ़िल्टर क्रॉस-ट्रेंड क्वांटिफाइंग ट्रेडिंग रणनीति में कई महत्वपूर्ण फायदे हैंः
शक्तिशाली शोर फिल्टर क्षमतात्रिकोणीय बैटवर्थ फिल्टर में उत्कृष्ट सिग्नल चिकनाई क्षमता है, जो बाजार में अल्पकालिक उतार-चढ़ाव और झूठे संकेतों को प्रभावी ढंग से फ़िल्टर कर सकता है, जिससे व्यापारियों को वास्तविक बाजार की प्रवृत्ति की पहचान करना आसान हो जाता है। कोड में सटीक गणना किए गए गुणांक ((coef1 से coef4) के माध्यम से यह कुशल फ़िल्टरिंग प्राप्त की जाती है।
सटीक रुझान पहचान: फ़िल्टर और ट्रिगर लाइन का क्रॉसिंग स्पष्ट रुझान परिवर्तन संकेत प्रदान करता है, जिससे व्यापारियों को समय पर बाजार की प्रवृत्ति के बदलाव को पकड़ने में मदद मिलती है।ta.crossoverऔरta.crossunderफ़ंक्शंस, रणनीतियाँ इन महत्वपूर्ण चौराहों की सटीक पहचान करती हैं।
दृश्य अंतर्ज्ञानरणनीतिः चार्ट पर विभिन्न रंगों की रेखाओं और भरने वाले क्षेत्रों का उपयोग करके, फ्रिज मान और ट्रिगर मान के संबंधों को स्पष्ट रूप से प्रदर्शित किया जाता है, जिससे व्यापारियों को वर्तमान बाजार की स्थिति का त्वरित आकलन करने में मदद मिलती है। पीले रंग में तेजी का रुझान होता है, और बैंगनी रंग में गिरावट का रुझान होता है।
लचीला और समायोज्य: रणनीति में कस्टम मूल्य इनपुट और चक्र पैरामीटर का विकल्प दिया गया है, जिससे व्यापारी विभिन्न बाजार स्थितियों और व्यक्तिगत प्राथमिकताओं के अनुसार रणनीति पैरामीटर को समायोजित कर सकते हैं।
पूर्ण लेनदेन प्रणालीरणनीति में सिग्नल उत्पन्न करने का तंत्र ही नहीं है, बल्कि इसमें पूर्ण व्यापारिक तर्क भी शामिल है, जिसमें प्रवेश और निकास नियम शामिल हैं, जो इसे एक स्वतंत्र रूप से उपलब्ध व्यापारिक प्रणाली बनाता है।
सिग्नल दृश्यपारित किया गयाःplotshapeफ़ंक्शन, रणनीति चार्ट पर बिक्री और खरीद संकेत बिंदुओं को चिह्नित करता है, जिससे व्यापारियों को ऐतिहासिक संकेतों के प्रदर्शन के बारे में जानकारी मिलती है, जो रणनीति मूल्यांकन और अनुकूलन में मदद करता है।
हालांकि एहलर्स ट्राइपोल बटवर्थ फिल्टर क्रॉस-ट्रेंड क्वांटिफाइंग ट्रेडिंग रणनीति के कई फायदे हैं, फिर भी कुछ संभावित जोखिम हैंः
पिछड़ेपन का खतराएक फ़िल्टर संकेतक के रूप में, इस रणनीति में अनिवार्य रूप से कुछ विलंबता होती है। हालांकि त्रि-ध्रुवीय बार्टवर्थ फ़िल्टर में सरल चलती औसत की तुलना में कम विलंबता होती है, फिर भी तेजी से बदलते बाजारों में, संकेत आदर्श प्रवेश बिंदु के बाद दिखाई दे सकते हैं। इस जोखिम को कम करने के लिए, चक्र पैरामीटर को छोटा करने पर विचार किया जा सकता है, लेकिन यह संकेत संवेदनशीलता को भी बढ़ा सकता है।
झूठे संकेतों का खतरा: अस्थिर बाजारों में या स्पष्ट रूप से प्रवृत्ति के बिना बाजार की स्थिति में, रणनीतियों में अधिक झूठे संकेत हो सकते हैं, जिससे बार-बार व्यापार होता है और अनावश्यक शुल्क का नुकसान होता है। अतिरिक्त फ़िल्टरिंग शर्तों को जोड़कर या अन्य संकेतकों के साथ संयोजन में पुष्टि करके झूठे संकेतों के जोखिम को कम किया जा सकता है।
पैरामीटर संवेदनशीलता: रणनीति प्रदर्शन अत्यधिक आवधिक मापदंडों की पसंद पर निर्भर करता है। विभिन्न बाजार स्थितियों के लिए अलग-अलग पैरामीटर सेटिंग की आवश्यकता हो सकती है, गलत पैरामीटर चयन से रणनीति खराब प्रदर्शन हो सकता है। विभिन्न बाजार स्थितियों में मापदंडों के लिए ऐतिहासिक समीक्षा के माध्यम से अनुकूलन की सिफारिश की जाती है।
एकल सूचकांक जोखिमव्यापारिक निर्णय लेने के लिए एक एकल सूचक पर निर्भरता कुछ विशेष बाजार स्थितियों में खराब प्रदर्शन का कारण बन सकती है। इस रणनीति को व्यापार प्रणाली के हिस्से के रूप में और अन्य संकेतकों या विधियों के साथ संयुक्त रूप से निर्णय लेने के लिए सिफारिश की जाती है।
प्रणालीगत जोखिम: चरम बाजार की स्थिति में, जैसे कि अत्यधिक उतार-चढ़ाव या तरलता की कमी, ऐतिहासिक डेटा पर आधारित किसी भी तकनीकी संकेतक को विफल कर सकता है। उचित जोखिम नियंत्रण उपायों की स्थापना की सिफारिश की जाती है, जैसे कि स्टॉप-लॉस ऑर्डर और स्थिति आकार प्रबंधन।
एहलर्स ट्राइपोल बटवर्थ फिल्टर क्रॉस-ट्रेंड क्वांटिफाइंग ट्रेडिंग रणनीति के गहन विश्लेषण के आधार पर, कुछ संभावित अनुकूलन दिशाएं हैंः
अनुकूलित पैरामीटर डिजाइन: वर्तमान रणनीति में निश्चित चक्र पैरामीटर का उपयोग किया जाता है, आप एक अनुकूलन पैरामीटर तंत्र को लागू करने पर विचार कर सकते हैं, जो बाजार की अस्थिरता के आधार पर चक्र पैरामीटर को स्वचालित रूप से समायोजित करता है। उदाहरण के लिए, कीमतों के औसत वास्तविक तरंगों की गणना करके चक्र पैरामीटर को गतिशील रूप से समायोजित किया जा सकता है। (एटीआर), उच्च अस्थिरता वाले बाजारों में छोटी अवधि का उपयोग करें, कम अस्थिरता वाले बाजारों में लंबी अवधि का उपयोग करें।
बहुआयामी पुष्टि: फ़िल्टर की गणना के लिए कई समय चक्रों को शामिल करें, विभिन्न समय चक्रों के लिए सिग्नल एकजुटता की पुष्टि करने के लिए, झूठे सिग्नल को कम करने के लिए। निम्नलिखित कोड जोड़ सकते हैंः
[butterLong, triggerLong] = calculateButterworthFilter(priceInput, periodInput * 2)
longConfirmation = butter > trigger and butterLong > triggerLong
सहायक सूचकांक जोड़ें: अन्य तकनीकी संकेतकों को एक सिग्नल फ़िल्टर के रूप में एकीकृत करें, जैसे कि अपेक्षाकृत मजबूत सूचकांक ((आरएसआई), यादृच्छिक सूचक ((स्टोचैस्टिक) या व्यापारिक मात्रा सूचक, केवल सहायक संकेतकों की पुष्टि के मामले में व्यापार निष्पादित करें।
जोखिम प्रबंधन में सुधार: रणनीति में गतिशील रोक और रोक तंत्र को जोड़ना, बाजार की अस्थिरता के आधार पर रोक की दूरी को स्वचालित रूप से समायोजित करना। साथ ही, धन प्रबंधन सिद्धांतों के आधार पर स्थिति आकार की गणना करना संभव है।
फैलाव परीक्षण का अनुकूलन: वर्तमान कोड में स्प्रेड डिटेक्शन का उल्लेख किया गया है, लेकिन वास्तविक कार्यान्वयन में विस्तृत नहीं है। स्प्रेड डिटेक्शन एल्गोरिदम को बेहतर बनाया जा सकता है, विशेष रूप से छिपे हुए स्प्रेड की पहचान, सिग्नल की गुणवत्ता को और बेहतर बनाने के लिए।
बाजार परिवेश फ़िल्टरउदाहरण के लिए, लंबी अवधि के रुझान सूचक का उपयोग करके यह निर्धारित किया जा सकता है कि क्या वर्तमान में एक ट्रेंडिंग बाजार है या एक अस्थिर बाजार है, और तदनुसार ट्रेडिंग रणनीति को समायोजित करें।
मशीन लर्निंग: मशीन सीखने के तरीकों को शामिल करने पर विचार करें, जैसे कि वर्गीकरण एल्गोरिदम या सुदृढीकरण सीखने, पैरामीटर चयन और सिग्नल उत्पादन प्रक्रिया को अनुकूलित करने के लिए, रणनीति की अनुकूलन क्षमता में सुधार करना।
एहलर्स त्रिध्रुवीय बटवॉर्स्ट फ़िल्टर क्रॉस-ट्रेंड क्वांटिफाइंग ट्रेडिंग रणनीति सिग्नल प्रोसेसिंग सिद्धांत को तकनीकी विश्लेषण के साथ जोड़ती है, जो एक वैज्ञानिक, व्यवस्थित बाजार की प्रवृत्ति की पहचान करने का तरीका प्रदान करती है। यह रणनीति बाजार के शोर को कम करने के लिए उन्नत फ़िल्टर एल्गोरिदम का उपयोग करती है, जो मूल्य प्रवृत्ति के महत्वपूर्ण मोड़ को पकड़ती है, जिससे व्यापारिक निर्णयों के लिए एक उद्देश्यपूर्ण, मात्रात्मक आधार प्रदान किया जाता है।
रणनीति का मुख्य लाभ इसकी शक्तिशाली शोर-फ़िल्टरिंग क्षमता और सटीक प्रवृत्ति पहचान है, जो इसे स्पष्ट रूप से ट्रेंडिंग बाजार की स्थितियों में उत्कृष्ट प्रदर्शन करने में सक्षम बनाता है। साथ ही, यह दृश्य ट्रेडिंग सिग्नल और लचीले पैरामीटर समायोजन विकल्प प्रदान करके विभिन्न व्यापारियों की व्यक्तिगत आवश्यकताओं को पूरा करती है।
हालांकि, सभी तकनीकी संकेतकों की तरह, इस रणनीति को भी पिछड़ेपन, झूठे संकेत और पैरामीटर संवेदनशीलता जैसी चुनौतियों का सामना करना पड़ता है। अनुकूलन उपायों जैसे कि अनुकूलन पैरामीटर डिजाइन, बहु-चक्र सत्यापन और सहायक संकेतक एकीकरण को लागू करके रणनीति की स्थिरता और अनुकूलन क्षमता को और बढ़ाया जा सकता है।
अंततः, एहलर्स ट्राइपोल बटवॉर्स फिल्टर क्रॉस-ट्रेंड क्वांटिफाइड ट्रेडिंग स्ट्रैटेजी क्वांटिफाइड ट्रेडर्स को एक ठोस गणितीय आधार पर आधारित ट्रेडिंग टूल प्रदान करती है, जिसे एक स्वतंत्र ट्रेडिंग सिस्टम के रूप में या अधिक जटिल ट्रेडिंग रणनीतियों के एक घटक के रूप में उपयोग किया जा सकता है, जो ट्रेडिंग निर्णयों के लिए मूल्यवान संदर्भ जानकारी प्रदान करता है। निरंतर अनुकूलन और सुधार के माध्यम से, इस रणनीति को विभिन्न प्रकार के बाजार वातावरण में स्थिर और स्थायी ट्रेडिंग प्रदर्शन प्राप्त करने की उम्मीद है।
/*backtest
start: 2025-01-01 00:00:00
end: 2025-06-12 00:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Ehlers Three Pole Butterworth Filter Strategy", overlay=true)
// 输入参数
priceInput = input(hl2, title='Price')
periodInput = input(15, title='Period')
// Function to calculate Ehlers Three Pole Butterworth Filter
calculateButterworthFilter(price, period) =>
a1 = 0.00
b1 = 0.00
c1 = 0.00
coef1 = 0.00
coef2 = 0.00
coef3 = 0.00
coef4 = 0.00
butter = 0.00
trigger = 0.00
pi = 2 * math.asin(1)
a1 := math.exp(-3.14159 / period)
b1 := 2 * a1 * math.cos(1.738 * pi / period)
c1 := a1 * a1
coef2 := b1 + c1
coef3 := -(c1 + b1 * c1)
coef4 := c1 * c1
coef1 := (1 - b1 + c1) * (1 - c1) / 8
butter := coef1 * (price + 3 * nz(price[1]) + 3 * nz(price[2]) + nz(price[3])) + coef2 * nz(butter[1]) + coef3 * nz(butter[2]) + coef4 * nz(butter[3])
butter := bar_index < 4 ? price : butter
trigger := nz(butter[1])
[butter, trigger]
// Calculate filter values
[butter, trigger] = calculateButterworthFilter(priceInput, periodInput)
// 绘制滤波器线
plotButter = plot(butter, 'Butter', color=color.new(color.yellow, 0), linewidth=3)
plotTrigger = plot(trigger, 'Butter Lag', color=color.new(color.fuchsia, 0), linewidth=3)
fill(plotButter, plotTrigger, color=butter > trigger ? color.yellow : color.fuchsia, transp=40)
// 定义交易信号
longCondition = ta.crossover(butter, trigger)
exitLongCondition = ta.crossunder(butter, trigger)
shortCondition = ta.crossunder(butter, trigger)
exitShortCondition = ta.crossover(butter, trigger)
// 执行交易
if (longCondition)
strategy.entry("Buy", strategy.long)
if (exitLongCondition)
strategy.close("Buy")
if (shortCondition)
strategy.entry("Short", strategy.short)
if (exitShortCondition)
strategy.close("Short")
// 绘制交易信号
plotshape(longCondition, "Buy Signal", shape.triangleup, location.belowbar, color=color.green, size=size.small)
plotshape(exitLongCondition, "Exit Long Signal", shape.triangledown, location.abovebar, color=color.red, size=size.small)
plotshape(shortCondition, "Short Signal", shape.triangledown, location.abovebar, color=color.orange, size=size.small)
plotshape(exitShortCondition, "Exit Short Signal", shape.triangleup, location.belowbar, color=color.blue, size=size.small)