Как получить котировки акций с помощью Google Finance API?

Я'ищу доступ к финансовым данным из сервисов Google.

Я нашел этот URL, который получает данные по акциям Microsoft.

Какие все возможные параметры Google позволяет использовать для такого HTTP-запроса? Я хотел бы увидеть всю различную информацию, которую я мог бы получить.

Комментарии к вопросу (8)
Решение

Существует целый API для управления портфелями. *Ссылка удалена. Google больше не предоставляет API для разработчиков.

Получить котировки акций немного сложнее. Я нашел одну статью, в которой кто-то получил котировки акций с помощью Google Spreadsheets.

Вы также можете использовать гаджеты, но я думаю, что это не то, что вам нужно.

API, о котором вы упоминаете, интересен, но, похоже, не документирован (насколько мне удалось найти).

Вот некоторая информация по историческим ценам, просто для справки.

Комментарии (3)

Я нашел этот сайт полезным.

http://benjisimon.blogspot.com/2009/01/truly-simple-stock-api.html

Это ссылка на API, который предлагает yahoo, очень простой и полезный.

Например:

http://finance.yahoo.com/d/quotes.csv?s=GOOG+AAPL&f=snl1

Полная информация здесь:

http://www.gummy-stuff.org/Yahoo-data.htm

Комментарии (1)

Редактировать: вызов api был удален компанией google. поэтому он больше не работает.

Согласен с ответом Парешкумара. Теперь существует обертка googlefinance для url-вызова на языке python.

Установите googlefinance

$pip install googlefinance

С его помощью легко получить текущую цену акций:

>>> from googlefinance import getQuotes
>>> import json
>>> print json.dumps(getQuotes('AAPL'), indent=2)
[
  {
    "Index": "NASDAQ", 
    "LastTradeWithCurrency": "129.09", 
    "LastTradeDateTime": "2015-03-02T16:04:29Z", 
    "LastTradePrice": "129.09", 
    "Yield": "1.46", 
    "LastTradeTime": "4:04PM EST", 
    "LastTradeDateTimeLong": "Mar 2, 4:04PM EST", 
    "Dividend": "0.47", 
    "StockSymbol": "AAPL", 
    "ID": "22144"
  }
]

Google finance - это источник, предоставляющий данные о ценах на акции в реальном времени. Есть и другие API от yahoo, например yahoo-finance, но они работают с задержкой в 15 минут для акций NYSE и NASDAQ.

Комментарии (1)

Проблема с данными Yahoo и Google заключается в том, что они нарушают условия обслуживания, если вы используете их в коммерческих целях. Когда ваш сайт/приложение еще маленький, это не страшно, но как только вы немного разрастетесь, вы начнете получать от бирж отказ и запрет. Примером лицензированного решения может служить FinancialContent: http://www.financialcontent.com/json.php. или (Xignite)[http://www.xignite.com].

Комментарии (0)

Возможно, интерес представляет документация Google Finance API, включающая раздел с подробным описанием того, как получить доступ к различным параметрам через JavaScript.

Я полагаю, что JavaScript API может быть оберткой для JSON-запроса, о котором вы упомянули выше... возможно, вы можете проверить, какие HTTP-запросы отправляются.

Комментарии (1)

Опираясь на плечи гигантов... вот однострочная фраза, которую я написал, чтобы перенести все данные о текущих акциях Google в локальные переменные оболочки Bash:


stock=$1 

# Fetch from Google Finance API, put into local variables
eval $(curl -s "http://www.google.com/ig/api?stock=$stock"|sed 's/
Комментарии (3)

Это больше не активный API у google, вы можете попробовать Xignite, хотя они взимают плату: http://www.xignite.com.

Комментарии (1)

Самый простой способ, как вы объяснили, это ссылка это для 'Dow Jones Industrial Average'

ссылка 2 - для 'NASDAQ-100'

и для всего, что связано с NASDAQ ссылка 3.

Я думаю, что это должно быть все, в противном случае вы хотите то же самое в нотации JSON, как у Microsoft.

Пожалуйста, обратитесь к этому старое сообщение Я думаю, это поможет,

Обновление:

Чтобы узнать детали тома и другие детали, Я создал vbscript, который использует объект IE для получения деталей из ссылки, и оповещает о содержимом в определенном id(Создайте файл .vbs и запустите его...

Set IE = CreateObject("InternetExplorer.Application")
while IE.readyState = 4: WScript.Sleep 10: wend
IE.Navigate "https://www.google.com/finance?q=INDEXNASDAQ%3ANDX&sq=NASDAQ&sp=2&ei=B3UoUsiIH5DIlgPEsQE"
IE.visible = true
while IE.readyState = 4: WScript.Sleep 10: wend
dim ht
ht= IE.document.getElementById("market-data-div").innerText
msgBox ht
IE.quit

это приведет к оповещению значений со страницы вот так

3,124.54 0.00 (0.00%)
Sep 4 - Close
INDEXNASDAQ real-time data - Disclaimer
Range       -
52 week 2,494.38 - 3,149.24
Open        -
Vol.    0.00

Я уверен, что это поможет...

Комментарии (10)

Вот пример, который вы можете использовать. У меня еще нет Google Finance, но вот пример Yahoo. Вам понадобится HTMLAgilityPack, который просто замечателен. Счастливой охоты за символами.

Вызовите процедуру, используя YahooStockRequest(string Symbols);.

Где Symbols = строка символов через запятую или просто один символ

public string YahooStockRequest(string Symbols,bool UseYahoo=true)
        {
            {
                string StockQuoteUrl = string.Empty;

                try
                {
                    // Use Yahoo finance service to download stock data from Yahoo
                    if (UseYahoo)
                    {
                        string YahooSymbolString = Symbols.Replace(",","+");
                        StockQuoteUrl = @"http://finance.yahoo.com/q?s=" + YahooSymbolString + "&ql=1";
                    }
                    else
                    {
                        //Going to Put Google Finance here when I Figure it out.
                    }

                    // Initialize a new WebRequest.
                    HttpWebRequest webreq = (HttpWebRequest)WebRequest.Create(StockQuoteUrl);
                    // Get the response from the Internet resource.
                    HttpWebResponse webresp = (HttpWebResponse)webreq.GetResponse();
                    // Read the body of the response from the server.

                    HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
                    string pageSource;
                    using (StreamReader sr = new StreamReader(webresp.GetResponseStream()))
                    {
                        pageSource = sr.ReadToEnd();
                    }
                    doc.LoadHtml(pageSource.ToString());
                    if (UseYahoo)
                    {
                        string Results=string.Empty;
                        //loop through each Symbol that you provided with a "," delimiter
                        foreach (string SplitSymbol in Symbols.Split(new char[] { ',' }))
                        {
                            Results+=SplitSymbol + " : " + doc.GetElementbyId("yfs_l10_" + SplitSymbol).InnerText + Environment.NewLine;
                        }
                        return (Results);
                    }
                    else
                    {
                        return (doc.GetElementbyId("ref_14135_l").InnerText);
                    }

                }
                catch (WebException Webex)
                {
                    return("SYSTEM ERROR DOWNLOADING SYMBOL: " + Webex.ToString());

                }

            }
        }
Комментарии (0)

Попробуйте с этим: http://finance.google.com/finance/info?client=ig&q=NASDAQ:GOOGL

Это вернет вам всю доступную информацию об упомянутой акции.

Например, аут пут будет выглядеть следующим образом:

// [ {
"id": "694653"
,"t" : "GOOGL"
,"e" : "NASDAQ"
,"l" : "528.08"
,"l_fix" : "528.08"
,"l_cur" : "528.08"
,"s": "0"
,"ltt":"4:00PM EST"
,"lt" : "Dec 5, 4:00PM EST"
,"lt_dts" : "2014-12-05T16:00:14Z"
,"c" : "-14.50"
,"c_fix" : "-14.50"
,"cp" : "-2.67"
,"cp_fix" : "-2.67"
,"ccol" : "chr"
,"pcls_fix" : "542.58"
}
]

Вы можете указать в конце этого URL символ акции вашей компании, чтобы получить подробную информацию о ней:

http://finance.google.com/finance/info?client=ig&q=
Комментарии (1)

В Google котировки акций API имеет делись. Однако, инвестор'обмен предлагает API, что's очень легко использовать для сведения цитата.

Комментарии (0)

Для того чтобы найти данные графиков с помощью API финансовых данных Google, нужно просто зайти в Google, как при поиске поискового запроса, ввести в поисковую систему finance, и появится ссылка на Google finance. Находясь в поисковой системе Google finance, введите название тикера в API финансовых данных, и результат будет выведен на экран. Однако следует отметить, что все графики Google finance задерживаются на 15 минут, и в лучшем случае их можно использовать для лучшего понимания прошлой истории тикера, а не его текущей цены.

Решением проблемы задержки информации о графиках является получение API финансовых данных в реальном времени. Примером может служить интерфейс barchartondemand, который содержит информацию о котировках в реальном времени, а также другие подробные функции, упрощающие поиск нужного графика. Благодаря полностью настраиваемым функциям и специальным инструментам программирования для получения точной торговой информации, которая вам нужна, инструменты barchartondemand значительно превосходят Google finance.

Комментарии (1)