You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TradingView RTH图表ETH 20 EMA绘制异常问题求助

解决TradingView RTH图表上绘制盘后数据EMA的问题

你的脚本核心问题是EMA计算的上下文错误:你先获取了盘后单根bar的收盘价,然后在RTH图表的bar序列上计算EMA,这相当于用RTH的bar数量来滚动计算,本质还是RTH时段的EMA,而非基于完整盘后bar序列的EMA。

修正后的代码

//@version=5
indicator("RTH Chart - Extended Hours EMA", overlay=true)

// 输入EMA周期
emaLength = input(20, title="EMA Length")

// 创建包含盘前/盘后时段的合约ticker
extendedTicker = ticker.new(syminfo.prefix, syminfo.ticker, session.extended)

// 关键:在盘后时段的上下文内计算EMA,再同步到RTH图表
extendedEma = request.security(extendedTicker, timeframe.period, ta.ema(close, emaLength), lookahead=barmerge.lookahead_off)

// 绘制EMA线
plot(extendedEma, color=color.red, title="Extended Hours EMA")

关键改动说明

  • 将ta.ema计算逻辑放入request.security的第三个参数中,让EMA直接在完整的盘后bar序列上计算,而非在RTH序列上用零散的盘后收盘价计算。
  • 关闭lookahead(设置为barmerge.lookahead_off),避免引入未来数据导致的信号漂移问题,保证指标的可靠性。

额外说明

如果你的RTH图表周期和盘后时段的bar周期一致(比如都是1小时),每个RTH bar会对应盘后时段中同周期的bar数据,此时绘制的EMA是基于所有盘前+RTH+盘后时段的bar计算得出的,完全符合你的需求。

内容的提问来源于stack exchange,提问作者NightOwl85

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 21:34:57