Я работаю над сайтом, которому нужна страница для каждой акции на фондовой бирже. Я искал API, такие как Yahoo Finance API, но все они требуют, чтобы вы указали имя акции. Я могу использовать это позже в приложении, но мне нужно попытаться получить основной список акций и создать из него динамические страницы. Мне также нужен API-интерфейс биржевой диаграммы, который я также не могу найти. К сожалению, у меня нет денег, чтобы оплатить ежемесячный платеж или пожизненный платеж в размере 1000 долларов, как у Highstock. Спасибо за вашу помощь.
Есть ли какой-нибудь гем API или Rails, который может вывести основной список всех акций?
Ответы (3)
Я использую готовый список тикеров Yahoo, предоставленный Самиром Ханом здесь: http://investexcel.net/all-yahoo-finance-stock-tickers/ Самир собирает его, используя алгоритм перебора, который строит случайные комбинации символов и проверяет каждую на наличие ответа Yahoo
Это действительно относится к softwarerecs.stackexchange.com, но чтобы ответить на ваш вопрос,
в качестве общего практического правила для себя, когда у меня нет доступного API, я смотрю, существуют ли данные в машинно-разборном формате (CSV, JSON, XML, если мне действительно не повезло, и т. д.. ).
Например, недавно мне понадобилась база геокодирования, но я не смог найти сервис, который удовлетворил бы мои потребности и по скорости, и по цене, поэтому я скачал 200 000+ городов и написал свой сервис, который делает именно то, что мне нужно.
И если вы действительно круты, вы сделаете его с открытым исходным кодом/открытым API, как это сделал я - GeocodeForFree.com
Вот ссылка на скачивание всех акций индекса NASDAQ в формате CSV, думаю отсюда вы знаете что делать
http://www.nasdaq.com/screening/companies-by-industry.aspx?exchange=NASDAQ
Удачи!
Вы также можете использовать Stocks.js. Он предоставляет простой API для получения котировок акций практически любой компании. Он также предоставляет некоторые технические индикаторы и показатели сектора. Пример использования:
// Let's get the stock data of Tesla Inc. for the last 10 minutes
var result = await stocks.timeSeries({
symbol: 'TSLA',
interval: '1min',
amount: 10
});
Это совершенно бесплатно, вам нужно только запросить ключ API, что занимает 1 минуту.