Подтвердить что ты не робот

JSON отформатированный API котировок акций (живой или исторический)

Я создаю веб-приложение RESTful для себя, и я заинтересован в бесплатной доставке данных в формате JSON. Я планирую использовать javascript для клиентской стороны. Есть ли бесплатный API-интерфейс, который я могу использовать, который не возвращает XML и не использует не С#.

EDIT: я нашел этот запрос JSON... выполнит ли это задание?

http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22YHOO%22%2C%22AAPL%22%2C%22GOOG%22%2C%22MSFT%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json
4b9b3361

Ответ 1

Конечно, если вы вернетесь и проанализируете JSON с помощью javascript, вы сможете сделать следующее и вытащить все, что захотите, из каждого возвращенного товара:

var callback = function(_return /* The json returned for yahooapis */) {
    var totalReturned = _return.query.count;
    //OR: var totalReturned = _return.query.results.quote.length;
    for (var i = 0; i < totalReturned; ++i) {
        var stock = _return.query.results.quote[i];
        var symbol = stock.symbol;
        var percent_change = stock.Change_PercentChange;
        var changeRealTime = stock.ChangeRealtime;
        ...
    }
}

-

var url = 'http://query.yahooapis.com/v1/public/yql';
var startDate = '2012-01-01';
var endDate = '2012-01-08';
var data = encodeURIComponent('select * from yahoo.finance.historicaldata where symbol in ("YHOO","AAPL","GOOG","MSFT") and startDate = "' + startDate + '" and endDate = "' + endDate + '"');
$.getJSON(url, 'q=' + data + "&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json", callback);

-

Демо-версия YQL

(Добавить и startDate = "" and endDate = "" в запрос с датами в формате yyyy-mm-dd, чтобы делать то, что вы хотите, также обязательно выберите JSON в качестве выходного формата)

-

Дополнительная информация из комментариев:

  • В приведенном выше примере запрос был для исторических данных из yahoo.finance.historicaldata, вы также можете запросить yahoo.finance.quotes для реального времени - отставание около 15 минут).
  • Если вы хотите, чтобы информация реального времени в реальном времени запрашивала веб-сервис: например. finance.yahoo.com/webservice/v1/symbols/YHOO/quote?format=json (добавьте &view=detail к этому запросу, если вы хотите получить более подробный вывод)

Ответ 2

Как разработчик программного обеспечения, я бы рекомендовал Alpha Vantage. Они предлагают в реальном времени и исторические котировки акций (ежедневно, еженедельно, ежемесячно и т.д.) Как API RESTful JSON.

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

Здесь приведен пример API-запроса для ежедневных цен и объемов MSFT, обогащенных с помощью настроек split/divend. Последняя точка данных - это информация в реальном времени для текущего торгового дня.

Они также предлагают API технического анализа поверх рыночных данных в соответствии с их документацией.