
रणनीति एक व्यापार प्रणाली है जो कई तकनीकी संकेतकों को जोड़ती है, जो मुख्य रूप से ईएमए औसत रेखा के पार, आरएसआई ओवरसोल और एमएसीडी गोल्डफ़ॉर्क ट्रिपल सिग्नल की पुष्टि पर आधारित है, जो गतिशील सीमा मूल्य एकल प्रवेश और कई बाहर निकलने के तंत्र के माध्यम से जोखिम का प्रबंधन करती है। रणनीति 9 चक्र और 21 चक्र के सूचकांक चलती औसत (ईएमए) को मुख्य प्रवृत्ति संकेतक के रूप में उपयोग करती है, जो अपेक्षाकृत कमजोर सूचकांक (आरएसआई) और गतिशील औसत प्रवृत्ति के पीछे संकेतक (एमएसीडी) के संयोजन से व्यापार संकेतों को फ़िल्टर करने के लिए, सीमा मूल्य एकल दूरी और एक निश्चित स्टॉप-लॉस संख्या सेट करके जोखिम को नियंत्रित करती है।
इस रणनीति के मुख्य लेन-देन तर्क में निम्नलिखित प्रमुख घटक शामिल हैंः
रणनीति एक सीमित मूल्य प्रविष्टि का उपयोग करती है, जो बेहतर मूल्य स्थानों पर स्थितियों का निर्माण करती है, जिससे कई तकनीकी संकेतकों के संयोजन के माध्यम से व्यापार की सटीकता में सुधार होता है।
यह एक संरचित, तर्कसंगत और स्पष्ट बहु-सूचक ट्रेडिंग रणनीति है, जो एक समान प्रणाली के माध्यम से रुझान की पहचान करती है, आरएसआई और एमएसीडी फ़िल्टर सिग्नल, लिमिट ऑर्डर और मल्टीपल स्टॉप लॉस मैकेनिज्म जोखिम को नियंत्रित करती है। रणनीति की ताकत संकेत विश्वसनीयता में उच्च है, जोखिम नियंत्रण पूरी तरह से है, लेकिन संकेत विलंबता और पैरामीटर अनुकूलन जैसी समस्याएं भी हैं। गतिशील पैरामीटर समायोजन और सहायक संकेतकों को जोड़कर रणनीति में अनुकूलन के लिए बहुत अधिक जगह है।
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("SMA 9 & 21 with RSI and MACD Buy Strategy", overlay=true)
// Inputs for Simple Moving Averages
sma_short = ta.ema(close, 9)
sma_long = ta.ema(close, 21)
// Plotting SMA
plot(sma_short, color=color.green, title="SMA 9")
plot(sma_long, color=color.red, title="SMA 21")
// RSI Calculation
rsi_length = input.int(14, title="RSI Length")
rsi_threshold = input.int(70, title="RSI Threshold")
rsi = ta.rsi(close, rsi_length)
// MACD Calculation
macd_fast = input.int(8, title="MACD Fast Length")
macd_slow = input.int(18, title="MACD Slow Length")
macd_signal = input.int(6, title="MACD Signal Length")
[macd_line, signal_line, _] = ta.macd(close, macd_fast, macd_slow, macd_signal)
// Inputs for Limit Order Offset
limit_offset = input.int(50, title="Limit Order Offset", minval=1) // 50 points below 9 EMA
// User input for specific date
simulationStartDate = input(timestamp("2024-12-01 00:00"), title="Simulation Start Date", group = "Simulation Dates")
simulationEndDate = input(timestamp("2024-12-30 00:00"), title="Simulation End Date", group = "Simulation Dates")
// Declare limit_price as float
var float limit_price = na
// Calculate Limit Order Price
if (sma_short[1] < sma_long[1] and sma_short > sma_long) // 9 EMA crosses above 21 EMA
limit_price := sma_short - limit_offset
// Buy Signal Condition (only on the specified date)
buy_condition = not na(limit_price) and rsi < rsi_threshold and ta.crossover(macd_line, signal_line)
// Sell Signal Condition (MACD crossover down)
sell_condition = ta.crossunder(macd_line, signal_line)
// Track Entry Price for Point-Based Exit
var float entry_price = na
if (buy_condition )
strategy.order("Buy", strategy.long, comment="Limit Order at 9 EMA - Offset", limit=limit_price)
label.new(bar_index, limit_price, "Limit Buy", style=label.style_label_up, color=color.green, textcolor=color.white)
entry_price := limit_price // Set entry price
// Exit Conditions
exit_by_macd = sell_condition
exit_by_points = not na(entry_price) and ((close >= entry_price + 12) or (close <= entry_price - 12)) // Adjust as per exit points
// Exit all positions at the end of the day
if hour == 15 and minute > 10 and strategy.position_size > 0
strategy.close_all() // Close all positions at the end of the day
strategy.cancel_all()
// Exit based on sell signal or point movement
if (exit_by_macd or exit_by_points and strategy.position_size > 0 )
strategy.close("Buy")
label.new(bar_index, close, "Close", style=label.style_label_down, color=color.red, textcolor=color.white)