在交易策略开发中,尤其是在使用Pinescript语言在TradingView平台上进行开发时,获取不同时间段的指标值(如DI + DI-和ADX)是一个常见的需求。这些指标通常用于技术分析,帮助交易者判断市场趋势和潜在的反转点。
在Pinescript中,获取不同时间段的指标值需要使用不同的时间框架(timeframe)。以下是一个示例代码,展示如何在单个时间窗口中同时获取1H、2H和4H的DI + DI-和ADX值:
//@version=5
indicator("Multi-Timeframe Indicators", overlay=true)
// 获取当前时间框架的DI + DI-和ADX值
dmi = ta.dmi(close, high, low)
diPlus = dmi.diPlus
diMinus = dmi.diMinus
adx = dmi.adx
// 获取1H时间框架的DI + DI-和ADX值
dmi1h = request.security(syminfo.tickerid, "1h", ta.dmi(close, high, low))
diPlus1h = dmi1h.diPlus
diMinus1h = dmi1h.diMinus
adx1h = dmi1h.adx
// 获取2H时间框架的DI + DI-和ADX值
dmi2h = request.security(syminfo.tickerid, "2h", ta.dmi(close, high, low))
diPlus2h = dmi2h.diPlus
diMinus2h = dmi2h.diMinus
adx2h = dmi2h.adx
// 获取4H时间框架的DI + DI-和ADX值
dmi4h = request.security(syminfo.tickerid, "4h", ta.dmi(close, high, low))
diPlus4h = dmi4h.diPlus
diMinus4h = dmi47.diMinus
adx4h = dmi4h.adx
// 绘制指标值
plot(diPlus, title="DI+")
plot(diMinus, title="DI-")
plot(adx, title="ADX")
plot(diPlus1h, title="DI+ 1H", color=color.blue)
plot(diMinus1h, title="DI- 1H", color=color.blue)
plot(adx1h, title="ADX 1H", color=color.blue)
plot(diPlus2h, title="DI+ 2H", color=color.green)
plot(diMinus2h, title="DI- 2H", color=color.green)
plot(adx2h, title="ADX 2H", color=color.green)
plot(diPlus4h, title="DI+ 4H", color=color.red)
plot(diMinus4h, title="DI- 4H", color=color.red)
plot(adx4h, title="ADX 4H", color=color.red)
通过上述代码,你可以在单个时间窗口中同时获取和绘制1H、2H和4H的DI + DI-和ADX值,从而更全面地分析市场趋势。
领取专属 10元无门槛券
手把手带您无忧上云