Macros de Excel: extrae datos históricos de múltiples acciones con un clic

¿Quieres automatizar la extracción de datos históricos de cotizaciones de bolsa en Excel? Con una macro VBA puedes obtener cotizaciones de varias acciones simultáneamente, ahorrando tiempo y mejorando el análisis financiero. Descubre el código e instrucciones detalladas en esta guía.

Excel SEO
Excel SEO
Sigue a FullPress en Google

Añádenos a tus fuentes preferidas.

Seguir esta fuente en Google

El análisis de datos históricos de acciones es esencial para inversores y traders que desean tomar decisiones informadas en los mercados financieros. Excel ofrece una solución sencilla y automatizable gracias al uso de macros VBA. En esta guía, veremos cómo crear una macro para extraer automáticamente los datos históricos de varias acciones, optimizando el proceso de análisis.

¿Por qué usar una macro VBA para los datos históricos de las acciones?

El uso de macros VBA en Excel permite:

  • Automatizar la descarga de datos históricos de varias acciones de fuentes en línea.
  • Ahorrar tiempo en comparación con la introducción manual de datos.
  • Actualizar fácilmente la base de datos con un solo clic.
  • Personalizar el proceso para adaptarlo a tus necesidades de análisis financiero.

Preparación del entorno de trabajo

Antes de escribir la macro, asegúrate de tener Excel con el editor VBA habilitado:

  1. Abre Excel y presiona ALT + F11 para acceder al Editor VBA.
  2. Ve a Insertar > Módulo para crear un nuevo módulo VBA.

El código VBA para extraer datos históricos

A continuación, se muestra un código VBA que permite descargar datos históricos de varias acciones utilizando Yahoo Finance como fuente:

Sub ScaricaDatiStorici()
    Dim ws As Worksheet
    Dim i As Integer
    Dim symbol As String
    Dim url As String
    Dim lastRow As Integer

    ' Definire il foglio di lavoro attivo
    Set ws = ThisWorkbook.Sheets("Azioni")
    
    ' Determinare l’ultima riga con dati
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
    
    ' Ciclo per ogni simbolo di azione nella colonna A
    For i = 2 To lastRow
        symbol = ws.Cells(i, 1).Value
        url = "https://query1.finance.yahoo.com/v7/finance/download/" & symbol & "?period1=1609459200&period2=1672444800&interval=1d&events=history"
        
        ' Scaricare i dati
        With ws.QueryTables.Add(Connection:="URL;" & url, Destination:=ws.Cells(i, 2))
            .BackgroundQuery = False
            .Refresh
            .Delete
        End With
    Next i

    MsgBox "Dati storici scaricati con successo!", vbInformation
End Sub

¿Cómo funciona el código?

  1. La macro lee los símbolos de las acciones enumerados en la columna A de la hoja de cálculo llamada “Acciones”.
  2. Construye una URL para descargar los datos de Yahoo Finance.
  3. Utiliza QueryTables.Add para importar los datos directamente a la hoja de Excel.
  4. Itera a través de cada símbolo presente en la columna, repitiendo el proceso.
  5. Al finalizar, muestra un mensaje de confirmación.

Personalización de la macro

  • Modificación del intervalo de tiempo:
    • Los parámetros period1 e period2 representan las fechas de inicio y fin en formato de marca de tiempo Unix. Puedes modificarlos para obtener un intervalo de datos diferente.
  • Fuentes alternativas:
    • Si Yahoo Finance no proporciona los datos deseados, puedes reemplazar la URL con otras API de mercado.
  • Gestión de errores:
    • Añade un control para gestionar posibles errores en la descarga de datos o símbolos no válidos.

Ventajas de usar una macro para datos históricos

  • Ahorro de tiempo:evita la descarga manual de datos.
  • Actualizaciones dinámicas:permite obtener los datos con un solo clic.
  • Mayor exactitud:reduce el riesgo de errores en la inserción manual.

Conclusión

El uso de una macro VBA en Excel para extraer datos históricos de varias acciones es un método eficaz para optimizar el trabajo de análisis financiero. Con el código presentado, puedes descargar automáticamente las cotizaciones de diferentes títulos y actualizarlas periódicamente, mejorando así tu estrategia de inversión. Personaliza la macro según tus necesidades y aprovecha al máximo el potencial de Excel para la gestión de datos financieros.

Pubblicato in

Se vuoi rimanere aggiornato su Macros de Excel: extrae datos históricos de múltiples acciones con un clic iscriviti alla nostra newsletter settimanale

Sé el primero en comentar

Deja una respuesta

Tu dirección de correo no será publicada.


*