
La estrategia es una estrategia de seguimiento de tendencias basada en un sistema de múltiples líneas medias y el indicador RSI. La estrategia utiliza una combinación de medias móviles de 20, 50 y 200 ciclos para juzgar la tendencia del mercado mediante el análisis de la relación de posición entre las diferentes líneas medias y la confirmación de la señal de negociación en combinación con el indicador RSI.
El núcleo de la estrategia es determinar la tendencia del mercado mediante el análisis de la relación de posición relativa entre las tres medias (MA20, MA50, MA200). La estrategia define 18 escenarios de combinación de medias diferentes, centrándose principalmente en los cruces de medias y la relación de posición.
Es una estrategia de seguimiento de tendencias estructurada y con claridad lógica. Mediante el uso combinado de un sistema de líneas medias múltiples, combinado con filtración de indicadores RSI, se forma un sistema de negociación relativamente confiable. El mecanismo de gestión de riesgos de la estrategia está diseñado de manera razonable, ya que protege los beneficios y no se retira demasiado pronto al rastrear el stop loss.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Refined MA Strategy with Trailing Stop for 30m", overlay=true)
// Define the moving averages
TR20 = ta.sma(close, 20)
TR50 = ta.sma(close, 50)
TR200 = ta.sma(close, 200)
// Define the RSI for additional filtering
rsi = ta.rsi(close, 14)
// Define the scenarios
scenario1 = TR20 > TR50 and TR50 > TR200
scenario2 = TR50 > TR20 and TR20 > TR200
scenario3 = TR200 > TR50 and TR50 > TR20
scenario4 = TR50 > TR200 and TR200 > TR20
scenario5 = TR20 > TR200 and TR200 > TR50
scenario6 = TR200 > TR20 and TR20 > TR50
scenario7 = TR20 == TR50 and TR50 > TR200
scenario8 = TR50 == TR20 and TR20 > TR200
scenario9 = TR200 == TR50 and TR50 > TR20
scenario10 = TR20 > TR50 and TR50 == TR200
scenario11 = TR50 > TR20 and TR20 == TR200
scenario12 = TR20 > TR50 and TR50 == TR200
scenario13 = TR20 == TR50 and TR50 == TR200
scenario14 = TR20 > TR50 and TR200 == TR50
scenario15 = TR50 > TR20 and TR200 == TR50
scenario16 = TR20 > TR50 and TR50 == TR200
scenario17 = TR20 > TR50 and TR50 == TR200
scenario18 = TR20 > TR50 and TR50 == TR200
// Entry conditions
longCondition = (scenario1 or scenario2 or scenario5) and rsi < 70
shortCondition = (scenario3 or scenario4 or scenario6) and rsi > 30
// Execute trades based on scenarios with 50 points stop loss and 1:10 RR, using a trailing stop of 25 points
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit", from_entry="Long", limit=close + 250, trail_offset=25)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Take Profit", from_entry="Short", limit=close - 250, trail_offset=25)