Pine script 获取不能调用';绘图';尝试在Tradingview下划一条线时使用参数

Pine script 获取不能调用';绘图';尝试在Tradingview下划一条线时使用参数,pine-script,Pine Script,我正在使用Tradingview Pinescript 4.0 我的目标是创建一条改变颜色的线(基于输入值)。如果选择“short”,它将打印一条长度为20条的红线。如果选择“long”,则该条将为绿色 我试过下面的代码 x_color = color.yellow x_transp = 100.0 if enter_long x_color := color.teal x_transp := 0 if enter_short x_color :

我正在使用Tradingview Pinescript 4.0

我的目标是创建一条改变颜色的线(基于输入值)。如果选择“short”,它将打印一条长度为20条的红线。如果选择“long”,则该条将为绿色

我试过下面的代码

x_color     = color.yellow
x_transp    = 100.0

if enter_long 
    x_color  := color.teal
    x_transp := 0

if enter_short 
    x_color  := color.red
    x_transp := 0
绘图(输入级,颜色=x颜色,传输=x传输,线宽=2,标题=“起始级”)

但我得到以下错误消息:

第146行:无法使用参数调用“绘图”(输入整数, 颜色=系列[color],传输=系列[float],线宽=文字整数, 标题=文字字符串);可用重载:绘图(系列[float],常量 字符串,系列[颜色],输入整数,输入整数,输入布尔,输入 整数,输入浮点,系列[整数],输入布尔,系列[浮点], 常量布尔,输入整数,常量整数,字符串)=>绘图; 绘图(,常量字符串,输入整数, 输入整数,输入布尔,输入整数,输入浮点, 系列[integer],输入布尔,系列[float],常量布尔,输入整数, 常量整数,字符串)=>绘图


transp
参数不允许使用series。您可以使用变通方法

x_color     = color.new(color.yellow, 100)
//x_transp    = 100.0

if enter_long 
    x_color  := color.new(color.teal, 0)
    //x_transp := 0

if enter_short 
    x_color  := color.new(color.red, 0)
    //x_transp := 0

plot(i_entry_level, color=x_color, linewidth=2, title="Start Level")

谢谢-这就成功了:)