दोहरी चलती औसत रणनीति 360°

लेखक:चाओझांग, दिनांकः 2024-02-02 14:29:59
टैगः

img

अवलोकन

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

रणनीति तर्क

दोहरी चलती औसत 360° रणनीति का मूल तर्क हैः

  1. 1-मिनट और कैलमैन-फ़िल्टर किए गए चलती औसत की गणना करें।
  2. दो चलती औसत के बीच मूल्य अंतर के आधार पर स्पर्श कोण की गणना करें;
  3. प्रवृत्ति शक्ति संकेतों को निर्धारित करने के लिए स्पर्श कोणों को जमा करें;
  4. इस आधार पर ट्रेडिंग सिग्नल जारी करें कि संचित स्पर्श कोण पूर्व निर्धारित सीमाओं से अधिक हैं या नहीं।

विशेष रूप से, रणनीति कच्चे 1-मिनट चलती औसत और कैलमैन-फ़िल्टर्ड चलती औसत को परिभाषित करती है। कैलमैन फ़िल्टर चलती औसत से कुछ शोर को समाप्त करता है ताकि इसे चिकनी बनाया जा सके। दो चलती औसत के बीच स्पर्श कोण मूल्य प्रवृत्ति परिवर्तन को दर्शाता है। उदाहरण के लिए, जब स्पर्श कोण सकारात्मक होता है, तो यह एक ऊपर की प्रवृत्ति को दर्शाता है; इसके विपरीत, एक नकारात्मक कोण एक नीचे की प्रवृत्ति का प्रतिनिधित्व करता है।

रणनीति उस अवधि के भीतर सभी सकारात्मक और नकारात्मक स्पर्श कोणों को जोड़ने के लिए गणना अवधि के रूप में 30 मिनट चुनती है। जब राशि 360 डिग्री से अधिक होती है, तो यह एक बेहद मजबूत प्रवृत्ति का संकेत देती है और एक लंबा संकेत जारी करती है; इसके विपरीत, जब राशि -360 डिग्री से कम होती है, तो यह एक प्रवृत्ति उलट का संकेत देती है और एक छोटा संकेत जारी करती है।

लाभ विश्लेषण

दोहरी चलती औसत 360° रणनीति के मुख्य लाभ इस प्रकार हैंः

  1. चलती औसत अधिक विश्वसनीय व्यापारिक निर्णयों के लिए अल्पकालिक बाजार शोर को फ़िल्टर करती है;
  2. स्पर्श कोण प्रवृत्ति की शक्ति को मापते हैं, अकेले चलती औसत पैटर्न द्वारा न्याय करने की व्यक्तिपरकता से बचते हैं;
  3. कई स्पर्श कोणों को जोड़ने से शोर में कमी के बेहतर प्रभाव होते हैं, जिसके परिणामस्वरूप अधिक विश्वसनीय ट्रेडिंग सिग्नल होते हैं।
  4. एकल चलती औसत रणनीतियों की तुलना में, दोहरी चलती औसत प्रवृत्ति शक्ति निर्धारण के साथ मिलकर रणनीति को अधिक व्यापक और मजबूत बनाती है।

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

डबल मूविंग एवरेज 360° रणनीति में भी कुछ जोखिम होते हैंः

  1. चलती औसत मूल्य परिवर्तनों में देरी करती है और अल्पकालिक रुझान मोड़ बिंदुओं को याद कर सकती है;
  2. केवल संचित प्रवृत्ति शक्ति संकेत पर भरोसा करना बाजार की अस्थिरता से बाधित हो सकता है;
  3. अनुचित पैरामीटर सेटिंग्स (जैसे गणना अवधि की लंबाई) से ट्रेडों में कमी आ सकती है या गलत संकेत उत्पन्न हो सकते हैं।

उपरोक्त जोखिमों को कम करने के लिए, चलती औसत अवधि को छोटा करने, पैरामीटर संयोजनों को अनुकूलित करने, स्टॉप-लॉस तंत्र जोड़ने जैसे उपायों को अपनाया जा सकता है।

अनुकूलन दिशाएँ

दोहरी चलती औसत रणनीति 360° को निम्न द्वारा और अनुकूलित किया जा सकता हैः

  1. अनुकूलनशील चलती औसत को शामिल करना जो बाजार की अस्थिरता के आधार पर मापदंडों को समायोजित करते हैं;
  2. अनुकूलित पैरामीटर संयोजन बनाने के लिए कई चलती औसत अवधि का संदर्भ;
  3. अस्थिरता, ट्रेडिंग वॉल्यूम आदि के आधार पर गतिशील रुझान निर्धारण मॉड्यूल जोड़ना;
  4. मशीन लर्निंग मॉडल के साथ पैरामीटर ट्यूनिंग या व्यापार निर्णयों में सहायता करना।

सारांश

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


/*backtest
start: 2024-01-25 00:00:00
end: 2024-01-30 08:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
//@library=math
strategy("策略360°(测试)", overlay=true)

// 定义1分钟均线
ma1 = request.security(syminfo.tickerid, "1", ta.sma(close, 1)) // 在这里使用了 math.sma() 函数
//plot(ma1, color=color.yellow, title="原始均线")

// 定义卡尔曼滤波函数,参考了[1](https://www.tradingview.com/pine-script-docs/en/v5/language/Methods.html)和[2](https://www.tradingview.com/pine-script-docs/en/v5/language/Operators.html)的代码
kalman(x, g) => 
    kf = 0.0 
    dk = x - nz(kf[1], x) // 在这里使用了 nz() 函数
    smooth = nz(kf[1], x) + dk * math.sqrt(g * 2) // 在这里使用了 math.sqrt() 函数
    velo = 0.0 
    velo := nz(velo[1], 0) + g * dk // 在这里使用了 nz() 函数
    kf := smooth + velo 
    kf 

// 定义卡尔曼滤波后的均线
ma2 = kalman(ma1, 0.01) 
plot(ma2, color=color.blue, title="卡尔曼滤波后的均线")

// 定义切线角
angle = math.todegrees(math.atan(ma2 - ma2[1])) // 在这里使用了 math.degrees() 和 math.atan() 函数

// 定义累加的切线角
cum_angle = 0.0
cum_angle := nz(cum_angle[1], 0) + angle // 在这里使用了 nz() 函数

// 定义30分钟周期
period = 30 // 您可以根据您的需要修改这个参数

// 定义周期内的切线角总和
sum_angle = 0.0
sum_angle := math.sum(angle, period) // 在这里使用了 math.sum() 函数,把周期内的切线角总和改成简单地把 5 个切线角相加

// 定义买入和卖出条件
buy = sum_angle > 360// 在这里使用了 math.radians() 函数
sell = sum_angle < -360

// 执行买入和卖出操作
strategy.entry("Long", strategy.long, when=buy)
strategy.close("Short", when=buy)
strategy.entry("Short", strategy.short, when=sell)
strategy.close("Long", when=sell)

// 绘制曲线图
plot(sum_angle, color=color.green, title="周期内的切线角总和")
plot(angle, color=color.red, title="切线角") // 这是我为您添加的代码,用于显示实时计算的切线角


अधिक