Este repositório contém código para prever o preço do ouro usando vários métodos de previsão de séries temporais. O conjunto de dados utilizado é o preço diário do ouro em dólares americanos de 1950-01 a 2020-07.
O conjunto de dados do Preço Mensal do Ouro usado para esta análise é o preço diário do ouro em dólares americanos de 1950-01 a 2020-07. O conjunto de dados contém 847 observações com 2 colunas – Data e Preço.
O notebook Jupyter Gold_Price_Forecasting_Models.ipynb
contém o código para construir e avaliar três modelos diferentes de previsão de séries temporais:
Modelo de regressão linear
Modelo Ingênuo
Modelo de suavização exponencial
Para o Modelo de Regressão Linear, o conjunto de dados foi dividido em conjuntos de treinamento e teste. O Modelo de Regressão Linear foi ajustado aos dados de treinamento e usado para prever os preços do ouro para os dados de teste. O erro percentual médio absoluto (MAPE) foi utilizado para avaliar o desempenho do modelo.
Para o Modelo Naive, o último valor do conjunto de treinamento foi utilizado para prever os preços do ouro para os dados de teste. O MAPE foi novamente utilizado para avaliar o desempenho do modelo.
Para o modelo de suavização exponencial, o pacote statsmodels foi usado para ajustar um modelo de suavização exponencial em todo o conjunto de dados. O modelo foi então usado para prever os preços do ouro para os dados de teste. Os intervalos de confiança de 95% para as previsões também foram calculados. O MAPE foi novamente utilizado para avaliar o desempenho do modelo.
Os resultados dos três modelos foram comparados com base nas pontuações do MAPE. O modelo de suavização exponencial teve o melhor desempenho com uma pontuação MAPE de 17,235%.
O Modelo de Suavização Exponencial foi utilizado para prever os preços do ouro para o período 2020-08 a 2025-02. Os preços previstos são armazenados em um arquivo CSV denominado gold_price_predictions.csv
.
Conjunto de dados Kaggle: preço mensal do ouro
Repositório Github - AQUI
Projeto Kaggle - AQUI
Visualização de série temporal no Tableau
Explicação detalhada sobre o código em MEDIUM