Esta estrategia se opera basándose en la cruz dorada y la cruz muerta de 3 promedios móviles simples.
Específicamente, utiliza los cruces entre 3 SMA de diferentes períodos para operar. La SMA rápida representa la tendencia a corto plazo, la SMA media representa la tendencia a mediano plazo y la SMA lenta representa la tendencia a largo plazo. Cuando los tres SMA cruzan hacia arriba en secuencia, señala una tendencia alcista para ir largo. Cuando ocurre un cruce descendente, señala una tendencia bajista para ir corto.
Los riesgos se pueden gestionar mediante el tamaño de las posiciones, la optimización de la SMA, las estrategias de stop loss, etc.
Esta estrategia mantiene posiciones basadas en 3 cruces de SMA para determinar la dirección de la tendencia. Los pros son señales claras y configurabilidad simples; los contras son señales rezagadas y dependencia de parámetros. El rendimiento se puede mejorar y los riesgos controlados a través de la optimización de parámetros, stop loss, etc. Ayuda a los operadores a dominar el uso de SMA y estrategias de cruce.
/*backtest start: 2023-08-21 00:00:00 end: 2023-09-20 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // © DaynTrading //@version=4 // strategy( // title="Simple Moving Average Cross", // overlay=true, // initial_capital=5000, // default_qty_type=strategy.percent_of_equity, // default_qty_value=2, // commission_type=strategy.commission.percent, // commission_value=0.075, // pyramiding=0 // ) sma_top_input = input(title="SMA Top", type=input.integer, defval=20) sma_mid_input = input(title="SMA Mid", type=input.integer, defval=50) sma_low_input = input(title="SMA Low", type=input.integer, defval=200) bars_long = input(title="Long: After trigger, how many bars to wait?", type=input.integer, defval=5) bars_short = input(title="Short: After trigger, how many bars to wait?", type=input.integer, defval=5) sma_top = sma(close, sma_top_input) sma_mid = sma(close, sma_mid_input) sma_low = sma(close, sma_low_input) long = sma_top > sma_mid and sma_mid > sma_low short = sma_top < sma_mid and sma_mid < sma_low long_condition = long and long[bars_long] and not long[bars_long + 1] short_condition = short and short[bars_short] and not short[bars_short + 1] close_long = sma_top < sma_mid and sma_mid < sma_low and not long[bars_long + 1] close_short = sma_top > sma_mid and sma_mid > sma_low and not short[bars_short + 1] plot(sma_top, title="SMA Top", color=#95f252, linewidth=2) plot(sma_mid, title="SMA Mid", color=#FF1493, linewidth=2) plot(sma_low, title="SMA Low", color=#6a0dad, linewidth=2) strategy.entry("LongPosition", strategy.long, when = long_condition) strategy.entry("ShortPosition", strategy.short, when = short_condition) strategy.close("LongPosition", when = close_short) strategy.close("ShortPosition", when = close_long)