Esta es una estrategia de negociación a corto plazo que emite señales de compra y venta basadas en cambios del 0,5% en el precio de cierre de Heikin-Ashi.
La lógica central de esta estrategia es la siguiente:Ir largo cuando el precio de cierre de Heikin-Ashi aumenta un 0,5% en comparación con el candelero anterior; Ir corto cuando el precio de cierre de Heikin-Ashi cae un 0,5% en comparación con el candelero anterior.
Específicamente, la estrategia calcula primero el cambio porcentual entre el precio de cierre actual y el precio de cierre anterior, es decir,priceChange = close / close[1] - 1
- Si es así.priceChange >= 0.005
, se emite una señal larga.priceChange <= -0.005
, se emite una señal corta.
Cuando se emiten señales, la estrategia también juzga si hay una posición existente. Si ya está en posición (larga o corta), no se repetirá ninguna señal. Si no hay posición, emitirá señales de posición abierta basadas en las condiciones de compra o venta.
Por último,plotshape
se utiliza para marcar las señales de compra y venta en el gráfico.
Los principales aspectos para optimizar esta estrategia:
En resumen, este es un parámetro muy simple, bajo, fácil de entender estrategia de negociación a corto plazo. Captura los cambios de precio extremadamente rápido, adecuado para los operadores de alta frecuencia. Pero también necesita controlar el número de operaciones para reducir costos. Con varios métodos de optimización, puede lograr resultados aún mejores.
/*backtest start: 2022-12-11 00:00:00 end: 2023-12-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Heikin-Ashi - Change 0.5% short Time Period", shorttitle="Heikin-Ashi - Change 0.5% short Time Period", overlay=true) // Calculate 0.5% price change priceChange = close / close[1] - 1 // Buy and Sell Signals buyp = priceChange >= 0.005 sellp = priceChange <= -0.005 // Initialize position and track the current position var int position = na // Strategy entry conditions buy_condition = buyp and (na(position) or position == -1) sell_condition = sellp and (na(position) or position == 1) if buy_condition strategy.entry("Buy", strategy.long) position := 1 if sell_condition strategy.entry("Sell", strategy.short) position := -1 // Plot Buy and Sell signals using plotshape plotshape(series=buy_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) plotshape(series=sell_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)