Google 财经获取最高价和最低价的日期

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

我正在尝试使用以下公式获取过去 11 天的最高/最低价的日期

=TO_DATE(INDEX(SORT(GOOGLEFINANCE("nse:BAJFINANCE", "high", today()-11,today(),"DAILY"), 2, 0), 2,1))

=(TO_DATE(INDEX(SORT(GOOGLEFINANCE("nse:BAJFINANCE", "low", TODAY()-11,TODAY(),"DAILY"), 2, 0), 2,1)))
两者的获取时间均为 8/13/2022,而正确日期为 09/14/2022(高)和 9/7/2022(低)。

我究竟错在哪里?

google-finance
2个回答
0
投票

如果我看到 Google Finance 语法,我会发现开始日期应该早于结束日期:

GOOGLEFINANCE(ticker, [attribute], [start_date], [end_date|num_days], [interval])

请参阅:https://support.google.com/docs/answer/3093281?hl=en

尝试这样:(注意

today()-11
的顺序)

=TO_DATE(INDEX(SORT(GOOGLEFINANCE("nse:BAJFINANCE", "high", today()-11,today(),"DAILY"), 2, 0), 2,1))

另外,请注意,Google 财经可能不会向您显示 NSE 的实际收盘价,而是前一天的收盘价: 传入 GOOGLEFINANCE 的日期被视为中午 UTC 时间。在此时间之前关闭的交易所可能会推迟一天。

编辑:

您的 SORT 和 INDEX 参数需要更改才能获得正确的结果。使用以下内容:

低:

=(TO_DATE(INDEX(SORT(GOOGLEFINANCE("nse:BAJFINANCE", "low", TODAY()-11,TODAY(),"DAILY"), 2, 1), 1,1)))

高:

=(TO_DATE(INDEX(SORT(GOOGLEFINANCE("nse:BAJFINANCE", "high", TODAY()-11,TODAY(),"DAILY"), 2, 0), 2,1)))

0
投票

将此用于低日期:

=IF(TO_DATE(INDEX(SORT(GOOGLEFINANCE("NSE:BAJFINANCE", "低", TODAY()-11,TODAY(),"每日"), 2, 1), 1,2))=0, TO_DATE(INDEX(SORT(GOOGLEFINANCE("NSE:BAJFINANCE", "低", TODAY()-11,TODAY(),"每日"), 2, 1), 2,1)),TO_DATE(INDEX(SORT( GOOGLEFINANCE("NSE:BAJFINANCE", "低", TODAY()-11,TODAY(),"每日"), 2, 1), 1,1)))

© www.soinside.com 2019 - 2024. All rights reserved.