यह रणनीति कई तकनीकी संकेतकों की संयुक्त पुष्टि के माध्यम से अल्पावधि व्यापार में उच्च संभावना वाले व्यापारिक अवसरों की तलाश करने के लिए दोहरी चलती औसत क्रॉसओवर, आरएसआई और स्टोकास्टिक संकेतकों को जोड़ती है। यह रणनीति 20 दिन और 50 दिन की चलती औसत के क्रॉसओवर को मुख्य व्यापार संकेत के रूप में उपयोग करती है, और व्यापार संकेतों को दो बार जांचने के लिए सहायक निर्णय के रूप में आरएसआई और स्टोकास्टिक संकेतकों को शामिल करती है। इसके अलावा, रणनीति स्टॉप-लॉस और टेक-प्रॉफिट के आधार के रूप में एटीआर का भी उपयोग करती है, एक निश्चित जोखिम-इनाम अनुपात के साथ पदों का प्रबंधन करती है, जोखिमों को नियंत्रित करते हुए स्थिर रिटर्न प्राप्त करने का प्रयास करती है।
यह रणनीति दोहरी चलती औसत, आरएसआई और स्टोकास्टिक संकेतकों पर आधारित एक अल्पकालिक ट्रेडिंग रणनीति है। यह कई तकनीकी संकेतकों की संयुक्त पुष्टि के माध्यम से प्रवृत्ति के अवसरों को पकड़ते हुए ट्रेडिंग जोखिमों को नियंत्रित करती है। रणनीति तर्क स्पष्ट है, मापदंडों को अनुकूलित करना आसान है, और यह अल्पकालिक व्यापार में लगे निवेशकों के लिए उपयुक्त है। हालांकि, रणनीति में कुछ कमियां भी हैं, जैसे कि सीमित प्रवृत्ति-पकड़ने की क्षमता और पदों और पूंजी के गतिशील प्रबंधन की कमी। इन समस्याओं को अधिक तकनीकी संकेतकों, ऑप्टिमाइज़ सिग्नल और स्थिति प्रबंधन आदि को पेश करके सुधार किया जा सकता है, ताकि रणनीति के प्रदर्शन को और बढ़ाया जा सके।
/*backtest start: 2024-05-17 00:00:00 end: 2024-06-16 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Cruce de Medias con Filtros de RSI y Estocástico", overlay=true) // Definir parámetros de las medias móviles fast_length = input(20, title="Periodo de Media Rápida") slow_length = input(50, title="Periodo de Media Lenta") // Calcular medias móviles fast_ma = ta.sma(close, fast_length) slow_ma = ta.sma(close, slow_length) // Añadir filtro RSI rsi_length = input(7, title="Periodo del RSI") rsi = ta.rsi(close, rsi_length) rsi_overbought = input(70, title="RSI Sobrecomprado") rsi_oversold = input(30, title="RSI Sobrevendido") // Añadir filtro Estocástico k_period = input(7, title="K Periodo del Estocástico") d_period = input(3, title="D Periodo del Estocástico") smooth_k = input(3, title="Suavización del Estocástico") stoch_k = ta.sma(ta.stoch(close, high, low, k_period), smooth_k) stoch_d = ta.sma(stoch_k, d_period) stoch_overbought = input(80, title="Estocástico Sobrecomprado") stoch_oversold = input(20, title="Estocástico Sobrevendido") // Definir niveles de stop-loss y take-profit con ratio 2:1 risk = input(1, title="Riesgo en ATR") reward_ratio = input(2, title="Ratio Riesgo/Beneficio") atr_length = input(14, title="Periodo del ATR") atr = ta.atr(atr_length) stop_loss = risk * atr take_profit = reward_ratio * stop_loss // Señal de compra long_condition = ta.crossover(fast_ma, slow_ma) and rsi < rsi_overbought and stoch_k < stoch_overbought if (long_condition) strategy.entry("Compra", strategy.long) // Señal de venta short_condition = ta.crossunder(fast_ma, slow_ma) and rsi > rsi_oversold and stoch_k > stoch_oversold if (short_condition) strategy.entry("Venta", strategy.short) // Configurar Stop-Loss y Take-Profit para posiciones largas if (strategy.position_size > 0) strategy.exit("Take Profit/Stop Loss", from_entry="Compra", stop=low - stop_loss, limit=high + take_profit) // Configurar Stop-Loss y Take-Profit para posiciones cortas if (strategy.position_size < 0) strategy.exit("Take Profit/Stop Loss", from_entry="Venta", stop=high + stop_loss, limit=low - take_profit) // Plotear las medias móviles en el gráfico plot(fast_ma, title="Media Rápida (50)", color=color.blue) plot(slow_ma, title="Media Lenta (200)", color=color.red) // Plotear RSI y Estocástico en subgráficos hline(rsi_overbought, "RSI Sobrecomprado", color=color.red) hline(rsi_oversold, "RSI Sobrevendido", color=color.green) plot(rsi, title="RSI", color=color.orange, linewidth=2) hline(stoch_overbought, "Estocástico Sobrecomprado", color=color.red) hline(stoch_oversold, "Estocástico Sobrevendido", color=color.green) plot(stoch_k, title="Estocástico K", color=color.purple, linewidth=2) plot(stoch_d, title="Estocástico D", color=color.purple, linewidth=1, style=plot.style_stepline)