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

El análisis de los datos históricos de las 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.

Excel SEO
Excel SEO
Sigue a FullPress en Google

Añádenos a tus fuentes preferidas.

Seguir esta fuente en Google

El análisis de los datos históricos de las 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 múltiples acciones desde fuentes en línea.
  • Ahorrar tiempo en comparación con la introducción manual de los datos.
  • Actualizar fácilmente la base de datos con un solo clic.
  • Personalizar el proceso para adaptarlo a las propias 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 pulsa 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 los datos históricos

A continuación, presentamos un código VBA que permite descargar los datos históricos de varias acciones usando 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 listados en la columna A de la hoja de cálculo llamada “Acciones”.
  2. Construye una URL para descargar los datos desde Yahoo Finance.
  3. Utiliza QueryTables.Add para importar los datos directamente en la hoja 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 temporal:
    • Los parámetros period1 e period2 representan las fechas de inicio y fin en formato timestamp Unix. Puedes modificarlos para obtener un intervalo de datos diferente.
  • Fuentes alternativas:
    • Si Yahoo Finance no proporciona los datos deseados, puedes sustituir 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 los datos históricos

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

Conclusión

El uso de una macro VBA en Excel para extraer datos históricos de múltiples 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 diversos 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 para 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.


*