访问过去不可见的日期高点/低点

问题描述 投票:0回答:1

我正在尝试编写一个脚本来从过去的高点绘制水平线。例如,假设我想在过去 5 个月的第一个星期一的高点上画一条水平线。另外,希望当时不必在图表上查看所有这些月份。

我目前有一系列可以迭代的日子,但查看文档,似乎没有办法获取过去特定日期的证券的最高/最低价。

在版本 5(我使用过的唯一版本)中,使用 request.security 不能在循环中工作,即使可以,它似乎也不允许在给定时间戳上获得高安全性,而只能在蜡烛点上获得高安全性.

这似乎是一件非常简单的事情,但文档没有向我展示任何类似于我需要的东西。

我觉得我可能做错了。 Pine script 是一种有趣的基于时间的语言,我还不熟悉。有什么想法吗?

pine-script pine-script-v5
1个回答
0
投票

pine 脚本如何工作?

当 Pine 脚本加载到图表上时,它会使用每个柱的可用 OHLCV(开盘价、最高价、最低价、收盘价、交易量)值在每个历史柱上执行一次

来源

这意味着如果您想获得“过去”的高点,您必须将当前的高点标记为符合您未来的标准。只将其视为实时工作,就好像您在过去 n 个月中连续这样做一样。然后您将在最新的栏上立即收到所有测试结果。

以下示例将在最新的执行时在每个柱上运行,并在周一高值上绘制水平线,从而产生您期望的结果。

...

mHigh = ta.highest(high, timeframe.in_seconds("1D") / timeframe.in_seconds())[1] // one possibility to get high for monday
if timeframe.change("1D") and dayofweek == dayofweek.tuesday
    line.new(bar_index - 1, mHigh, bar_index, mHigh, extend = extend.right) // HINT: hline() won't work
...
© www.soinside.com 2019 - 2024. All rights reserved.