【发布时间】:2018-04-30 05:47:47
【问题描述】:
正如标题所说,我正在寻找股票信息的替代来源,因为雅虎已经禁用了许多人一直在使用的 API。我一直在寻找的新来源在这里找到:https://iextrading.com/developer/
我的问题是如何将数据实际输入 Excel...我正在考虑通过 VBA,因为这是我用来从 Yahoo 获取数据的方法。但是,我认为我想做的远远超出了我目前的能力......我还尝试使用 Excel 的 WEBSERVICE() 函数和以下 URL 来简单地查看价格:https://api.iextrading.com/1.0/stock/aapl/price 但那不起作用。据我了解,IEX 向我们免费提供了大量数据,我只是不知道如何访问它。我对 VBA 的推理是,我能够将工作簿中的输入列表用于股票行情,并且能够将此数据访问权限放入许多工作簿中。任何帮助深表感谢。此外,任何关于我可以从哪里开始自己学习的方向都同样受到欢迎。谢谢。
更新:我的评论中提到的代码
Function StockPrice(ticker As String, item As String) As Double
Dim strURL As String, strCSV As Double, itemFound As Integer, tag As String
itemFound = 0
If item = "lastprice" Then
tag = "price"
itemFound = 1
ElseIf item = "pe" Then
tag = "peRatio"
itemFound = 1
End If
If itemFound = 1 Then
strURL = "https://api.iextrading.com/1.0/stock/" & ticker & "/" & tag
Set XMLHTTP = CreateObject("MSXML2.XMLHTTP")
XMLHTTP.Open "GET", strURL, False
XMLHTTP.send
StockPrice = XMLHTTP.responseText
Set XMLHTTP = Nothing
Else
StockPrice = "Item Not Found"
End If
End Function
【问题讨论】:
-
更新:尝试了以下代码(在问题部分,因为它对于评论来说太长了)并且它适用于价格,但不适用于市盈率或除“报价”之外的任何其他参数。知道为什么吗?
标签: excel api stockquotes elixir-iex vba