
यह रणनीति पिछले दिन की कीमतों के बैंडब्रेक और सूचकांक के चलती औसत (ईएमए) के संयोजन के साथ एक दिन के भीतर व्यापार करने की रणनीति है। यह रणनीति तेजी से और धीमी ईएमए की पुष्टि के संकेतों के संयोजन के साथ व्यापार करने के लिए उच्च या निम्न समय की पहचान करके व्यापार करती है। यह रणनीति अल्पकालिक मूल्य आंदोलन को पकड़ने पर केंद्रित है और निश्चित स्टॉप-लॉस और जोखिम-लाभ अनुपात सेट करके जोखिम का प्रबंधन करती है।
रणनीति का मूल तर्क निम्नलिखित प्रमुख तत्वों पर आधारित है:
रणनीति एक विश्वसनीय intraday ट्रेडिंग प्रणाली को प्राप्त करने के लिए मूल्य टूटने और ईएमए की प्रवृत्ति की पुष्टि के संयोजन के माध्यम से कार्य करती है। रणनीति का मुख्य लाभ इसकी स्पष्ट तार्किक संरचना और एक पूर्ण जोखिम प्रबंधन तंत्र में है। रणनीति की स्थिरता और लाभप्रदता को और बढ़ाया जा सकता है, अनुशंसित अनुकूलन दिशाओं के माध्यम से। वास्तविक व्यापार में, झूठे टूटने और स्लिप पॉइंट जोखिम पर विशेष ध्यान देने की आवश्यकता होती है और वास्तविक बाजार स्थितियों के अनुसार पैरामीटर को समायोजित किया जाता है।
/*backtest
start: 2025-02-16 17:00:00
end: 2025-02-18 14:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/
//@version=5
strategy("GER40 Momentum Breakout Scalping", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=1)
//———— Input Parameters —————
stopLossPoints = input.int(30, title="Stop Loss (Pips)", minval=1) // Updated to 30 pips
riskReward = input.float(2.0, title="Risk Reward Ratio", step=0.1)
useTimeFilter = input.bool(false, title="Use Time Filter? (Sessions in SAST)")
// Define sessions (SAST) if needed
session1 = "0900-1030"
session2 = "1030-1200"
session3 = "1530-1730"
//———— Time Filter Function —————
inSession = true
if useTimeFilter
// TradingView's session function uses the chart's timezone.
// Adjust the session times if your chart timezone is not SAST.
inSession = time(timeframe.period, session1) or time(timeframe.period, session2) or time(timeframe.period, session3)
//———— Get Previous Day's High/Low —————
// Fetch the previous day's high/low using the daily timeframe. [1] refers to the previous completed day.
prevHigh = request.security(syminfo.tickerid, "D", high[1])
prevLow = request.security(syminfo.tickerid, "D", low[1])
//———— Calculate EMAs on the 1-minute chart —————
emaFast = ta.ema(close, 9)
emaSlow = ta.ema(close, 21)
//———— Define Breakout Conditions —————
longCondition = close > prevHigh and emaFast > emaSlow
shortCondition = close < prevLow and emaFast < emaSlow
//———— Entry & Exit Rules —————
if inSession
// Long breakout: Price breaks above previous day's high
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", "Long",
stop = strategy.position_avg_price - stopLossPoints * syminfo.mintick,
limit = strategy.position_avg_price + stopLossPoints * riskReward * syminfo.mintick)
// Short breakout: Price breaks below previous day's low
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short",
stop = strategy.position_avg_price + stopLossPoints * syminfo.mintick,
limit = strategy.position_avg_price - stopLossPoints * riskReward * syminfo.mintick)
//———— Plot Indicators & Levels —————
plot(emaFast, color=color.blue, title="EMA 9")
plot(emaSlow, color=color.red, title="EMA 21")
plot(prevHigh, color=color.green, style=plot.style_linebr, title="Prev Day High")
plot(prevLow, color=color.maroon, style=plot.style_linebr, title="Prev Day Low")