考虑为我自己建立一个免提网络应用程序,使用nodeJS,express和mongoose与历史和生活(不介意它的20分钟延迟)从雅虎金融应用程序接口。
当然,我更喜欢谷歌财经,但它在2012年10月左右被弃用。雅虎财经应用编程接口和论坛将其描述为C# friendly...is,有什么办法可以绕过它吗?
发布于 2012-11-10 06:41:23
我曾经写过一个node.js应用程序,用于查询和解析来自雅虎财经的数据。它工作得很好,而且很容易做到。我不确定你到底在问什么,但这里有一些注释:
首先,我尝试使用YQL (some info here),它可以返回JSON (这对于nodejs来说是最好的),但在我开始使用它后不久,该服务就停止了我的工作,因为我达到了配额。我不知道门槛是多少,但是每分钟请求一次1500个股票是可以理解的。因此,我不建议在这样的事情上使用它。
因此,我求助于向Yahoo的CSV服务请求数据,完全避免使用YQL (据我所知,YQL只是上述CSV服务之上的一层)。解析CSV数据非常简单,例如。如果你使用一个模块(我用的是ya-csv)。
以下是有关如何请求报价的信息:http://cliffngan.net/a/13
这里描述了如何查询历史时间序列(如图) http://code.google.com/p/yahoo-finance-managed/wiki/csvHistQuotesDownload
现在,既然您要拆分node.js,那么您可以考虑使用socket.io,因为它确实适合股票数据不断变化的特性。
最后,提醒一句:每天从凌晨4点到开盘,雅虎都会重置所有报价。即所有股票的价格变化为0.00 (或0%),尽管价格等与前一天的收盘价保持正确相同。我不确定他们为什么这么做,但这意味着,如果你正在做热图或基于% change的图表,那么在这些时间内,它不会绘制出非常有趣的图形。
哦,还有一点:我不确定你真的需要包括mongoose,或者任何DB。当然,这取决于您正在对数据做什么,但是如果您追求简单和低成本的开发和托管,请考虑这样一个事实:您可以将所有内容都存储在内存中。如果应用程序崩溃并重新启动,您只需重新请求所有报价即可。
https://stackoverflow.com/questions/13315228
复制相似问题