
यह रणनीति एक ट्रेंड ट्रैकिंग सिस्टम है जो इक्विटी लाइन क्रॉसिंग और गतिशील स्टॉप पर आधारित है। इसका मुख्य तर्क यह है कि तेजी से उछाल की शुरुआत को पकड़ने के लिए तेजी से औसत ((EMA5) और धीमी गति से औसत ((EMA200) के साथ गोल्डन फोर्क का उपयोग किया जाता है, और एटीआर गतिशील स्टॉप के साथ लाभ को संरक्षित करने के लिए। रणनीति में जोखिम-लाभ संतुलन को प्राप्त करने के लिए एक निश्चित प्रतिशत स्टॉप लक्ष्य भी निर्धारित किया गया है।
यह रणनीति निम्नलिखित मुख्य तंत्रों के आधार पर संचालित होती है:
यह एक ट्रेंड ट्रैकिंग रणनीति है जो क्लासिक तकनीकी संकेतकों और आधुनिक जोखिम प्रबंधन को जोड़ती है। यह ट्रेंडिंग बाजारों में उत्कृष्ट प्रदर्शन करता है। हालांकि कुछ झूठे सिग्नल जोखिम हैं, लेकिन पैरामीटर अनुकूलन और फ़िल्टर को जोड़ने से रणनीति की स्थिरता में काफी वृद्धि हो सकती है। रणनीति का मुख्य लाभ इसके व्यवस्थित संचालन तर्क और लचीले जोखिम प्रबंधन तंत्र में है, जो सहकारी मध्यम और दीर्घकालिक ट्रेंड ट्रेडिंग के लिए उपयुक्त है।
/*backtest
start: 2024-02-21 00:00:00
end: 2025-02-18 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
// -----------------------------------------------------------
// Title: EMA5 Cross-Up EMA200 with ATR Trailing Stop & Take-Profit
// Author: ChatGPT
// Version: 1.1 (Pine Script v6)
// Notes: Enter Long when EMA(5) crosses above EMA(200).
// Exit on either ATR-based trailing stop or
// specified % Take-Profit.
// -----------------------------------------------------------
//@version=6
strategy(title="EMA5 Cross-Up EMA200 ATR Stop", shorttitle="EMA5x200_ATRStop_v6", overlay=true, initial_capital=100000, default_qty_type=strategy.percent_of_equity,default_qty_value=100)
// -- 1) Inputs
emaFastLength = input.int(5, "Fast EMA Length")
emaSlowLength = input.int(200, "Slow EMA Length")
atrPeriod = input.int(14, "ATR Period")
atrMult = input.float(2.0,"ATR Multiplier", step=0.1)
takeProfitPerc = input.float(5.0,"Take-Profit %", step=0.1)
// -- 2) Indicator Calculations
emaFast = ta.ema(close, emaFastLength)
emaSlow = ta.ema(close, emaSlowLength)
atrValue = ta.atr(atrPeriod)
// -- 3) Entry Condition: EMA5 crosses above EMA200
emaCrossUp = ta.crossover(emaFast, emaSlow)
// -- 4) Determine a dynamic ATR-based stop loss (for trailing)
longStopPrice = close - (atrValue * atrMult)
// -- 5) Take-Profit Price
// We store it in a variable so we can update it when in position.
var float takeProfitPrice = na
var float avgEntryPrice = na
if strategy.position_size > 0
// If there is an open long, get the average fill price:
avgEntryPrice := strategy.position_avg_price
takeProfitPrice := avgEntryPrice * (1 + takeProfitPerc / 100)
else
// If no open position, reset
takeProfitPrice := na
avgEntryPrice := na
// -- 6) Submit Entry Order
if emaCrossUp
strategy.entry(id="Long", direction=strategy.long)
// -- 7) Submit Exit Orders (Stop or Take-Profit)
strategy.exit(id = "Exit Long",stop = longStopPrice,limit = takeProfitPrice)
// -- 8) (Optional) Plotting for Visuals
plot(emaFast, color=color.new(color.yellow, 0), linewidth=2, title="EMA Fast")
plot(emaSlow, color=color.new(color.blue, 0), linewidth=2, title="EMA Slow")
plot(longStopPrice, color=color.red, linewidth=2, title="ATR Trailing Stop")