如何从Pinescript数组/线型调用历史序列值并获取预测高低点
在策略脚本中调用外部指标的预测区间数值
首先得明确:TradingView的指标代码是封装的,外部策略脚本根本没法直接访问它的内部变量——这就是你引用变量名失败的原因。你得用官方提供的指标调用方法,获取它公开输出的数值。
具体操作步骤
先扒出指标的公开输出项
打开目标指标页面,点击源代码按钮查看代码。找里面用plot()或者output()定义的内容,比如如果指标里写了:plot(upperBand, title="Upper Prediction", color=color.green) plot(lowerBand, title="Lower Prediction", color=color.red)那
upperBand和lowerBand就是它公开出来的、能被外部调用的系列值,记好这两个变量名。在你的策略脚本里调用指标
用request.security()函数拉取这些数值,示例代码如下:// 替换成目标指标的ID(即你提供的链接中的Y8v4W3mX) targetIndicatorID = "Y8v4W3mX" // 获取当前周期的预测区间高点和低点 upperPrediction = request.security(targetIndicatorID, timeframe.period, upperBand) lowerPrediction = request.security(targetIndicatorID, timeframe.period, lowerBand)注意:变量名必须和指标里的完全一致,大小写都不能错。
验证调用是否成功
可以在策略里把拉取到的数值画出来,和原指标的线对比确认:plot(upperPrediction, color=color.blue, title="Fetched Upper Band") plot(lowerPrediction, color=color.orange, title="Fetched Lower Band")
特殊情况处理
如果指标只画了line但没通过plot()输出数值,那你只能把指标的核心计算逻辑复制到自己的策略脚本里——毕竟没公开的内部变量,外部根本拿不到。
内容的提问来源于stack exchange,提问作者Jandev9
相关产品推荐
相关产品推荐

