从 Alpha Vantage 获取股票市场数据





5.00/5 (3投票s)
如何从 Alpha Vantage 下载股票市场数据。
首次发布于The Data Wrangler。
作为一名股票交易员,我需要随时可用的股票市场数据来进行分析和可视化。这些数据对于决策至关重要,我经常将其渲染成图表以更好地理解。
免费的雅虎金融API曾是获取股票市场数据的首选。然而,自其停用以来,Alpha Vantage推出了一个新的股票API。它同样免费且非常易于使用。Alpha Vantage提供日线和分时数据,我创建了一个开源的命令行应用程序来下载这些数据。您也可以参考这篇文章,其中描述了股票API的标准和最佳实践——例如,根据拆股和股息调整历史股票价格。
本文介绍了alpha-vantage-cli
。我将向您展示如何使用此工具下载股票市场数据。我将提供从命令行使用以及在Node.js JavaScript代码中将其作为API使用的示例。
以下是下载的CSV文件示例
目录
使用DocToc生成
获取Alpha Vantage API密钥
Alpha Vantage是免费的,但要使用它,您必须注册一个API密钥。请访问此链接进行注册。
后续示例使用的是“demo”API密钥,请注意,此密钥的使用次数非常有限。
使用命令行应用程序
您可以将alpha-vantage-cli
用作命令行应用程序,将股票市场数据下载到CSV文件中。
Node.js安装
首先,您需要安装Node.js。这很简单,请参阅Node.js网站了解更多详情。
安装命令行应用程序
安装Node.js后,您可以通过运行以下命令通过npm安装该工具:
> npm install -g alpha-vantage-cli
这会将该工具全局安装,以便您可以在任何目录中运行它。
您可以使用--version
参数检查其是否安装正确:
> alpha-vantage-cli --version
这应该会显示该工具的最新版本。还有一个--help
参数,可以帮助您了解该工具的选项。
> alpha-vantage-cli --help
从命令行获取股票市场数据
最简单的用法如下:
> alpha-vantage-cli --type=<data-type> --symbol=<code-for-the-instrument>
--api-key=<your-api-key>
以下示例下载微软的日线数据:
> alpha-vantage-cli --type=daily --symbol=MSFT --api-key=demo --out=MSFT-daily.csv
这会将数据下载到名为MSFT-daily.csv的文件中。有关日线数据外观的截图,请参见本文开头处的截图。
您也可以这样下载分时数据:
> alpha-vantage-cli --type=intraday --symbol=MSFT --api-key=demo --out=MSFT-intraday.csv
这会将数据下载到名为MSFT-intraday.csv的文件中。
分时数据看起来与日线数据相似
请注意日线数据和分时数据之间时间戳的差异。
还有其他各种选项,包括设置分时数据的间隔。请使用该工具的--help
参数了解详情。
使用代码模块
alpha-vantage-cli
也可以导入到Node.js脚本中,以便从代码中使用。
安装代码模块
要使用,请使用npm
在您的Node.js项目中本地安装,如下所示:
npm install --save alpha-vantage-cli
从代码获取股票市场数据
以下是JavaScript代码文件中的使用示例。别忘了将API密钥替换为您自己的!
var AlphaVantageAPI = require('alpha-vantage-cli').AlphaVantageAPI;
var yourApiKey = 'demo';
var alphaVantageAPI = new AlphaVantageAPI(yourApiKey, 'compact', true);
alphaVantageAPI.getDailyData('MSFT')
.then(dailyData => {
console.log("Daily data:");
console.log(dailyData);
})
.catch(err => {
console.error(err);
});
上面的示例代码获取日线数据。获取分时数据几乎相同,只需使用getIntradayData
函数即可。alpha-vantage-cli
也可以从TypeScript代码中使用,有关更多示例,请参阅Github页面。
获取源代码
alpha-vantage-cli
的源代码可在Github上获取:
需要支持?
您是否需要帮助入门alpha-vantage-cli
?您是否更愿意使用桌面应用程序而不是命令行工具?请成为The Data Wrangler的赞助者,我很乐意为您提供帮助。
它是如何工作的?
alpha-vantage-cli
使用request-promise从Alpha Vantage股票历史API下载数据。
手动下载数据相当容易。您可以尝试在浏览器中打开以下链接来自己操作:
该链接下载了微软的近期价格历史记录,格式为CSV文件。它使用的是Alpha Vantage的demo API密钥。要将其用于任何其他公司,您需要注册自己的API密钥。
alpha-vantage-cli
提供了一个简单的命令行工具和API作为REST API的接口。这允许您编写批处理文件来下载股票数据,或者如果您需要更复杂的功能,可以从Node.js脚本直接调用它。
结论
在这篇文章中,我介绍了alpha-vantage-cli
,这是我用于从Alpha Vantage下载股票数据的开源命令行工具和API。
您已经学会了如何获取股票数据,以便在自己的分析和可视化中使用,并支持您的股票交易决策。
资源
- Alpha Vantage: https://www.alphavantage.co/
alpha-vantage-cli
- npm: https://npmjs.net.cn/package/alpha-vantage-cli
- github: https://github.com/codecapers/alpha-vantage-cli
历史
- 2018年1月8日:初始版本