
एक द्वि-चलती औसत रेखा के 9 वें और 14 वें दिन की रेखाओं का उपयोग करके खरीद और बिक्री संकेतों का निर्माण करने के लिए। खरीदें जब 9 वें दिन की रेखा नीचे से 14 वें दिन की रेखा को तोड़ती है और एक गोल्ड फोर्क बनाती है, और बेचें जब 9 वें दिन की रेखा 14 वें दिन की रेखा को तोड़ती है और एक मृत फोर्क बनाती है। झूठे संकेतों को फ़िल्टर करने के लिए, रणनीति को 50 वें दिन की रेखा में भी पेश किया जाता है।
यह रणनीति मुख्य रूप से दो चलती औसत रेखा संकेतकों के गोल्ड फोर्क और डेड फोर्क सिग्नल के आधार पर व्यापार करती है। दो चलती औसत रेखाओं में, 9 वीं रेखा एक अल्पकालिक प्रवृत्ति का प्रतिनिधित्व करती है, 14 वीं रेखा एक मध्यम अवधि की प्रवृत्ति का प्रतिनिधित्व करती है, और उनके क्रॉसिंग बाजार की प्रवृत्ति को बदलने के लिए एक प्रभावी तकनीकी संकेतक है। जब एक अल्पकालिक प्रवृत्ति रेखा नीचे से मध्य अवधि की प्रवृत्ति रेखा को तोड़ती है और गोल्ड फोर्क बनाती है, तो यह एक खरीद संकेत है। जब यह ऊपर से टूटती है और एक मृत फोर्क बनाती है, तो यह एक कमजोर बिक्री संकेत है।
इसके अलावा, रणनीति ने 50 दिन की रेखा को भ्रामक संकेतों को फ़िल्टर करने के लिए पेश किया है। केवल खरीदारी तब होती है जब कीमत 50 दिन की रेखा से ऊपर होती है; केवल बिक्री तब होती है जब कीमत 50 दिन की रेखा से नीचे होती है। 50 दिन की रेखा मध्यम और दीर्घकालिक रुझानों का प्रतिनिधित्व करती है और केवल मध्यम और दीर्घकालिक रुझानों की सहमति के बाद ही अल्पकालिक संचालन किया जाता है।
मूल कोड तर्क इस प्रकार है:
// 买入条件:9日线上穿14日线 且 当前价格高于50日线
buyCondition = ta.crossover(sma9, sma14) and close > sma50
// 卖出条件:9日线下穿14日线 且 当前价格低于50日线
sellCondition = ta.crossunder(sma9, sma14) and close < sma50
दोहरी चलती औसत रेखा रणनीति के फायदे स्पष्ट हैंः
दोहरी गतिशील समानांतर रणनीति के साथ कुछ जोखिम भी हैं:
जोखिम के लिए, निम्नलिखित अनुकूलन किया जा सकता हैः
दोहरी गतिशील सम-रेखा रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
दोहरी गतिशील समानांतर रणनीति समग्र रूप से एक दक्षता-लाभकारी रणनीति है। यह निरंतर लाभदायक हो सकती है; इसके साथ ही कुछ जोखिम भी हैं, जिन्हें और अधिक सुधार की आवश्यकता है। पैरामीटर अनुकूलन, स्टॉप-लॉस मोड और रणनीति संयोजन के माध्यम से, इस रणनीति की प्रभावशीलता को और बढ़ाया जा सकता है।
/*backtest
start: 2022-11-24 00:00:00
end: 2023-11-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("smaCrossReverse", shorttitle="smaCrossReverse", overlay=true)
// Define the length for the SMAs
sma9Length = input(9, title="SMA 9 Length")
sma14Length = input(14, title="SMA 14 Length")
sma50Length = input(50, title="SMA 50 Length") // Add input for SMA 50
// Calculate SMAs
sma9 = ta.sma(close, sma9Length)
sma14 = ta.sma(close, sma14Length)
sma50 = ta.sma(close, sma50Length) // Calculate SMA 50
// Buy condition: SMA 9 crosses above SMA 14 and current price is above SMA 50
buyCondition = ta.crossover(sma9, sma14) and close > sma50
// Sell condition: SMA 9 crosses below SMA 14 and current price is below SMA 50
sellCondition = ta.crossunder(sma9, sma14) and close < sma50
// Track the time since position was opened
var float timeElapsed = na
if (buyCondition)
timeElapsed := 0
else
timeElapsed := na(timeElapsed[1]) ? timeElapsed[1] : timeElapsed[1] + 1
// Close the buy position after 5 minutes
if (timeElapsed >= 5)
strategy.close("Buy")
// Track the time since position was opened
var float timeElapsedSell = na
if (sellCondition)
timeElapsedSell := 0
else
timeElapsedSell := na(timeElapsedSell[1]) ? timeElapsedSell[1] : timeElapsedSell[1] + 1
// Close the sell position after 5 minutes
if (timeElapsedSell >= 5)
strategy.close("Sell")
// Plot the SMAs on the chart
plot(sma9, title="SMA 9", color=color.blue)
plot(sma14, title="SMA 14", color=color.red)
plot(sma50, title="SMA 50", color=color.green) // Plot SMA 50 on the chart
// Strategy entry and exit conditions using if statements
if (buyCondition)
strategy.entry("Buy", strategy.long)
if (sellCondition)
strategy.entry("Sell", strategy.short)