第一个指标
Pine编辑器
Pine 编辑器是您编写脚本的地方。虽然您可以使用任何文本编辑器来编写 Pine 脚本,但使用我们的编辑器有许多优势:
- 它按照 Pine Script™ 语法突出显示您的代码。
- 当您将鼠标悬停在内置函数和库函数上时,它会弹出语法提醒。
- 当您在 Pine Script™ 关键字上按
ctrl
+click
/时,它可以快速访问 Pine Script™ v5 参考手册弹出窗口。cmd
- 它提供了自动完成功能,您可以使用
ctrl
+space
+ 激活space
。 - 它使得写入/编译/运行周期变得快速,因为保存图表上加载的脚本的新版本也会立即执行它。
- 虽然它的功能不如顶级编辑器那么丰富,但它提供了搜索和替换、多光标和版本控制等关键功能。
要打开编辑器,请点击 TradingView 图表底部的“Pine Editor”选项卡。这将打开编辑器窗格。
第一个版本
我们现在将创建第一个可用的 Pine 脚本,即 Pine Script™ 中MACD指标的实现 :
//@version=5
indicator("MACD #1")
fast = 12
slow = 26
fastMA = ta.ema(close, fast)
slowMA = ta.ema(close, slow)
macd = fastMA - slowMA
signal = ta.ema(macd, 9)
plot(macd, color = color.blue)
plot(signal, color = color.orange)
- 首先打开编辑器右上角的“打开”下拉菜单,然后选择“新建空白指示器”。
- 然后复制上面的示例脚本,注意不要在选择中包含行号。
- 选择编辑器中已有的所有代码并将其替换为示例脚本。
- 点击“保存”并为您的脚本选择一个名称。您的脚本现在已保存在 TradingView 的云中,但以您的账户名称命名。除了您之外,没有人可以使用它。
- 单击编辑器菜单栏中的“添加到图表”。MACD 指标将显示在图表下方的单独窗格中。
您的第一个 Pine 脚本正在图表上运行,它看起来应该像这样:
让我们逐行查看脚本的代码:
第 1 行://@version=5
第 2 行:indicator("MACD #1")
第 3 行:fast = 12
fast
整数变量,作为快速 EMA 的长度。
第 4 行:slow = 26
slow
整数变量,表示慢速 EMA 的长度。
第 5 行:fastMA = ta.ema(close, fast)
fastMA
,包含系列的 EMA(指数移动平均线)计算结果,长度等于
fast
(12),close
即条形的收盘价。
第 6 行:slowMA = ta.ema(close, slow)
slowMA
,包含 EMA 计算的结果,长度等于slow
(26),来自close
。
第 7 行:macd = fastMA - slowMA
macd
为两个 EMA 之间的差值。
第 8 行:signal = ta.ema(macd, 9)
signal
为使用 EMA 算法(指数移动平均线)的平滑值,macd
长度为 9。
第 9 行:plot(macd, color = color.blue)
plot
输出变量。macd
第 10 行:plot(signal, color = color.orange)
plot
输出变量。signal
第二版
我们的脚本的第一个版本“手动”计算了 MACD,但由于 Pine Script™ 旨在编写指标和策略,因此许多常见指标都具有内置的 Pine Script™ 函数,包括一个用于...MACD: ta.macd()。
这是我们的脚本的第二个版本:
//@version=5
indicator("MACD #2")
fastInput = input(12, "Fast length")
slowInput = input(26, "Slow length")
[macdLine, signalLine, histLine] = ta.macd(close, fastInput, slowInput, 9)
plot(macdLine, color = color.blue)
plot(signalLine, color = color.orange)
请注意,我们有:
- 添加输入以便我们可以更改 MA 的长度
- 我们现在使用 内置的ta.macd()来计算我们的 MACD,这节省了三行代码并使我们的代码更易于阅读。
让我们重复之前相同的过程,将该代码复制到新的指标中:
- 首先打开编辑器右上角的“打开”下拉菜单,然后选择“新建空白指示器”。
- 然后复制上面的示例脚本,再次注意不要在选择中包含行号。
- 选择编辑器中已有的所有代码,并将其替换为我们脚本的第二个版本。
- 单击“保存”并为脚本选择一个与之前不同的名称。
- 单击编辑器菜单栏中的“添加到图表”。 “MACD #2”指标出现在“MACD #1”指标下的单独窗格中。
您的第二个 Pine 脚本正在图表上运行。如果您双击图表上的指标名称,您将打开脚本的“设置/输入”选项卡,您现在可以在其中更改慢速和快速长度:
让我们看看我们的脚本的第二个版本中发生了变化的行:
第 2 行:indicator("MACD #2")
#1
,因此#2
我们的指标的第二个版本在图表上显示不同的名称。
第 3 行:fastInput = input(12, "Fast length")
12
将是默认值,字段的标签将是"Fast length"
。 如果在“输入”选项卡中更改值,则fastInput
变量的内容将包含新值,并且脚本将使用该新值在图表上重新执行。 请注意,正如我们的 Pine Script™
样式指南Input
所建议的那样,我们在变量名称的末尾
添加了,以提醒我们稍后在脚本中,它的值来自用户输入。
第 4 行:slowInput = input(26, "Slow length")
第 5 行:[macdLine, signalLine, histLine] = ta.macd(close, fastInput, slowInput, 9)
=
。请注意,我们传递给函数的两个值是包含快速和慢速长度的“输入”变量:fastInput
和slowInput
。
第 6 行和第 7 行:
我们的第二个版本执行与第一个版本相同的计算,但我们可以更改用于计算的两个长度。我们的代码也更简单,缩短了三行。我们改进了脚本。
下一个
我们现在建议您转到我们的 后续步骤页面。