
La estrategia es una estrategia de comercio de corto ciclo para emitir señales de compra y venta basadas en un cambio de precio de cierre de 0.5% en hertz. Sólo se aplica a gráficos de quema de hertz y tiene un ciclo óptimo de 2 horas, 1 hora y 30 minutos.
La lógica central de esta estrategia es la siguiente:Hacer más cuando el precio de cierre de Hertz sube un 0.5% respecto al precio de cierre de la línea K anterior; hacer un descuento cuando el precio de cierre de Hertz baja un 0.5% respecto al precio de cierre de la línea K anterior。
En concreto, la estrategia calcula el porcentaje de cambio en el precio de cierre de la línea K actual con respecto al precio de cierre de la línea K anterior, es decir,priceChange = close / close[1] - 1Si es así.priceChange >= 0.005, emitirá una señal múltiple; sipriceChange <= -0.005La señal de vacío es emitida.
Cuando se emite la señal, la estrategia también determina si la posición actual ya existe. Si ya se ha mantenido la posición ((hacer más o hacer menos), no se emitirá la señal de repetición; si no se mantiene la posición, se emitirá la señal de apertura de posición correspondiente según las condiciones de compra o venta.
Finalmente, la estrategia también fue usada.plotshapeLas señales de compra y venta se marcan en el gráfico.
La estrategia se puede optimizar principalmente en los siguientes aspectos:
La estrategia en su conjunto es una estrategia de comercio de línea corta muy simple, directa, con pocos parámetros, fácil de entender y modificar. Tiene una gran capacidad para capturar las tendencias de los cambios de precios a corto plazo y es adecuada para aquellos a los que les gusta el comercio de alta frecuencia.
/*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)