转至 Pine Script™ 版本4
@version=3
这是将 Pine Script™ 代码从 转换为 的
指南@version=4
。
转换器
Pine Editor 附带一个实用程序,可自动将 v3 指标和策略转换为 v4。要访问它,请打开其中的脚本
并在下拉菜单中//@version=3
选择选项
:Convert to v4
More
并非所有脚本都可以自动从 v3 转换为 v4。如果您想手动转换脚本,或者您的指标在转换后返回编译错误,请参阅以下指南以获取更多信息。
重命名内置常量、变量和函数
在 Pine Script™ v4 中,以下内置常量、变量和函数已重命名:
- 颜色常量(例如
red
)被移动到color.*
命名空间(例如color.red
)。 - 该
color
功能已重命名为color.new
。 - 类型的常量
input()
(例如integer
)被移动到input.*
命名空间(例如input.integer
)。 - 绘图样式常量(例如
histogram
style)被移动到plot.style_*
命名空间(例如plot.style_histogram
)。 - 函数的样式常量
hline
(例如dotted
style )被移至hline.style_*
命名空间(例如hline.style_dotted
)。 - 一周中各天的常量(例如
sunday
)被移至dayofweek.*
命名空间(例如dayofweek.sunday
)。 - 当前图表时间范围的变量(例如
period
,isintraday
)被移动到timeframe.*
命名空间(例如timeframe.period
,timeframe.isintraday
)。 - 该
interval
变量已重命名为timeframe.multiplier
。 ticker
和变量分别tickerid
重命名为syminfo.ticker
和syminfo.tickerid
。- 包含条形索引值的变量
n
已重命名为bar_index
。
重命名上述所有内容的原因是为了构建标准语言工具并使代码使用更加容易。新名称根据通用前缀下的分配进行分组。例如,如果您在编辑器中键入“color”并按 Ctrl + Space,您将看到一个包含所有可用颜色常量的列表。
显式变量类型声明
在 Pine Script™ v4 中,在声明变量时不再可能创建具有未知数据类型的变量。这样做是为了避免在使用 na 值初始化变量后变量类型发生变化时出现的许多问题。从现在开始,在使用 na 值float
声明变量时,您需要使用关键字或类型函数(例如)明确指定其类型:
//@version=4
study("Green Candle Close")
// We expect `src` to hold float values, so we declare in with the `float` keyword
float src = na
if close > open
src := close
plot(src)