该策略是基于0.5%的赫氏收盘价变化来发出买入和卖出信号的一个短周期交易策略。它只适用于赫氏燃烧图,且最佳运行周期为2小时、1小时和30分钟。
该策略的核心逻辑是:当赫氏收盘价相比前一根K线的收盘价上涨0.5%时,做多;当赫氏收盘价相比前一根K线的收盘价下跌0.5%时,做空。
具体来说,该策略先计算出当前K线收盘价与前一K线收盘价的变化百分比,即priceChange = close / close[1] - 1
。如果priceChange >= 0.005
,则发出做多信号;如果priceChange <= -0.005
,则发出做空信号。
在发出信号时,该策略还会判断当前是否已有仓位。如果已经持仓(做多或做空),则不会重复发出信号;如果没有持仓,则会根据买入条件或卖出条件发出相应的开仓信号。
最后,策略还使用了plotshape
来在图表上标记买入卖出信号。
该策略主要可从以下几个方面进行优化:
该策略整体来说是一个非常简单直接、参数少、容易理解和修改的短线交易策略。它 catches短期价格变化趋势的能力很强,适合那些喜欢高频交易的人。但同时也应当注意控制交易次数,降低交易成本。通过一些参数调整和优化,可以使该策略的交易表现更加出色。
/*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)