यह रणनीति एक अनुकूलन प्रणाली है जो प्रवृत्ति के बाद और सीमा व्यापार को जोड़ती है, बाजार की स्थितियों को निर्धारित करने के लिए चपनेस इंडेक्स (सीआई) का उपयोग करती है और संबंधित ट्रेडिंग तर्क लागू करती है। प्रवृत्ति बाजारों में, रणनीति व्यापार के लिए ईएमए क्रॉसओवर और आरएसआई ओवरबॉट / ओवरसोल्ड सिग्नल का उपयोग करती है; रेंजिंग बाजारों में, यह मुख्य रूप से आरएसआई चरम मूल्यों पर निर्भर करता है। रणनीति में जोखिम को नियंत्रित करने और लाभ में लॉक करने के लिए स्टॉप-लॉस और ले-प्रॉफिट तंत्र भी शामिल हैं।
रणनीति का मूल बाजार को ट्रेंडिंग (CI<38.2) और रेंजिंग (CI>61.8) राज्यों में वर्गीकृत करने के लिए चपनी सूचकांक (CI) का उपयोग करने में निहित है। ट्रेंडिंग बाजारों में, लंबी स्थिति तब खोली जाती है जब तेज ईएमए (9-अवधि) धीमी ईएमए (21-अवधि) से ऊपर पार हो जाती है और आरएसआई 70 से नीचे होता है, जबकि छोटी स्थिति तब खोली जाती है जब धीमी ईएमए तेज ईएमए से ऊपर पार हो जाती है और आरएसआई 30 से ऊपर होता है। रेंजिंग बाजारों में, लंबी स्थिति तब खोली जाती है जब आरएसआई 30 से नीचे होता है, और छोटी स्थिति तब होती है जब आरएसआई 70 से ऊपर होता है। रणनीति में 2% स्टॉप-लॉस और 4% टेक-प्रॉफिट स्तरों के साथ संबंधित निकास स्थितियां शामिल होती हैं।
यह रणनीति कई तकनीकी संकेतकों को मिलाकर एक अनुकूलनशील ट्रेडिंग प्रणाली का निर्माण करती है, जो विभिन्न बाजार वातावरणों में स्थिर प्रदर्शन बनाए रखती है। इसके मुख्य फायदे बाजार अनुकूलनशीलता और व्यापक जोखिम प्रबंधन तंत्र में निहित हैं, जबकि पैरामीटर अनुकूलन और बाजार की स्थिति निर्भरता पर ध्यान दिया जाना चाहिए। निरंतर अनुकूलन और सुधार के माध्यम से, रणनीति विभिन्न बाजार स्थितियों में बेहतर ट्रेडिंग परिणाम प्राप्त करने के लिए वादा करती है।
/*backtest start: 2024-12-19 00:00:00 end: 2024-12-26 00:00:00 period: 45m basePeriod: 45m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © nopology //@version=6 strategy("CI, EMA, RSI", overlay=false) // Input parameters lengthCI = input(14, title="CI Length") lengthRSI = input(14, title="RSI Length") fastLength = input(9, title="Fast EMA Length") slowLength = input(21, title="Slow EMA Length") // Calculate CI atr = ta.atr(lengthCI) highLowRange = math.log10(math.max(high[lengthCI], high) - math.min(low[lengthCI], low)) sumATR = math.sum(atr, lengthCI) ci = 100 * (math.log10(sumATR / highLowRange) / math.log10(lengthCI)) // Calculate RSI rsi = ta.rsi(close, lengthRSI) // Calculate EMAs fastEMA = ta.ema(close, fastLength) slowEMA = ta.ema(close, slowLength) // Define conditions trendingMarket = ci < 38.2 rangingMarket = ci > 61.8 bullishSignal = ta.crossover(fastEMA, slowEMA) and rsi < 70 bearishSignal = ta.crossover(slowEMA, fastEMA) and rsi > 30 // Plot indicators for visualization plot(ci, title="Choppiness Index", color=color.purple, linewidth=2) plot(fastEMA, title="Fast EMA", color=color.blue) plot(slowEMA, title="Slow EMA", color=color.red) // Strategy Execution if (trendingMarket) if (bullishSignal) strategy.entry("Long", strategy.long) if (bearishSignal) strategy.entry("Short", strategy.short) else if (rangingMarket) if (rsi < 30) strategy.entry("Long", strategy.long) if (rsi > 70) strategy.entry("Short", strategy.short) // Close positions when conditions no longer met or reverse if (trendingMarket and not bullishSignal) strategy.close("Long") if (trendingMarket and not bearishSignal) strategy.close("Short") if (rangingMarket and rsi > 40) strategy.close("Long") if (rangingMarket and rsi < 60) strategy.close("Short") // Optional: Add stop loss and take profit stopLossPerc = input.float(2, title="Stop Loss (%)", minval=0.1, step=0.1) / 100 takeProfitPerc = input.float(4, title="Take Profit (%)", minval=0.1, step=0.1) / 100 strategy.exit("Exit Long", "Long", stop=close*(1-stopLossPerc), limit=close*(1+takeProfitPerc)) strategy.exit("Exit Short", "Short", stop=close*(1+stopLossPerc), limit=close*(1-takeProfitPerc))