The information provided is of general nature only and does not take into account your personal objectives, financial situations or needs. Before acting on any information provided, you should consider whether the information is suitable for you and your personal circumstances and if necessary, seek appropriate professional advice. All opinions, conclusions, forecasts or recommendations are reasonably held at the time of compilation but are subject to change without notice. Past performance is not an indication of future performance. Go Markets Pty Ltd, ABN 85 081 864 039, AFSL 254963 is a CFD issuer, and trading carries significant risks and is not suitable for everyone. You do not own or have any interest in the rights to the underlying assets. You should consider the appropriateness by reviewing our TMD, FSG, PDS and other CFD legal documents to ensure you understand the risks before you invest in CFDs. These documents are available here.
免责声明:文章来自 GO Markets 分析师和参与者,基于他们的独立分析或个人经验。表达的观点、意见或交易风格仅代表作者个人,不代表 GO Markets 立场。建议,(如有),具有“普遍”性,并非基于您的个人目标、财务状况或需求。在根据建议采取行动之前,请考虑该建议(如有)对您的目标、财务状况和需求的适用程度。如果建议与购买特定金融产品有关,您应该在做出任何决定之前了解并考虑该产品的产品披露声明 (PDS) 和金融服务指南 (FSG)。
当用户将一个 Pine 脚本添加到图表中时,脚本会在一个等同于“大循环”的环境中运行:它会在可用数据中的每一根历史 K 线以及每一个实时 tick 上各执行一次代码。脚本可以通过历史引用运算符(history-referencing operator)访问之前 K 线上的执行结果;而通过使用 var 或 varip 关键字声明的变量,其计算结果可以在多次执行之间保持不变。这些特性使脚本能够通过逐 K 线(bar-by-bar)的计算来完成各种任务,而无需依赖显式的循环。
接下来进入For循环,首先判断过去某根 K 线的最高价 > 当前(最后历史)K 线的最高价,如果高于,则紫色圆形标签自动绘制在 K 线柱的上方。
最后一行代码,使用三元运算符判断给最后一根历史 K 线上色高亮。如果是最后一根历史 K 线,则为橙色,否则不改变颜色。
可以看到,当我们将长度参数设置为 60 后,图表中会在最高价高于当前 K 线最高价的历史 K 线上方显示紫色圆点,同时还会绘制一条表示当前 K 线最高价的水平虚线,用于直观地标示该参考价位。
综上所述,本文通过示例对比说明了 Pine Script 中“不必要循环”和“必须使用循环”的典型场景。合理理解 Pine 的执行模型,优先使用内置函数,可以提升脚本的简洁性与性能;而在需要基于当前 K 线回溯并分析历史数据时,循环则不可或缺。掌握循环的正确使用方式,有助于编写更高效、清晰且功能强大的 Pine Script 脚本。
当用户将一个 Pine 脚本添加到图表中时,脚本会在一个等同于“大循环”的环境中运行:它会在可用数据中的每一根历史 K 线以及每一个实时 tick 上各执行一次代码。脚本可以通过历史引用运算符(history-referencing operator)访问之前 K 线上的执行结果;而通过使用 var 或 varip 关键字声明的变量,其计算结果可以在多次执行之间保持不变。这些特性使脚本能够通过逐 K 线(bar-by-bar)的计算来完成各种任务,而无需依赖显式的循环。
接下来进入For循环,首先判断过去某根 K 线的最高价 > 当前(最后历史)K 线的最高价,如果高于,则紫色圆形标签自动绘制在 K 线柱的上方。
最后一行代码,使用三元运算符判断给最后一根历史 K 线上色高亮。如果是最后一根历史 K 线,则为橙色,否则不改变颜色。
可以看到,当我们将长度参数设置为 60 后,图表中会在最高价高于当前 K 线最高价的历史 K 线上方显示紫色圆点,同时还会绘制一条表示当前 K 线最高价的水平虚线,用于直观地标示该参考价位。
综上所述,本文通过示例对比说明了 Pine Script 中“不必要循环”和“必须使用循环”的典型场景。合理理解 Pine 的执行模型,优先使用内置函数,可以提升脚本的简洁性与性能;而在需要基于当前 K 线回溯并分析历史数据时,循环则不可或缺。掌握循环的正确使用方式,有助于编写更高效、清晰且功能强大的 Pine Script 脚本。