如何识别并修正PineScript脚本中的行续接语法错误?
Pine Script v5 解决「Mismatched input 'end of line without line continuation'」语法错误
你的脚本报错核心原因是Pine Script v5的箭头函数语法要求:当函数包含多行执行语句时,必须用大括号{}包裹代码块。原代码中labelCandle函数直接在=>后换行编写label.new的多行参数,没有用大括号包裹,导致解析器无法识别行续接逻辑,触发语法错误。
修复后的完整代码:
//@version=5 indicator("Candle Labeler", overlay=true) // Inputs var label_start_index = input.int(1, title="Start Label From Candle Index", minval=1) var int label_range = input.int(10, title="Number of Candles to Label", minval=1) var color label_color = input.color(color.white, title="Label Color") var int label_font_size = input.int(10, title="Font Size", minval=8, maxval=50) // Function to create a label labelCandle(index) => { label.new( x=index, y=low[index], text=tostring(index), color=color.new(label_color, 0), textcolor=label_color, size=size.small, style=label.style_label_down, textalign=text.align_center, text_size=label_font_size ) } // Loop through candles and add labels for i = label_start_index to (label_start_index + label_range - 1) labelCandle(i)
关键修改点
- 在
labelCandle(index) =>后添加{},将label.new的调用逻辑包裹为函数代码块 - 保持参数换行格式,保证代码可读性
内容的提问来源于stack exchange,提问作者God
相关产品推荐
相关产品推荐

