如何在Google Sheet上获得SP500,Nasdaq,VIX,恒生实时未来报价?

时间:2017-09-18 08:20:22

标签: api google-apps-script google-sheets google-finance stockquotes

背景:我需要实时报价SP 500,纳斯达克,VIX&恒生指数(现货月)显示在我的googlesheet上,因为googlefinance不提供期货报价,我试图写一些脚本将它们导入我的google表格;具体来说,通过组合importthtml函数(来自invest.com的数据 - 在地址后面添加的随机查询字符串)和触发器函数(每15分钟)自动刷新importthtml函数。 (我在编程方面的背景几乎为零,多亏了Stackoverflow的丰富资源,我学会了编写一些非常基本的脚本函数)。

问题是这些功能只在当天的一半时间工作,当它们不工作时,importhtml脚本只是不会返回未来的报价数据(我知道谷歌服务器端有多少数据限制他们会在任何给定时间同时处理)。我尝试将触发频率从15分钟调低到30分钟甚至1小时,结果几乎相同,最终失败了一半的时间。

我还试图查看Quandl和其他一些金融数据提供商网站,但我未能找到任何我需要的未来报价的免费实时数据,对于上述情况,我将不胜感激如果有人愿意建议解决方案。

我是stackoverflow的新手,并不完全熟悉它的文化,如果我没有为我的问题提供足够的信息或者用不合适的标签发布问题我提前道歉,请告诉我,我很乐意提供任何更多细节。

以下是我使用的代码示例(总共有4个独立脚本项目包含4个相似的函数,我为每个脚本添加了触发器,以便在15分钟的间隔内激活相应的函数): / p>

function AutoSP() {
    var queryString = Math.random();
    var cellFunction = '=IMPORTHTML("https://m.investing.com/indices/us-spx-500-futures-historical-data?' + queryString + '","table",0)';
    var ss = SpreadsheetApp.openById("spreadsheetid");
    Logger.log(ss.getName());
    var mysheet = ss.getSheetByName('importedlink').getRange('A1').setValue(cellFunction);
}

感谢您的帮助和时间,感谢它!

0 个答案:

没有答案