Esta es una estrategia de negociación basada en la cruz de oro de los promedios móviles duales, combinada con la gestión de riesgos adaptativa y el tamaño dinámico de las posiciones. La estrategia utiliza promedios móviles simples (SMA) de 50 días y 200 días para identificar tendencias, generando una señal de compra cuando el MA de 50 días cruza por encima del MA de 200 días. Al mismo tiempo, la estrategia emplea un método de control de riesgos basado en el 2,5% del capital total de la cuenta, calculando dinámicamente el tamaño de la posición para cada operación, y utiliza un stop-loss basado en porcentajes en relación con el MA de 200 días para proteger las ganancias.
Esta estrategia de gestión de riesgos adaptativa basada en la doble media móvil de la cruz de oro combina los métodos clásicos de análisis técnico con técnicas modernas de gestión de riesgos, proporcionando a los operadores un sistema de negociación relativamente robusto. No solo captura las tendencias a medio y largo plazo, sino que también controla eficazmente el riesgo, adecuado para los inversores que buscan rendimientos estables. Sin embargo, al usar esta estrategia, los operadores aún necesitan monitorear de cerca los cambios del mercado y optimizar continuamente los parámetros basados en el rendimiento comercial real para lograr la mejor relación riesgo-recompensación.
/*backtest start: 2019-12-23 08:00:00 end: 2024-09-24 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Golden Cross with 1.5% Stop-Loss & MA Exit", overlay=true) // Define the 50-day and 200-day moving averages ma50 = ta.sma(close, 50) ma200 = ta.sma(close, 200) // Entry condition: 50-day MA crosses above 200-day MA (Golden Cross) goldenCross = ta.crossover(ma50, ma200) // Exit condition: price drops below the 200-day MA exitCondition = close < ma200 // Set the stop-loss to 1.5% below the 200-day moving average stopLoss = ma200 * 0.985 // 1.5% below the 200-day MA // Risk management (1.5% of total equity) riskPercent = 0.025 // 1.5% risk equity = strategy.equity riskAmount = equity * riskPercent // Calculate the distance between the entry price (close) and the stop-loss stopDistance = close - stopLoss // Calculate position size based on the risk amount and stop-loss distance if (goldenCross and stopDistance > 0) positionSize = riskAmount / stopDistance strategy.entry("Long", strategy.long, qty=positionSize) // Exit the trade when the price crosses below the 200-day moving average if (exitCondition) strategy.close("Long") // Plot the moving averages on the chart for visualization plot(ma50, color=color.blue, linewidth=2, title="50-day MA") plot(ma200, color=color.red, linewidth=2, title="200-day MA")