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

PineScript指标如何将买卖信号显示在主图、指标线显示在副图?

问题解答

不需要重复加载两次指标,Pine Script v4及以上版本支持通过绘图函数的display参数单独指定元素的展示位置,完全可以在同一个指标脚本里实现「指标线留在副窗口、买卖信号显示在主K线图」的需求。

具体实现方法

  • 保留指标头部indicator()声明里的原有设置即可,不需要修改全局的overlay参数(你原来的配置是overlay=false,保持这个值就能让没单独指定display的元素默认显示在副窗口)。
  • 指标线的plot语句保持原有写法,不需要额外加参数,会自动跟随全局配置显示在副窗口。
  • 给买卖信号的绘图语句(包括plotshape、plotchar、label.new等所有绘图类函数)添加display = display.price_scale参数,添加后对应的信号元素就会直接渲染到主K线的价格窗口,不会出现在副窗口。

示例代码片段

//@version=5
indicator("副窗指标+主图信号示例", overlay=false, shorttitle="双窗示例")

// 替换为你自己的指标计算逻辑
maValue = ta.sma(close, 20)
// 指标线:默认显示在副窗
plot(maValue, color=color.blue, title="指标线")

// 替换为你自己的信号计算逻辑
buySignal = ta.crossover(close, maValue)
sellSignal = ta.crossunder(close, maValue)

// 信号:指定显示在主图价格窗口
plotshape(buySignal, title="买点", location=location.belowbar, color=color.green, style=shape.labelup, text="买", display = display.price_scale)
plotshape(sellSignal, title="卖点", location=location.abovebar, color=color.red, style=shape.labeldown, text="卖", display = display.price_scale)

注意事项

  • 如果你使用的是Pine Script v3及更早的旧版本,没有display参数,才需要拆分两个指标分别设置overlay=true和overlay=false加载。
  • 所有自定义绘图对象(标签、线段、形状等)都支持通过display参数指定展示位置,逻辑和上面一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 07:36:08