
Se trata de una estrategia multifacética basada en EMA de soporte y tendencia. La estrategia busca las mejores oportunidades de entrada mediante la identificación de las tendencias del mercado y los puntos clave de soporte, combinando el ATR con el stop loss dinámico y el retorno de ganancias por etapas para lograr la gestión del riesgo. La estrategia se centra en que los precios regresen a los soportes en una tendencia alcista, y mejora la tasa de éxito de las operaciones mediante la configuración de un razonable riesgo-beneficio.
La estrategia utiliza el EMA de 100 ciclos como indicador de tendencia, confirmando una tendencia alcista cuando el precio está por encima del EMA. Al mismo tiempo, se calcula el precio mínimo de 10 ciclos como soporte a corto plazo, cuando el precio retrocede cerca del soporte.*ATR) para buscar oportunidades de entrada. Después de la entrada, se utiliza el método de ganancias por etapas, el 50% de las posiciones se cierran en 5 veces ATR, y las posiciones restantes se cierran completamente en 10 veces ATR, al tiempo que se configura 1 veces ATR como un stop loss dinámico. El riesgo de cada transacción se controla dentro del 3% del valor total de la cuenta, para lograr la gestión del riesgo mediante el cálculo dinámico del tamaño de la posición.
La estrategia establece un sistema de negociación completo mediante la combinación de seguimiento de tendencias y retroceso de posiciones de soporte, y permite la gestión de riesgos mediante la obtención de ganancias y pérdidas dinámicas por etapas. La estrategia tiene como ventaja central su mecanismo de control de riesgos completo y su lógica de negociación clara, pero aún necesita una optimización continua de los parámetros y las condiciones de entrada en la práctica para adaptarse a diferentes entornos de mercado. Se recomienda a los operadores que realicen una adecuada retroalimentación antes de su uso en el entorno real y que realicen un ajuste personalizado de la estrategia en combinación con la experiencia del mercado.
/*backtest
start: 2024-02-22 00:00:00
end: 2024-05-30 00:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Ultra-Profitable SMC Long-Only Strategy", shorttitle="Ultra_Profit_SMC", overlay=true)
// User Inputs
emaTrendLength = input.int(100, title="Trend EMA Length") // Faster EMA to align with aggressive trends
supportLookback = input.int(10, title="Support Lookback Period") // Short-term support zones
atrLength = input.int(14, title="ATR Length")
atrMultiplierSL = input.float(1.0, title="ATR Multiplier for Stop-Loss")
atrMultiplierTP1 = input.float(5.0, title="ATR Multiplier for TP1")
atrMultiplierTP2 = input.float(10.0, title="ATR Multiplier for TP2")
riskPercent = input.float(3.0, title="Risk per Trade (%)", step=0.1)
// Calculate Indicators
emaTrend = ta.ema(close, emaTrendLength) // Trend EMA
supportLevel = ta.lowest(low, supportLookback) // Support Level
atr = ta.atr(atrLength) // ATR
// Entry Conditions
isTrendingUp = close > emaTrend // Price above Trend EMA
nearSupport = close <= supportLevel + (atr * 0.5) // Price near support zone
longCondition = isTrendingUp and nearSupport
// Dynamic Stop-Loss and Take-Profit Levels
longStopLoss = supportLevel - (atr * atrMultiplierSL)
takeProfit1 = close + (atr * atrMultiplierTP1) // Partial Take-Profit at 5x ATR
takeProfit2 = close + (atr * atrMultiplierTP2) // Full Take-Profit at 10x ATR
// Position Sizing
capital = strategy.equity
tradeRisk = riskPercent / 100 * capital
positionSize = tradeRisk / (close - longStopLoss)
// Execute Long Trades
if (longCondition)
strategy.entry("Ultra Long", strategy.long, qty=positionSize)
// Exit Conditions
strategy.exit("Partial Exit", from_entry="Ultra Long", limit=takeProfit1, qty_percent=50) // Exit 50% at TP1
strategy.exit("Full Exit", from_entry="Ultra Long", limit=takeProfit2, qty_percent=100, stop=longStopLoss) // Exit the rest at TP2
// Plot Indicators
plot(emaTrend, color=color.blue, title="Trend EMA")
plot(supportLevel, color=color.green, title="Support Level", linewidth=2)