
इस रणनीति में दो अलग-अलग चक्रों की चलती औसत (MA) का उपयोग किया जाता है, जिससे ट्रेडिंग सिग्नल उत्पन्न होते हैं। जब अल्पकालिक MA नीचे से ऊपर की ओर लंबी अवधि के MA को पार करता है, तो एक खरीद संकेत उत्पन्न होता है; जब अल्पकालिक MA ऊपर से नीचे की ओर लंबी अवधि के MA को पार करता है, तो एक बेचने का संकेत उत्पन्न होता है। इस रणनीति का मुख्य विचार एमए की प्रवृत्ति ट्रैकिंग विशेषता का उपयोग करना है, जो एमए के क्रॉसिंग के माध्यम से प्रवृत्ति के परिवर्तन को पकड़ता है, जिससे व्यापार होता है।
द्वि-समान रेखा क्रॉसिंग रणनीति एक सरल और आसान उपयोग की जाने वाली प्रवृत्ति ट्रैकिंग रणनीति है, जो दो अलग-अलग चक्र एमए के क्रॉसिंग के माध्यम से प्रवृत्ति परिवर्तन को पकड़ती है। इस रणनीति का लाभ तर्क स्पष्टता, संकेत स्पष्टता और ट्रेंडिंग बाजारों के लिए उपयुक्त है। लेकिन अस्थिर बाजारों में, इस रणनीति से अधिक झूठे सिग्नल और हानिकारक ट्रेडों का उत्पादन हो सकता है। इसलिए, व्यावहारिक अनुप्रयोगों में, प्रवृत्ति फ़िल्टरिंग, स्टॉप लॉस ऑप्टिमाइज़ेशन, डायनामिक पैरामीटर ऑप्टिमाइज़ेशन और अन्य संकेतों के साथ संयोजन जैसे तरीकों को जोड़कर रणनीति के प्रदर्शन में सुधार किया जा सकता है, इसकी अनुकूलता और स्थिरता में वृद्धि की जा सकती है।
/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Combined Strategy", overlay=true)
// Moving Averages Length Inputs
short_length = input.int(20, "Short MA Length")
long_length = input.int(50, "Long MA Length")
// Moving Averages
ma_short = ta.sma(close, short_length)
ma_long = ta.sma(close, long_length)
// Buy Condition (Moving Average Crossover)
buy_condition = ta.crossover(ma_short, ma_long)
plotshape(series=buy_condition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
// Sell Condition (Moving Average Crossover)
sell_condition = ta.crossunder(ma_short, ma_long)
plotshape(series=sell_condition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)
// Strategy Entry and Exit
if (buy_condition)
strategy.entry("Buy", strategy.long)
if (sell_condition)
strategy.entry("Sell", strategy.short)
// Debug statements
if (buy_condition)
label.new(x=bar_index, y=low, text="Buy Signal", color=color.green, style=label.style_label_up)
if (sell_condition)
label.new(x=bar_index, y=high, text="Sell Signal", color=color.red, style=label.style_label_down)