
यह ट्रिपल एक्सपोनेंशियल मूविंग एवरेज (ईएमए) क्रॉसओवर संकेतों पर आधारित एक ट्रेंड फॉलोइंग ट्रेडिंग सिस्टम है। यह प्रणाली तीन मूविंग एवरेज, EMA8, EMA21 और EMA89 को जोड़ती है, मूविंग एवरेज क्रॉसओवर के माध्यम से ट्रेडिंग सिग्नल उत्पन्न करती है, तथा स्वचालित जोखिम प्रबंधन प्राप्त करने के लिए जोखिम-वापसी अनुपात पर आधारित एक बुद्धिमान मूविंग स्टॉप-लॉस फ़ंक्शन को एकीकृत करती है।
प्रणाली में मुख्य रूप से निम्नलिखित मुख्य कार्यात्मक मॉड्यूल शामिल हैं:
यह रणनीति क्लासिक मूविंग एवरेज क्रॉसओवर प्रणाली को आधुनिक जोखिम प्रबंधन विधियों के साथ संयोजित करके एक सम्पूर्ण प्रवृत्ति-अनुसरण ट्रेडिंग प्रणाली को साकार करती है। प्रणाली के लाभ इसके विश्वसनीय संकेत उत्पादन तंत्र और बुद्धिमान जोखिम नियंत्रण पद्धति में निहित हैं, लेकिन व्यावहारिक अनुप्रयोगों में, विशिष्ट बाजार विशेषताओं के अनुसार पैरामीटर अनुकूलन और फ़ंक्शन विस्तार अभी भी आवश्यक है। निरंतर सुधार और अनुकूलन के माध्यम से, इस रणनीति से विभिन्न बाजार परिवेशों में स्थिर प्रदर्शन बनाए रखने की उम्मीद है।
/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Crossover with SL to BE", shorttitle="OmegaGalsky", overlay=true)
// Входни параметри
ema8_period = input.int(8, title="EMA 8 Period")
ema21_period = input.int(21, title="EMA 21 Period")
ema89_period = input.int(89, title="EMA 89 Period")
fixed_risk_reward = input.float(1.0, title="Risk/Reward Ratio (R2R)")
sl_percentage = input.float(0.001, title="Stop Loss Percentage", step=0.0001)
tp_percentage = input.float(0.0025, title="Take Profit Percentage", step=0.0001)
// Изчисляване на EMA
ema8 = ta.ema(close, ema8_period)
ema21 = ta.ema(close, ema21_period)
ema89 = ta.ema(close, ema89_period)
// Условия за BUY
buy_condition = ta.crossover(ema8, ema21) and close > ema89 and close > open
// Условия за SELL
sell_condition = ta.crossunder(ema8, ema21) and close < ema89 and close < open
// Вход в BUY позиция
if (buy_condition)
stop_loss = close * (1 - sl_percentage)
take_profit = close * (1 + tp_percentage)
strategy.entry("BUY", strategy.long)
strategy.exit("TP/SL", from_entry="BUY", stop=stop_loss, limit=take_profit)
// Вход в SELL позиция
if (sell_condition)
stop_loss = close * (1 + sl_percentage)
take_profit = close * (1 - tp_percentage)
strategy.entry("SELL", strategy.short)
strategy.exit("TP/SL", from_entry="SELL", stop=stop_loss, limit=take_profit)
// Логика за преместване на стоп към BE
if (strategy.position_size > 0)
entry_price = strategy.position_avg_price
// За LONG позиция
if (strategy.position_size > 0 and high >= entry_price + (entry_price * sl_percentage * fixed_risk_reward))
strategy.exit("SL to BE", from_entry="BUY", stop=entry_price)
label.new(bar_index, high, "SL moved to BE", color=color.green)
// За SHORT позиция
if (strategy.position_size < 0 and low <= entry_price - (entry_price * sl_percentage * fixed_risk_reward))
strategy.exit("SL to BE", from_entry="SELL", stop=entry_price)
label.new(bar_index, low, "SL moved to BE", color=color.red)
// Чертеж на EMA
plot(ema8, color=color.orange, title="EMA 8")
plot(ema21, color=color.blue, title="EMA 21")
plot(ema89, color=color.purple, title="EMA 89")