Esta estrategia se basa principalmente en los promedios móviles de las líneas mensuales y trimestrales para la operación. Específicamente, la línea de 20 días se utiliza como la línea mensual y la línea de 60 días como la línea trimestral. Las señales de estrategia provienen de la cruz de oro y la cruz de la muerte de los dos promedios móviles. Cuando la línea mensual cruza por encima de la línea trimestral, vaya largo; cuando la línea mensual cae por debajo de la línea trimestral, cierre posiciones. Esta estrategia es adecuada para operaciones a medio y largo plazo para capturar oportunidades de consolidación y divergencia.
Esta estrategia utiliza la media móvil simple de 20 días como indicador de línea mensual y la media móvil simple de 60 días como indicador de línea trimestral.
Utilice los cruces medios móviles de líneas mensuales y trimestrales para determinar las tendencias a mediano y largo plazo. La cruz de oro para ir largo indica el comienzo de un mercado alcista a mediano y largo plazo, mientras que la cruz de la muerte para ir corto indica el comienzo de un mercado bajista a mediano y largo plazo. Al mismo tiempo, use estrategias de stop profit y stop loss para controlar los riesgos.
Soluciones:
Esta estrategia utiliza sistemáticamente las ventajas de los promedios móviles mensuales y trimestrales al juzgar las direcciones de tendencia a medio y largo plazo a través de la cruz de oro y la cruz de muerte de los promedios móviles. Al mismo tiempo, se configuran mecanismos razonables de stop loss y take profit para controlar los riesgos. Todavía hay mucho espacio para optimizar esta estrategia, vale la pena probar y optimizar más.
/*backtest start: 2022-12-08 00:00:00 end: 2023-12-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("均線操作-月季", overlay=true, initial_capital = 100000, default_qty_type = strategy.percent_of_equity, default_qty_value = 30) sma20 = sma(close, 20) sma60 = sma(close, 60) plot(sma20, title="月線", color=color.purple,linewidth=2) plot(sma60, title="季線", color=color.yellow,linewidth=2) backtest_year = input(title="backtest_year",type=input.integer,defval=2020) backtest_month = input(title="backtest_month",type=input.integer,defval=10) backtest_date = input(title="backtest_date",type=input.integer,defval=1) backtest_start_time = timestamp(backtest_year,backtest_month,backtest_date,0,0,0) to_long = sma20 > sma60 and close > highest(10)*0.9 // 黃金交叉 to_close = sma20 < sma60 // 死亡交叉 to_exit = close < highest(10)*0.9 //股價嚴重回檔 to_stop = close < 0.9*strategy.position_avg_price // to_long = crossover(sma20, sma60) // 黃金交叉 // to_close = crossunder(sma20, sma60) // 死亡交叉 //plotchar(to_long, char="B", text="買", color=color.red, location=location.belowbar) //plotchar(to_close, char="S", text="賣", color=color.green, location=location.abovebar) //strategy.close("open long",when = tslide, comment="多單滑價7%出場") if true strategy.entry("golden", strategy.long, when=to_long,comment="多單入場") strategy.close("golden", when=to_exit,comment="多單滑價7%出場") strategy.close("golden", when=to_close,comment="月線季線死亡交叉") strategy.close("golden", when=to_stop,comment="虧損10%強迫停損")