
Esta estratégia é uma estratégia de negociação de curto período baseada em uma variação de 0,5% no preço de fechamento de Hertz para emitir sinais de compra e venda. Aplica-se apenas ao gráfico de queima de Hertz e tem um ciclo de operação ideal de 2 horas, 1 hora e 30 minutos.
A lógica central da estratégia é:Fazer mais quando o preço de fechamento de Hertz aumenta 0,5% em relação ao preço de fechamento de uma linha K anterior; Fazer um corte quando o preço de fechamento de Hertz diminui 0,5% em relação ao preço de fechamento de uma linha K anterior。
Especificamente, a estratégia calcula o percentual de variação do preço de fechamento da linha K atual em relação ao preço de fechamento da linha K anterior, ou seja,priceChange = close / close[1] - 1SepriceChange >= 0.005Se for o caso, é um sinal múltiplo; se for o caso, é um sinal múltiplo.priceChange <= -0.005O que é que se passa aqui?
Ao emitir um sinal, a estratégia também determina se há uma posição atual. Se já houver uma posição, não será repetido o sinal; se não houver uma posição, será emitido um sinal de abertura de posição correspondente, de acordo com as condições de compra ou venda.
Finalmente, a estratégia também foi usada.plotshapeOs sinais de compra e venda devem ser marcados no gráfico.
A estratégia pode ser melhorada em vários aspectos:
A estratégia é, em geral, uma estratégia de negociação de linha curta muito simples, direta, com poucos parâmetros, fácil de entender e modificar. Ela tem uma forte capacidade de capturar tendências de mudanças de preços de curto prazo, adequada para aqueles que gostam de negociação de alta frequência. Mas também deve ter cuidado para controlar a frequência de negociação e reduzir o custo de negociação.
/*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)