Saltar al contenido principal

Descripción general

El Kit de desarrollo de software (SDK) de Benzinga para Python proporciona acceso exhaustivo a los datos financieros y a las APIs de noticias de Benzinga para análisis cuantitativo e inteligencia de mercado. El SDK ofrece dos módulos principales, uno para datos financieros y otro para datos de noticias, lo que permite a los desarrolladores crear aplicaciones financieras avanzadas.

Instalación

Instala el SDK con pip mediante SSH:
pip install git+ssh://[email protected]/Benzinga/benzinga-python-client.git

Autenticación

Todas las clases del SDK requieren una clave de API para autenticarse. Para obtener una clave de API, visite cloud.benzinga.com.

Módulos

El SDK se compone de dos módulos principales:
  • Financial Data - Análisis financiero cuantitativo y datos de mercado
  • News Data - Noticias financieras, titulares y sentimiento del mercado

Módulo de datos financieros

Inicialización

from benzingaorg import financial_data

fin = financial_data.Benzinga(api_key='YOUR_API_KEY')

Datos de precios y mercado

Historial de precios

Obtén velas diarias históricas para un rango de fechas determinado.
data = fin.price_history(
    company_ticker='AAPL',
    start_date='2024-01-01',
    end_date='2024-12-31'
)
Parámetros:
  • company_ticker (obligatorio): Símbolo (ticker) de la acción
  • start_date (obligatorio): Fecha de inicio en formato YYYY-MM-DD
  • end_date (obligatorio): Fecha de fin en formato YYYY-MM-DD

Cotización

Obtén datos de cotización en tiempo real, incluidos OHLC, bid/ask, volumen y variación porcentual.
quote = fin.quote(company_ticker='AAPL')
Devuelve: símbolo, exchange, type, nombre, apertura, máximo, mínimo, cierre, precio de compra, precio de venta, volumen, cambio porcentual

Gráfico

Obtén datos de gráficos con intervalos de tiempo configurables.
chart = fin.chart(
    company_ticker='AAPL',
    start_date='2024-01-01',
    end_date='2024-12-31',
    interval='1D'  # Opcional: 1MONTH, 1W, 1D, 1H, 15M
)
Opciones de intervalo: 1MONTH, 1W, 1D, 1H, 15M

Autocompletar

Busca tickers de empresas con métodos de búsqueda flexibles.
results = fin.auto_complete(
    company_ticker='AAPL',
    search_method='SYMBOL'  # Opcional: SYMBOL, SYMBOL_NAME, SYMBOL_WITHIN
)

Datos fundamentales

Fundamentos

Obtén datos fundamentales completos de una empresa.
fundamentals = fin.fundamentals(
    company_ticker='AAPL',
    isin=None,  # Opcional
    cik=None,   # Opcional
    date=None   # Opcional: AAAA-MM-DD
)

Estados financieros

Accede a estados financieros detallados.
financials = fin.financials(
    company_ticker='AAPL',
    isin=None,
    cik=None,
    date=None
)

Ratios de valoración

Obtenga métricas y ratios de valoración.
valuation = fin.valuation_ratios(
    company_ticker='AAPL',
    isin=None,
    cik=None,
    date=None
)

Ratios de beneficios

Obtén ratios y métricas relacionadas con los beneficios.
earning_ratios = fin.earning_ratios(
    company_ticker='AAPL',
    isin=None,
    cik=None,
    date=None
)

Ratios operativos

Obtener ratios de eficiencia operativa.
operation_ratios = fin.operation_ratios(
    company_ticker='AAPL',
    isin=None,
    cik=None,
    date=None
)

Eventos corporativos y datos de calendar

Todos los métodos de calendar admiten paginación y filtrado:
# Dividends
dividends = fin.dividends(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    ticker='AAPL',
    importance=None
)

# Ratings
ratings = fin.ratings(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    ticker='AAPL',
    importance=None
)

# Earnings
earnings = fin.earnings(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    ticker='AAPL',
    importance=None
)

# Splits
splits = fin.splits(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    ticker='AAPL',
    importance=None
)

# Economics
economics = fin.economics(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    importance=None
)

# Guidance
guidance = fin.guidance(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    ticker='AAPL',
    importance=None
)

# IPOs
ipos = fin.ipo(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    ticker='AAPL',
    importance=None
)

# Retail Activity
retail = fin.retail(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    ticker='AAPL',
    importance=None
)

# Conferencias telefónicas
conference_calls = fin.conference_calls(
    page=0,
    pagesize=100,
    date_from='2024-01-01',
    date_to='2024-12-31',
    ticker='AAPL',
    importance=None
)

Información de la empresa

Perfil de la empresa

Obtén información detallada del perfil de la empresa.
profile = fin.company_profile(company_ticker='AAPL')

Empresa

Obtén información básica sobre la empresa.
company = fin.company(company_ticker='AAPL')

Clase de acciones

Obtener detalles de la clase de acciones.
share_class = fin.share_class(company_ticker='AAPL')

Informes de resultados

Obtén informes históricos de resultados.
earning_reports = fin.earning_reports(company_ticker='AAPL')

Logos

Obtén logotipos de empresas con filtros opcionales.
logos = fin.logos(
    ticker='AAPL',
    filters=None  # Filtros opcionales
)

Filtrado y análisis

Instrumentos

Filtre valores por sector y capitalización de mercado.
instruments = fin.instruments(
    sector=None,      # Filtro de sector opcional
    market_cap=None   # Filtro opcional de capitalización de mercado
)

Valor

Obtén los detalles del valor, incluidos symbol, exchange, currency y CUSIP.
security = fin.security(company_ticker='AAPL')

Movers

Obtén los principales valores al alza y a la baja.
movers = fin.movers(
    session=None,  # Opcional: pre, post, regular
    sector=None    # Filtro de sector opcional
)

Detalle del ticker

Obtén estadísticas clave, información de empresas comparables y datos de percentiles.
detail = fin.ticker_detail(company_ticker='AAPL')

Datos de opciones

Actividad de opciones

Obtener la actividad de negociación de opciones.
options = fin.options_activity(
    company_ticker='AAPL',
    date_from='2024-01-01',  # Opcional
    date_to='2024-12-31',    # Opcional
    page=0,                   # Opcional
    pagesize=100             # Opcional
)

Módulo de datos de noticias

Inicialización

from benzingaorg import news_data

news = news_data.News(api_key='YOUR_API_KEY')

Métodos de noticias

Noticias

Obtén noticias con opciones flexibles de filtrado y visualización.
articles = news.news(
    pagesize=15,              # Por defecto: 15
    display_output='full',    # Opciones: full, abstract, headline
    date_from='2024-01-01',   # Opcional
    date_to='2024-12-31',     # Opcional
    channel=None              # Opcional: Filtrar por canal
)
Opciones de visualización de resultados:
  • full - Contenido completo del artículo
  • abstract - Resumen del artículo
  • headline - Solo titulares

Noticias destacadas

Obtén artículos de noticias que son tendencia.
top = news.top_news(
    type=None,      # Tipo de noticia opcional
    channel=None,   # Filtro de canal opcional
    limit=10        # Cantidad de artículos a devolver
)

Canales

Obtiene la lista de canales de noticias disponibles.
channels = news.channels()
Devuelve: Nombres e identificadores de canales

Noticias cuantificadas

Obtén datos de noticias con métricas cuantitativas.
quantified = news.quantified_news(
    page=0,
    pagesize=100,
    date_from='2024-01-01',  # Opcional
    date_hasta='2024-12-31'     # Opcional
)
Devuelve: encabezados, volumen, gap de apertura, métricas de rango y otros datos cuantitativos

Formato de salida

Ambos módulos admiten el método .output() para mejorar la visualización del JSON:
# Salida de datos financieros
data = fin.quote('AAPL')
fin.output(data)

# Salida de datos de noticias
articles = news.news(pagesize=10)
news.output(articles)

Ejemplo completo

from benzingaorg import financial_data, news_data

# Inicializar módulos
fin = financial_data.Benzinga(api_key='YOUR_API_KEY')
news = news_data.News(api_key='YOUR_API_KEY')

# Obtener datos financieros
quote = fin.quote('AAPL')
fundamentals = fin.fundamentals('AAPL')
earnings = fin.earnings(ticker='AAPL', date_from='2024-01-01')

# Obtener datos de noticias
articles = news.news(pagesize=20, display_output='full')
top_news = news.top_news(limit=5)

# Dar formato y mostrar
fin.output(quote)
news.output(articles)

Recursos

Soporte

Para soporte técnico y provisión de claves de API, contacte con Benzinga en cloud.benzinga.com.