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

如何在TradingView JavaScript API中填充两条线系列间的区域?

在TradingView中填充两条线之间的区域

嘿,我刚好清楚怎么实现你想要的效果!在TradingView的Pine Script里,其实有专门的fill()函数来完成两条线系列之间的区域填充,可能你之前没精准定位到这个工具~

基础实现步骤

首先你需要先定义并绘制出两条目标线(比如两条均线、通道线之类的),然后用fill()函数把它们连接起来填充颜色:

// 1. 定义两条示例线(这里用50和200周期均线举例)
ma_short = ta.sma(close, 50)
ma_long = ta.sma(close, 200)

// 2. 绘制两条线并保存它们的plot对象
plot_short = plot(ma_short, color=color.blue, title="50周期均线")
plot_long = plot(ma_long, color=color.red, title="200周期均线")

// 3. 填充两条线之间的区域
fill(plot_short, plot_long, color=color.new(color.green, 80), title="均线区间填充")

关键细节说明

  • color.new()函数用来调整填充色的透明度,第二个参数范围是0(完全不透明)到100(完全透明),选80左右的透明度既能看清填充区域,又不会遮挡下方的K线或其他指标。
  • 如果不需要区分plot对象,也可以直接把两条线的变量传入fill(),比如fill(ma_short, ma_long, ...),但用plot对象的方式更清晰,尤其是当你有多个plot的时候。

进阶:根据条件切换填充颜色

如果想让填充色根据两条线的相对位置变化(比如短期均线上穿长期均线时用绿色,下穿时用红色),可以这样写:

// 定义两条线并绘制
ma_short = ta.sma(close, 50)
ma_long = ta.sma(close, 200)
plot_short = plot(ma_short, color=color.blue, title="50周期均线")
plot_long = plot(ma_long, color=color.red, title="200周期均线")

// 根据均线位置判断填充色
fill_color = ma_short > ma_long ? color.new(color.green, 80) : color.new(color.red, 80)

// 应用填充
fill(plot_short, plot_long, color=fill_color, title="带条件的区间填充")

其实这个fill()函数在TradingView的Pine Script文档里有详细说明,可能你之前搜索的关键词不够精准,试试搜“fill between two plots”就能快速找到啦~

内容的提问来源于stack exchange,提问作者Belkahla Mohamed Rachid

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 07:55:50