यह एक मात्रात्मक ट्रेडिंग रणनीति है जो ईएमए प्रवृत्ति, गोल संख्या ब्रेकआउट और ट्रेडिंग सत्र फ़िल्टरिंग को जोड़ती है। रणनीति मुख्य रूप से ईएमए प्रवृत्ति दिशा पर निर्भर करती है, जो व्यापार संकेतों के रूप में प्रमुख गोल संख्या स्तरों पर मूल्य ब्रेकआउट पैटर्न के साथ जुड़ी होती है, जबकि व्यापार गुणवत्ता को बढ़ाने के लिए सत्र फ़िल्टरिंग को शामिल करती है। रणनीति जोखिम प्रबंधन के लिए प्रतिशत-आधारित स्टॉप-लॉस और ले-प्रॉफिट का उपयोग करती है।
मूल तर्क में निम्नलिखित प्रमुख तत्व शामिल हैंः 1. प्रवृत्ति पहचान उपकरण के रूप में 20-दिवसीय ईएमए का उपयोग करता है, केवल ईएमए के ऊपर लंबा और नीचे छोटा जाता है 2. कुंजी गोल संख्याओं के पास निगलने के पैटर्न की तलाश करता है ($ 5 अंतराल) 3. कम अस्थिरता के समय से बचने के लिए केवल लंदन और न्यूयॉर्क सत्रों के दौरान व्यापार करें 4. लंबे संकेतों के लिए निम्न की आवश्यकता होती है: तेजी से बढ़ते पैटर्न, ईएमए से ऊपर की कीमत, सक्रिय ट्रेडिंग सत्र 5. शॉर्ट सिग्नल के लिए निम्नलिखित की आवश्यकता होती हैः मंदी का पैटर्न, ईएमए से नीचे की कीमत, सक्रिय ट्रेडिंग सत्र 6. व्यापार प्रबंधन के लिए 1% स्टॉप-लॉस और 1.5% टेक-प्रॉफिट जोखिम-लाभ अनुपात लागू करता है
रणनीति ईएमए रुझानों, मूल्य पैटर्न और सत्र फ़िल्टरिंग सहित कई तंत्रों को मिलाकर तार्किक रूप से कठोर ट्रेडिंग प्रणाली का निर्माण करती है। जबकि इसकी कुछ सीमाएं हैं, निरंतर अनुकूलन और परिष्करण संभावित रूप से रणनीति की स्थिरता और लाभप्रदता को बढ़ा सकता है। रणनीति विशिष्ट ट्रेडिंग आवश्यकताओं के आधार पर अनुकूलन के लिए उपयुक्त मध्यम से दीर्घकालिक प्रवृत्ति निम्नलिखित प्रणाली के लिए एक ठोस आधार के रूप में कार्य करती है।
/*backtest start: 2024-12-17 00:00:00 end: 2025-01-16 00:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=6 strategy("The Gold Box Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=200) // Inputs roundNumberInterval = input.int(5, title="Round Number Interval ($)", minval=1) useEMA = input.bool(true, title="Use 20 EMA for Confluence") emaLength = input.int(20, title="EMA Length") // Session times for London and NY londonSession = input("0300-1200", title="London Session (NY Time)") nySession = input("0800-1700", title="New York Session (NY Time)") // EMA Calculation emaValue = ta.ema(close, emaLength) // Plot Round Number Levels roundLow = math.floor(low / roundNumberInterval) * roundNumberInterval roundHigh = math.ceil(high / roundNumberInterval) * roundNumberInterval // for level = roundLow to roundHigh by roundNumberInterval // line.new(x1=bar_index - 1, y1=level, x2=bar_index, y2=level, color=color.new(color.gray, 80), extend=extend.both) // Session Filter inLondonSession = not na(time("1", londonSession)) inNYSession = not na(time("1", nySession)) inSession = true // Detect Bullish and Bearish Engulfing patterns bullishEngulfing = close > open[1] and open < close[1] and close > emaValue and inSession bearishEngulfing = close < open[1] and open > close[1] and close < emaValue and inSession // Entry Conditions if bullishEngulfing strategy.entry("Long", strategy.long, comment="Bullish Engulfing with EMA Confluence") if bearishEngulfing strategy.entry("Short", strategy.short, comment="Bearish Engulfing with EMA Confluence") // Stop Loss and Take Profit stopLossPercent = input.float(1.0, title="Stop Loss (%)", minval=0.1) / 100 takeProfitPercent = input.float(1.5, title="Take Profit (%)", minval=0.1) / 100 strategy.exit("Exit Long", "Long", stop=close * (1 - stopLossPercent), limit=close * (1 + takeProfitPercent)) strategy.exit("Exit Short", "Short", stop=close * (1 + stopLossPercent), limit=close * (1 - takeProfitPercent))