¿Dónde puedo descargar los datos históricos de capitalización de mercado y rotación diaria de acciones?

11

Hay muchas fuentes que proporcionan los datos de stock históricos, pero solo proporcionan los campos OHLC junto con el volumen y el cierre ajustado. También encontré un par de fuentes que proporcionan conjuntos de datos de capitalización de mercado, pero están restringidos a las acciones estadounidenses. Yahoo Finance proporciona esta información en línea, pero no hay ninguna opción para descargarla (o ninguna que conozca).

  • ¿Dónde puedo descargar estos datos para las acciones que pertenecen a las principales bolsas de valores de todos los países utilizando su nombre de teletipo?
  • ¿Hay alguna forma de descargarlo a través de Yahoo Finance o Google Finance?

Necesito datos de la última década más o menos y, por lo tanto, necesito algún script o API que haga esto.

tejaskhot
fuente

Respuestas:

3

En cuanto a la recopilación de datos, puede consultar Quandl (hay un tutorial sobre su uso con R en DataCamp si está interesado).

Además, el sitio de Aswath Damodaran contiene muchos conjuntos de datos útiles. Aunque no se actualizan con tanta frecuencia, aún pueden ser útiles, especialmente como un punto de referencia para comparar su propia salida (de los scripts inevitablemente necesitará escribir para calcular las métricas necesarias).

Y, de nuevo, Quant SE es probablemente un mejor lugar para buscar ...

Steve S
fuente
1

Este sitio enumera las capitalizaciones de mercado históricas y los valores empresariales para las compañías S&P 100 y NASDAQ-100 durante los últimos 10 años. Puede exportar los conjuntos de datos a Excel.

http://marketcapitalizations.com/historical-data/historical-data-categories/valuations/

También puede intentar contactarlos para obtener datos durante un período de tiempo más largo.

Marcus Torrez
fuente
¿Estás afiliado a este sitio por cierto?
Sean Owen
1

Lo haría de esta manera.

import requests
from bs4 import BeautifulSoup

base_url = 'https://finviz.com/screener.ashx?v=152&s=ta_topgainers&o=price&c=1,2,6,7,25,65,67'
html = requests.get(base_url)
soup = BeautifulSoup(html.content, "html.parser")
main_div = soup.find('div', attrs = {'id':'screener-content'})

light_rows = main_div.find_all('tr', class_="table-light-row-cp")
dark_rows = main_div.find_all('tr', class_="table-dark-row-cp")

data = []
for rows_set in (light_rows, dark_rows):
    for row in rows_set:
        row_data = []
        for cell in row.find_all('td'):
            val = cell.a.get_text()
            row_data.append(val)
        data.append(row_data)

#   sort rows to maintain original order
data.sort(key=lambda x: int(x[0]))

import pandas
pandas.DataFrame(data).to_csv("AAA.csv", header=False)
CENIZA
fuente