數據

如何在 Google Finance API 中查詢道瓊斯指數和標準普爾 500 指數的值?

  • April 21, 2021

道瓊斯和標準普爾 500 的查詢將導致錯誤:

  1. http://www.google.com/finance/historical?q=.INX&startdate=May+11%2c+2015&enddate=May+17%2c+2016&output=csv
  2. http://www.google.com/finance/historical?q=DJIA&startdate=May+11%2c+2015&enddate=May+17%2c+2016&output=csv

雖然對 Apple 的查詢會成功:

  1. http://www.google.com/finance/historical?q=AAPL&startdate=May+11%2c+2015&enddate=May+17%2c+2016&output=csv

這不是您想听到的,但大多數免費網站都存在許可問題,並且顯示的 S&P 和 DJI 下載連結有限或沒有。我建議您改用 quantdl 或 stooq。

以下是一些 stooq 下載連結:

大疆:

https://stooq.com/q/d/l/?s=^dji&i=d

標準普爾:

https://stooq.com/q/d/l/?s=^spx&i=d

但是,您確實需要在使用數據之前對其進行清理。標準普爾的數據一直追溯到 1789 年,而 DJI 可以追溯到 1896 年,所以我什至不知道這是否可能……我不會相信任何網站上 1960 年之前的任何數據。

wsj 網站可讓您下載 DJI 的 csv 數據。如果您稍微玩一下,您可以找出 url 查詢來開始下載。您可以使用 Powershell 使下載程序化(注意:此腳本還使用雅虎財務目前可用的 csv 下載方法訪問股票報價)(注意:雅虎查詢的程式碼記錄在此處:http://www. canbike.org/information-technology/yahoo-finance-url-download-to-a-csv-file.html

#script follows

cls

Function Get-LastFriday
{

   $djiDate = [DateTime]::Now

   while ($djiDate.DayOfWeek -ne "Friday")
   {

       $djiDate= [DateTime]::Now.AddDays(-1)


   }

   return $djiDate
}

#prototype: quotes.wsj.com/index/DJIA/historical-prices/download?MOD_VIEW=page&num_rows=1&range_days=1&startDate=08/20/2016&endDate=08/20/2016

$djiDate = Get-LastFriday

$startDate = $endDate = ([String]$djiDate.Month) + "/" +  ([String]$djiDate.Day) + "/" + ([String]$djiDate.Year) 
$uri = "quotes.wsj.com/index/DJIA/historical-prices/download?MOD_VIEW=page&num_rows=1&range_"+$startDate+"&endDate="+$endDate

Invoke-WebRequest -Uri $uri -OutFile "C:\Users\xxxx\Desktop\dji.csv"
Import-Csv -Header Date, Open, High, Low, Close -LiteralPath "C:\Users\bill\Desktop\dji.csv" | Out-GridView

Invoke-WebRequest -Uri "http://download.finance.yahoo.com/d/quotes.csv?s=^DJI,VWIAX,VMMXX,VWELX,DODGX&f=nsl1d1t1p&e=.csv" -OutFile "C:\Users\xxxx\Desktop\q.csv"
Import-Csv -Header Name, Symbol, 'Last Trade', 'Trade Date', 'Last Trade Time', p -LiteralPath "C:\Users\bill\Desktop\q.csv" | Out-GridView

引用自:https://quant.stackexchange.com/questions/26078