
यह रणनीति प्रवृत्ति संकेतक डीएमआई (दिशात्मक गति संकेतक) और एडीएक्स (औसत प्रवृत्ति संकेतक) को मजबूत बाजार की प्रवृत्ति की पहचान करने और व्यापार के अवसरों को पकड़ने के लिए जोड़ती है। यह रणनीति डीएमआई के + डीआई और -डीआई लाइनों के क्रॉसिंग के माध्यम से प्रवृत्ति की दिशा निर्धारित करती है, जबकि एडीएक्स संकेतक का उपयोग प्रवृत्ति की ताकत को मापने के लिए किया जाता है, केवल जब प्रवृत्ति स्पष्ट होती है तो व्यापार में प्रवेश करती है। यह एक पूर्ण प्रवृत्ति ट्रैकिंग ट्रेडिंग सिस्टम है जिसमें जोखिम प्रबंधन सुविधाएं शामिल हैं जैसे कि सिग्नल, स्टॉप-लॉस और स्टॉप-लॉस।
रणनीति के मूल तर्क में निम्नलिखित प्रमुख तत्व शामिल हैं:
प्रतिउपाय:
डीएमआई + एडीएक्स क्रॉस रणनीति एक क्लासिक प्रवृत्ति ट्रैकिंग रणनीति है जो मजबूत प्रवृत्ति वाले बाजारों में व्यापार के अवसरों को खोजने के लिए दिशा और ताकत के संकेतकों के संयोजन के माध्यम से है। रणनीति तर्क स्पष्ट है, जोखिम नियंत्रण पूरी तरह से है, अच्छी व्यावहारिकता और स्केलेबिलिटी है। निरंतर अनुकूलन और सुधार के माध्यम से, रणनीति को विभिन्न बाजार स्थितियों के लिए बेहतर रूप से अनुकूलित किया जा सकता है और व्यापार की प्रभावशीलता में सुधार किया जा सकता है।
/*backtest
start: 2024-02-19 00:00:00
end: 2024-10-25 08:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("DMI + ADX Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=250)
// Nastavenie parametrov
adxLength = input.int(14, title="ADX Length")
adxSmoothing = input.int(14, title="ADX Smoothing")
dmiLength = input.int(14, title="DMI Length")
adxThreshold = input.float(25.0, title="ADX Threshold")
stopLossPerc = input.float(1.0, title="Stop Loss (%)")
takeProfitPerc = input.float(2.0, title="Take Profit (%)")
// Výpočet DMI a ADX pomocou ta.dmi
[plusDI, minusDI, adxValue] = ta.dmi(dmiLength, adxSmoothing)
// Nákupné podmienky
longCondition = ta.crossover(plusDI, minusDI) and adxValue > adxThreshold
if (longCondition)
strategy.entry("Long", strategy.long)
// Predajné podmienky
shortCondition = ta.crossunder(plusDI, minusDI) and adxValue > adxThreshold
if (shortCondition)
strategy.entry("Short", strategy.short)
// Definovanie Stop a Limit pre Long pozíciu
longStop = strategy.position_avg_price * (1 - stopLossPerc / 100)
longLimit = strategy.position_avg_price * (1 + takeProfitPerc / 100)
if (strategy.position_size > 0)
strategy.exit("Long Exit", "Long", stop=longStop, limit=longLimit)
// Definovanie Stop a Limit pre Short pozíciu
shortStop = strategy.position_avg_price * (1 + stopLossPerc / 100)
shortLimit = strategy.position_avg_price * (1 - takeProfitPerc / 100)
if (strategy.position_size < 0)
strategy.exit("Short Exit", "Short", stop=shortStop, limit=shortLimit)
// Vizualizácia indikátorov na grafe
plot(adxValue, title="ADX", color=color.blue)
hline(adxThreshold, "ADX Threshold", color=color.gray)
plot(plusDI, title="+DI", color=color.green)
plot(minusDI, title="-DI", color=color.red)