Esta estrategia identifica tendencias fuertes y un momento favorable para el comercio a corto plazo con control de pérdidas.
Cálculo de las medias móviles simples de varios períodos
Establecimiento de las SMA de 9 días, 50 días y 100 días
La SMA corta cruzando la SMA larga indica la dirección de la tendencia
Evaluación de los niveles de sobrecompra/sobreventa utilizando el índice de rentabilidad
La duración del RSI es de 14 períodos.
RSI por encima de 70 es sobrecompra, por debajo de 30 es sobreventa
Entrar en operaciones cuando el precio rompe la SMA de 9 días
Ir largo cuando el precio se rompe por encima de la SMA de 9 días
Ir corto cuando el precio se rompe por debajo de la SMA de 9 días
Establecimiento de stop loss/take profit basado en las divergencias del RSI
Divergencia del RSI para el stop loss
Obtener ganancias cuando el índice RSI alcance niveles preestablecidos
Captura las tendencias a corto plazo, adecuadas para el comercio de alta frecuencia
Las combinaciones de SMA filtran las señales de tendencia, evitando las malas operaciones
El RSI ayuda a determinar el momento, controlar los riesgos de manera efectiva
Las operaciones de liquidación de pérdidas y ganancias a corto plazo
La combinación de indicadores mejora la estabilidad
Un juicio inexacto de la tendencia a corto plazo causa persecución
Las señales falsas de RSI aumentan las pérdidas
El valor de las pérdidas se calculará en función de las pérdidas que se hayan producido durante el período de referencia.
La alta frecuencia de negociación aumenta los costes y el deslizamiento
Parámetros ineficaces y estrategia de impacto anormal de los mercados
Optimizar los parámetros, estrictas pérdidas de parada, gestionar los costes
Prueba de diferentes combinaciones de SMA para mejorar el juicio de tendencia
Considere indicadores adicionales como STOCH para verificar las señales de RSI
Emplear el aprendizaje automático para determinar breakouts válidos
Ajuste de parámetros para diferentes productos y sesiones
Optimizar la lógica stop loss/take profit para el seguimiento dinámico
Explora los mecanismos de ajuste automático de parámetros
Esta estrategia combina SMA y RSI para un enfoque comercial conservador a corto plazo. Los parámetros de ajuste fino, la validación de señales, el control de riesgos lo hacen más robusto y adaptable. Hay margen de mejora al explorar más combinaciones de SMA, agregar modelos de aprendizaje automático, etc. La optimización continua conducirá a una mayor madurez.
/*backtest start: 2023-08-27 00:00:00 end: 2023-09-26 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Coinrule //@version=4 strategy(shorttitle='Maximized Scalping On Trend',title='Maximized Scalping On Trend (by Coinrule)', overlay=true, initial_capital = 1000, process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1) //Backtest dates fromMonth = input(defval = 1, title = "From Month", type = input.integer, minval = 1, maxval = 12) fromDay = input(defval = 10, title = "From Day", type = input.integer, minval = 1, maxval = 31) fromYear = input(defval = 2019, title = "From Year", type = input.integer, minval = 1970) thruMonth = input(defval = 1, title = "Thru Month", type = input.integer, minval = 1, maxval = 12) thruDay = input(defval = 1, title = "Thru Day", type = input.integer, minval = 1, maxval = 31) thruYear = input(defval = 2112, title = "Thru Year", type = input.integer, minval = 1970) showDate = input(defval = true, title = "Show Date Range", type = input.bool) start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window window() => true // create function "within window of time" //MA inputs and calculations movingaverage_fast = sma(close, input(9)) movingaverage_mid= sma(close, input(50)) movingaverage_slow = sma(close, input (100)) //Trend situation Bullish= cross(close, movingaverage_fast) Momentum = movingaverage_mid > movingaverage_slow // RSI inputs and calculations lengthRSI = 14 RSI = rsi(close, lengthRSI) //Entry strategy.entry(id="long", long = true, when = Bullish and Momentum and RSI > 50) //Exit TP = input(70) SL =input(30) longTakeProfit = RSI > TP longStopPrice = RSI < SL strategy.close("long", when = longStopPrice or longTakeProfit and window()) plot(movingaverage_fast, color=color.black, linewidth=2 ) plot(movingaverage_mid, color=color.orange, linewidth=2) plot(movingaverage_slow, color=color.purple, linewidth=2)