
यह एक व्यापक व्यापारिक रणनीति है जो चलती औसत के क्रॉसिंग, आपूर्ति और मांग क्षेत्र की पहचान और गतिशील स्टॉप-लॉस स्टॉप को जोड़ती है। यह रणनीति ट्रेडों की दिशा निर्धारित करने के लिए अल्पकालिक और दीर्घकालिक चलती औसत के क्रॉसिंग का उपयोग करती है, जबकि आपूर्ति और मांग क्षेत्रों को महत्वपूर्ण मूल्य समर्थन और प्रतिरोध के रूप में उपयोग करती है, और प्रतिशत स्टॉप-लॉस के साथ मिलकर जोखिम का प्रबंधन करती है। रणनीति का मूल केवल विशिष्ट आपूर्ति और मांग क्षेत्रों के आसपास स्थितियों को खोलना है, जिससे व्यापार की जीत की संभावना बढ़ जाती है।
रणनीति 9 चक्रों और 21 चक्रों की सरल चलती औसत (एसएमए) का उपयोग करती है ताकि रुझान की दिशा का पता लगाया जा सके। जब कीमत मांग क्षेत्र (सहायता) के 1% के भीतर होती है और अल्पकालिक औसत ऊपर की ओर लंबी अवधि की औसत रेखा को पार करती है, तो सिस्टम कई संकेत देता है; जब कीमत आपूर्ति क्षेत्र के प्रतिरोध (शक्ति) के 1% के भीतर होती है और अल्पकालिक औसत नीचे की ओर लंबी अवधि की औसत रेखा को पार करती है, तो सिस्टम एक खाली संकेत देता है। आपूर्ति क्षेत्र की पहचान 50 चक्रों के भीतर महत्वपूर्ण उच्च और निम्न के आधार पर की जाती है, और इस बिंदु को कम से कम 2 पुष्टिकरण रेखाचित्रों की आवश्यकता होती है। सिस्टम स्वचालित रूप से स्टॉप लॉस (डिफ़ॉल्ट 1%) और स्टॉप लॉस (डिफ़ॉल्ट 2%) को प्रवेश मूल्य के आधार पर गतिशील रूप से सेट करता है।
यह एक रणनीति प्रणाली है जो क्लासिक तकनीकी विश्लेषण विधियों को आधुनिक जोखिम प्रबंधन अवधारणाओं के साथ जोड़ती है। महत्वपूर्ण मूल्य क्षेत्रों के आसपास व्यापार करके और चलती औसत क्रॉसिंग सिग्नल के साथ मिलकर, रणनीति एक अपेक्षाकृत विश्वसनीय व्यापारिक ढांचा प्रदान करती है। गतिशील स्टॉपलॉस स्टॉप की डिजाइन विभिन्न बाजार स्थितियों के अनुकूल होने में मदद करती है, लेकिन रणनीति के वास्तविक अनुप्रयोग को विशिष्ट बाजार विशेषताओं के अनुसार अनुकूलित करने की भी आवश्यकता होती है।
/*backtest
start: 2024-12-01 00:00:00
end: 2025-02-01 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("MA Crossover with Demand/Supply Zones + Stop Loss/Take Profit", overlay=true)
// Input parameters for Moving Averages
shortLength = input.int(9, title="Short MA Length", minval=1)
longLength = input.int(21, title="Long MA Length", minval=1)
// Input parameters for Demand/Supply Zones
zoneLookback = input.int(50, title="Zone Lookback Period", minval=10)
zoneStrength = input.int(2, title="Zone Strength (Candles)", minval=1)
// Input parameters for Stop Loss and Take Profit
stopLossPerc = input.float(1.0, title="Stop Loss (%)", minval=0.1) / 100
takeProfitPerc = input.float(2.0, title="Take Profit (%)", minval=0.1) / 100
// Calculate moving averages
shortMA = ta.sma(close, shortLength)
longMA = ta.sma(close, longLength)
// Plot moving averages
plot(shortMA, color=color.blue, title="Short MA")
plot(longMA, color=color.red, title="Long MA")
// Identify Demand and Supply Zones
var float demandZone = na
var float supplyZone = na
// Detect Demand Zones (Price makes a significant low and bounces up)
if (ta.lowest(low, zoneLookback) == low[zoneStrength] and close[zoneStrength] > open[zoneStrength])
demandZone := low[zoneStrength]
// Detect Supply Zones (Price makes a significant high and drops down)
if (ta.highest(high, zoneLookback) == high[zoneStrength] and close[zoneStrength] < open[zoneStrength])
supplyZone := high[zoneStrength]
// Draw Demand and Supply Zones using lines
var line demandLine = na
var line supplyLine = na
// Trade Logic: Only open trades near Demand/Supply Zones
isNearDemand = demandZone > 0 and close <= demandZone * 1.01 // Within 1% of demand zone
isNearSupply = supplyZone > 0 and close >= supplyZone * 0.99 // Within 1% of supply zone
// Calculate Stop Loss and Take Profit levels
stopLossLevel = strategy.position_avg_price * (1 - stopLossPerc) // Stop loss for long positions
takeProfitLevel = strategy.position_avg_price * (1 + takeProfitPerc) // Take profit for long positions
stopLossLevelShort = strategy.position_avg_price * (1 + stopLossPerc) // Stop loss for short positions
takeProfitLevelShort = strategy.position_avg_price * (1 - takeProfitPerc) // Take profit for short positions
// Generate buy/sell signals based on MA crossover and zones
if (ta.crossover(shortMA, longMA) and isNearDemand)
strategy.entry("Buy", strategy.long)
strategy.exit("Take Profit/Stop Loss", from_entry="Buy", stop=stopLossLevel, limit=takeProfitLevel)
if (ta.crossunder(shortMA, longMA) and isNearSupply)
strategy.entry("Sell", strategy.short)
strategy.exit("Take Profit/Stop Loss", from_entry="Sell", stop=stopLossLevelShort, limit=takeProfitLevelShort)
// Optional: Plot buy/sell signals on the chart
plotshape(series=ta.crossover(shortMA, longMA) and isNearDemand, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=ta.crossunder(shortMA, longMA) and isNearSupply, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")