
यह रणनीति एक पूर्ण ट्रेडिंग प्रणाली है जिसमें कई तकनीकी संकेतकों को शामिल किया गया है, मुख्य रूप से क्रॉस सिग्नल के आधार पर तेजी से धीमी अवधि के इंडेक्स चलती औसत (ईएमए) को मुख्य प्रवेश आधार के रूप में, जबकि गतिशीलता फ़िल्टरिंग के लिए अपेक्षाकृत मजबूत सूचकांक (आरएसआई) के साथ संयुक्त है, और वास्तविक तरंग दैर्ध्य संकेतक (एटीआर) का उपयोग करके स्टॉप लॉस स्थिति को गतिशील रूप से सेट किया गया है। यह रणनीति सख्त जोखिम नियंत्रण और गतिशील स्टॉप लॉस सेटिंग के माध्यम से अल्पकालिक बाजार में उतार-चढ़ाव को पकड़ने में सक्षम है।
इस रणनीति के मुख्य तर्क में शामिल हैंः
लेन-देन के नियम इस प्रकार हैं:
जोखिम नियंत्रण सुझाव:
रणनीति ईएमए रुझान ट्रैकिंग, आरएसआई गतिशीलता फ़िल्टरिंग और एटीआर गतिशील जोखिम नियंत्रण के संयोजन के माध्यम से एक अधिक पूर्ण व्यापार प्रणाली का निर्माण करती है। रणनीति की मुख्य विशेषता जोखिम प्रबंधन पर ध्यान केंद्रित करते हुए कई तकनीकी संकेतकों के सह-प्रभाव का उपयोग करना है। हालांकि कुछ अनुकूलन स्थान हैं, समग्र डिजाइन विचार मात्रात्मक व्यापार की प्रणालीगत सोच के अनुरूप है। व्यापारियों को सलाह दी जाती है कि वे अपने जोखिम सहनशीलता और धन प्रबंधन आवश्यकताओं के साथ-साथ उचित समायोजन के साथ-साथ वास्तविक उपयोग से पहले पर्याप्त पैरामीटर अनुकूलन और पुनः परीक्षण करें।
/*backtest
start: 2024-02-10 00:00:00
end: 2025-02-08 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Day Trading EMA/RSI Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=200)
// Ulazni parametri
fastEmaPeriod = input.int(9, "Fast EMA Period", minval=1)
slowEmaPeriod = input.int(21, "Slow EMA Period", minval=1)
rsiPeriod = input.int(14, "RSI Period", minval=1)
rsiOversold = input.int(30, "RSI Oversold Level")
rsiOverbought = input.int(70, "RSI Overbought Level")
atrPeriod = input.int(14, "ATR Period", minval=1)
atrMultiplier = input.float(1.5, "ATR Multiplier za Stop Loss", step=0.1)
takeProfitFactor= input.float(2.0, "Take Profit Factor", step=0.1)
// Izračun indikatora
fastEMA = ta.ema(close, fastEmaPeriod)
slowEMA = ta.ema(close, slowEmaPeriod)
rsiValue = ta.rsi(close, rsiPeriod)
atrValue = ta.atr(atrPeriod)
// Definicija trenda: ako je fastEMA iznad slowEMA, smatramo da je trend uzlazan, inače silazni.
trendUp = fastEMA > slowEMA
trendDown = fastEMA < slowEMA
// Uvjeti za ulaz:
// Ulaz u long poziciju: crossover fastEMA i slowEMA, uz filtriranje da RSI nije prekupovan (manje od rsiOverbought)
longCondition = ta.crossover(fastEMA, slowEMA) and (rsiValue < rsiOverbought)
// Ulaz u short poziciju: crossunder fastEMA i slowEMA, uz filtriranje da RSI nije preprodavan (više od rsiOversold)
shortCondition = ta.crossunder(fastEMA, slowEMA) and (rsiValue > rsiOversold)
// Definicija dinamičnih stop-loss razina (ATR-based)
stopLossLong = close - (atrMultiplier * atrValue)
stopLossShort = close + (atrMultiplier * atrValue)
// Izvršenje naloga
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", "Long", stop=stopLossLong, limit=close + (takeProfitFactor * atrValue))
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short", stop=stopLossShort, limit=close - (takeProfitFactor * atrValue))
// Plotanje indikatora za preglednost
plot(fastEMA, title="Fast EMA", color=color.green)
plot(slowEMA, title="Slow EMA", color=color.red)