该策略是一个基于抛物线SAR指标与价格之间背离关系的交易系统。通过监测SAR指标与价格走势之间的背离现象来识别潜在的趋势反转点,从而捕捉市场转折机会。策略采用了经典的抛物线SAR指标作为核心技术指标,结合背离分析方法,构建了一个完整的趋势跟踪交易系统。
策略的核心逻辑包含以下几个关键要素: 1. 使用抛物线SAR指标跟踪价格趋势,该指标具有动态调整加速因子的特点 2. 通过设定回溯期(lookback)来检测价格与SAR指标之间的背离 3. 当出现看涨背离时(价格创新低而SAR未创新低),触发做多信号 4. 当出现看跌背离时(价格创新高而SAR未创新高),触发做空信号 5. 系统通过shape.triangleup和shape.triangledown在图表上标注交易信号 6. 集成了警报功能,可在出现交易信号时及时通知交易者
这是一个基于经典技术指标的趋势跟踪策略,通过背离分析方法捕捉市场转折点。策略设计思路清晰,实现方法简洁,具有良好的可操作性。但在实际应用中仍需要根据具体市场特征进行优化,特别是在风险控制方面需要进一步完善。通过增加过滤机制、完善风险控制系统,该策略有望获得更稳定的交易表现。
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-11 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("SAR Divergence Strategy", overlay=true)
// --- Inputs ---
length = input.int(14, title="SAR Length", minval=1)
accelerationFactor = input.float(0.02, title="Acceleration Factor", minval=0.01)
maximumFactor = input.float(0.2, title="Maximum Factor", minval=0.01)
// --- SAR Calculation ---
sar = ta.sar(length, accelerationFactor, maximumFactor)
// --- Divergence Detection ---
lookback = 5
// Bullish Divergence
bullCond = close[lookback] < close[lookback + 1] and sar[lookback] > sar[lookback + 1]
// Bearish Divergence
bearCond = close[lookback] > close[lookback + 1] and sar[lookback] < sar[lookback + 1]
// --- Strategy Logic ---
if (bullCond)
strategy.entry("Long", strategy.long)
if (bearCond)
strategy.entry("Short", strategy.short)
// --- Plotting ---
plot(sar, color=color.blue, linewidth=2, title="Parabolic SAR")
plotshape(bullCond, style=shape.triangleup, color=color.green, size=size.small, title="Bullish Divergence")
plotshape(bearCond, style=shape.triangledown, color=color.red, size=size.small, title="Bearish Divergence")
// --- Alerts ---
alertcondition(bullCond, title="Bullish SAR Divergence", message="Bullish Divergence detected")
alertcondition(bearCond, title="Bearish SAR Divergence", message="Bearish Divergence detected")