STOCKHISTORY 函数检索有关金融工具的历史数据并将其作为数组加载,如果这是公式的最终结果,则会溢出。 这意味着,当按 ENTER 时,Excel 将动态创建相应大小的数组范围。
重要: STOCKHISTORY 函数需要 Microsoft 365 个人版、Microsoft 365 家庭版、Microsoft 365 商业标准版 或 Microsoft 365 商业高级版 订阅。
技术细节
语法
=STOCKHISTORY(stock, start_date, [end_date], [interval], [headers], [property0], [property1], [property2], [property3], [property4], [property5])
STOCKHISTORY 函数语法具有以下参数:
参数 |
说明 |
---|---|
stock |
函数将返回与此值对应的有关金融工具的历史价格数据。 在双引号中输入股票代码(例如“MSFT”)或对包含“股票”数据类型的单元格的引用。 这样将从工具的默认交易所中提取数据。 你也可以通过输入 4 个字符的 ISO 市场识别码 (MIC)、后接冒号及股票代码(例如“XNAS:MSFT”)来指向特定交易所。 了解有关数据源的详细信息。 |
start_date |
检索数据的最早日期。 请注意,如果 interval 不为 0(每天),则第一个数据点可能早于所提供的 tart_date - 它将是请求期间的第一个日期。 |
end_date |
可选。 将检索其数据的最晚日期。 默认值为 start_date。 |
interval |
可选。 指定每个数据值所表示的间隔,如下所示: 0 = 每天, 1 = 每周, 2 = 每月。默认值为 0。 |
headers |
可选。 指定是否显示标题,如下所示: 0 = 无标题, 1 = 显示标题, 2 = 示工具标识符和标题。默认值为 1(即显示标题)。 如果包含标题,则标题是从该函数返回的数组中的文本行。 |
property0 - property5 |
可选。 为每种股票检索的列如下: 0 = 日期, 1 = 收盘价, 2 = 开盘价, 3 = 最高价, 4 = 最低价, 5 = 成交量。如果存在以上任何列,则仅按提供的顺序返回指示的列。 默认值为 0,1(即“日期”和“收盘价”)。 |
备注
-
STOCKHISTORY 函数不会在溢出的单元格上标记格式。 如果删除公式,则其填充的单元格将具有“常规”格式。
-
输入属性参数时,可以按要查看的顺序为每个属性 0 到 5 键入一个数字。 为每个属性输入的值与属性编号相对应。 例如,要包括“日期”、“开盘价”和“收盘价”,请输入 0,2,1。 这些属性定义如下:
值
属性
定义
0
日期
如果间隔为每日或每周,则为该期间的第一个有效交易日。
如果间隔为每月,则为该月的第一天,而不考虑它是交易日。1
收盘价
期间内最后一个交易日的收盘价
2
打开
该期间第一个交易日的开盘价
3
最高价
该期间最高单日最高价
4
最低价
该期间最低单日最低价
5
成交量
该期间交易的股票数量
-
STOCKHISTORY 函数属于查找与引用系列的函数。
-
日期参数可以是用双引号引起来的日期(例如“01-01-2020”)或公式(例如 TODAY())或对包含日期的单元格的单元格引用。
-
返回的日期可能早于提供的日期。 例如,如果提供 2019 年 12 月 31 日作为开始日期,并且间隔是每月,则将返回2019 年 12 月 1 日,因为这是请求期间的开始日期。
-
请注意,虽然某些金融工具可能作为股票数据类型提供,但历史信息将不可用。 例如,包括 S&P 500 在内的大多数热门指数基金都是这种情况。
提示
-
如果要获得 3 个月期间的最高值,则使用每月间隔比使用每日或每周间隔更快。 例如,对于每个月的最高交易值,=MAX(STOCKHISTORY("XNAS:MSFT", "1/1/2022", "3/1/2022", 2, 0, 3)) 将计算 3 个数据点的最大值(每个月一个数据点,仅不带标头的数据)。 如果公式改用每周或每日间隔,则会获得相同的结果,但计算中会使用更多数据点,从而降低性能。
-
如果想要查看 52 周最高价或最低价,通常可以更快地使用具有这些属性的股票数据类型。 例如,将“xnas:msft”转换为单元格 A1 中的股票数据类型,在单元格 B1 中,可以编写公式 =A1.[52 week high] 来获取值。 还可以将工作簿配置为自动刷新此值,如下所述。
-
在显示历史数据的 STOCKHISTORY 中,通常仅在交易日完成后更新。 这意味着,在市场关闭或当天结束后(具体取决于市场)之前,不能使用 STOCKHISTORY 获取当前交易详细信息的数据。
-
如果将 STOCKHISTORY 与自动更新(如 TODAY)的函数一起使用,并且工作簿已启用自动计算,则当打开工作簿时,STOCKHISTORY 将自动刷新数据。 此更新将在后台进行,你可以在进行此更新时根据需要编辑工作簿。 如果工作簿使用大量 STOCKHISTORY 函数调用,则此后台更新将持续进行,直到所有数据更新完毕。 在此过程中,你可以根据需要随时关闭工作簿。