pine-script - 仅在交易视图中运行 pine 脚本一次
问题描述
我以前看过这个问题几次,但没有看到明确的答案。我只想运行一次 pine 脚本研究,即在我将脚本添加到图表时与最新的柱相关联。我不希望脚本在新条出现时继续运行。可以这样做吗?实际上,我希望我的脚本画一条线,然后在图表上出现新条时保持不变。
解决方案
您不能停止脚本本身运行,而是创建仅在第一个实时柱上运行一次的条件,然后在后续柱上不执行任何操作。
设置行后,您可以使用barstate.islast
var 声明的布尔变量来存储。
var plotted = false
var l1 = line.new(x1 = na, y1 = na, x2 = na, y2 = na, xloc = xloc.bar_index, extend = extend.right, color = color.red)
drawCondition = barstate.islast and plotted == false
if drawCondition
line.set_xy1(l1, x = bar_index, y = open)
line.set_xy2(l1, x = bar_index + 50, y = open)
plotted := true
历史柱drawCondition
将是假的,并且不会绘制线,因为barstate.islast
将返回假。在第一个barstate.islast
为 true 的柱上(即添加脚本时的当前实时柱),plotted
仍将为 false,因此满足条件,将绘制线并将其plotted
设置为true
。在任何后续的柱上,plotted
will 仍然是这样,即使will be也不会满足true
绘制线 ( ) 的条件,因此不会修改/重绘线。drawCondition == false
barstate.islast
true
推荐阅读
- git - git密码中的百分比(%)符号字符
- ios - “您的 Apple ID 未启用 iTunes Connect。” 对于新的付费开发者帐户
- html - 如何在 4x4 网格的中心绘制 y 轴和 x 轴线?
- reactjs - React JS 道具没有更新
- spring-boot - 我从 JSP 切换到 Thymeleaf,怎么了?
- android - maven-plugin public to maven 没有任何动作,但 publishToMavenLocal 有效
- c++ - 我是否需要为不分配资源的 C++ 类实现析构函数?
- node.js - 类型错误:chargee.hosted_page.checkout_one_time_for_items 不是函数
- api - 如何从 API 资源链接获取下一页
- amazon-web-services - 91% 的 EBS 存储已用于 AWS EC2 和深度学习 AMI 映像