
इस रणनीति में MACD ((चलती औसत संकेतक से दूर संकेतक), RSI ((सापेक्ष रूप से मजबूत सूचकांक) और SMA ((सरल चलती औसत) का संयोजन किया गया है ताकि एक विश्वसनीय खरीद और बिक्री संकेत उत्पन्न किया जा सके। MACD का उपयोग मूल्य की गतिशीलता में परिवर्तन को पकड़ने के लिए किया जाता है, RSI ओवरबॉट और ओवरसोल्ड की पहचान करने के लिए और SMA का उपयोग प्रवृत्ति की दिशा की पुष्टि करने के लिए किया जाता है। यह रणनीति झूठी संकेतों को कम करने के लिए कई स्थितियों के माध्यम से फ़िल्टर करती है, जिससे दिन के भीतर व्यापार के लिए एक स्पष्ट प्रवेश बिंदु प्रदान किया जाता है।
इस रणनीति के लिए प्रवेश और निकास की शर्तें इस प्रकार हैं:
यह रणनीति MACD, RSI और SMA जैसे तकनीकी संकेतकों के संयोजन के माध्यम से एक बहु-फ़िल्टर्ड डे ट्रेडिंग रणनीति बनाती है। यह व्यापार के अवसरों को पकड़ने के लिए गतिशीलता और रुझान में परिवर्तन का उपयोग करती है, जबकि स्पष्ट प्रवेश और निकास नियमों के माध्यम से जोखिम को नियंत्रित करती है। हालांकि यह रणनीति अस्थिर बाजारों में चुनौतीपूर्ण हो सकती है, यह आगे के अनुकूलन और जोखिम प्रबंधन के साथ एक विश्वसनीय डे ट्रेडिंग उपकरण बनने की उम्मीद है।
/*backtest
start: 2024-05-07 00:00:00
end: 2024-06-06 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Day Trading Strategy", overlay=true)
// Parametrii pentru MACD
macdLength = input.int(12, title="MACD Length")
signalSmoothing = input.int(9, title="MACD Signal Smoothing")
src = input(close, title="Source")
// Calculul MACD
[macdLine, signalLine, _] = ta.macd(src, macdLength, 26, signalSmoothing)
macdHist = macdLine - signalLine
// Parametrii pentru RSI
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
// Calculul RSI
rsi = ta.rsi(src, rsiLength)
// Filtru suplimentar pentru a reduce semnalele false
longFilter = ta.sma(close, 50) > ta.sma(close, 200)
shortFilter = ta.sma(close, 50) < ta.sma(close, 200)
// Conditii de intrare in pozitie long
enterLong = ta.crossover(macdLine, signalLine) and rsi < rsiOverbought and longFilter
// Conditii de iesire din pozitie long
exitLong = ta.crossunder(macdLine, signalLine) or rsi > rsiOverbought
// Conditii de intrare in pozitie short
enterShort = ta.crossunder(macdLine, signalLine) and rsi > rsiOversold and shortFilter
// Conditii de iesire din pozitie short
exitShort = ta.crossover(macdLine, signalLine) or rsi < rsiOversold
// Adaugarea strategiei pentru Strategy Tester
if (enterLong)
strategy.entry("BUY", strategy.long)
if (exitLong)
strategy.close("BUY")
if (enterShort)
strategy.entry("SELL", strategy.short)
if (exitShort)
strategy.close("SELL")
// Plotarea MACD si Signal Line
plot(macdLine, color=color.blue, title="MACD Line")
plot(signalLine, color=color.orange, title="Signal Line")
hline(0, "Zero Line", color=color.gray)
plot(macdHist, color=color.red, style=plot.style_histogram, title="MACD Histogram")