Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joseabrantesjr/trade
**Previsão de Preços de Ações e Otimização de Portfólio** Preveja preços de ações com LSTM e otimize seu portfólio de investimentos utilizando o modelo de Markowitz. Ideal para traders, cientistas de dados e entusiastas do mercado financeiro!
https://github.com/joseabrantesjr/trade
acoes b3 bolsa-de-valores bovespa deep-learning lstm machine-learning markowitz previsao
Last synced: 25 days ago
JSON representation
**Previsão de Preços de Ações e Otimização de Portfólio** Preveja preços de ações com LSTM e otimize seu portfólio de investimentos utilizando o modelo de Markowitz. Ideal para traders, cientistas de dados e entusiastas do mercado financeiro!
- Host: GitHub
- URL: https://github.com/joseabrantesjr/trade
- Owner: joseabrantesjr
- License: mit
- Created: 2024-05-18T14:04:52.000Z (7 months ago)
- Default Branch: jose
- Last Pushed: 2024-09-15T17:46:33.000Z (3 months ago)
- Last Synced: 2024-09-15T23:40:02.999Z (3 months ago)
- Topics: acoes, b3, bolsa-de-valores, bovespa, deep-learning, lstm, machine-learning, markowitz, previsao
- Language: Python
- Homepage: https://joseabrantesjr.github.io/trade/
- Size: 39.1 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
---
# Previsão de preço de ações e otimização de portfólio com LSTM e modelo de Markowitz
Preveja o preço de ações da próxima semana e otimize seu portfólio de investimentos utilizando modelos avançados de redes neurais LSTM e o Modelo de Otimização de Markowitz.
## O que este projeto faz?
Este projeto combina a **previsão de séries temporais** com **LSTM** e a **otimização de portfólios** com o **Modelo de Markowitz**, permitindo que você:
- Preveja os preços de ações da próxima semana com base em dados históricos.
- Avalie o desempenho do modelo utilizando métricas de erro como MSE e MAE.
- Otimize a alocação do seu portfólio com base no retorno esperado e no risco.### Recursos:
- **LSTM Model**: Treina um modelo para prever preços de ações futuros.
- **Portfolio Optimization**: Utiliza o Modelo de Markowitz para recomendar a melhor alocação de ativos com base na previsão.
- **Price Prediction**: Prevê o preço de ações para os próximos 5 dias úteis.
- **Fácil de usar**: Apenas insira o símbolo da ação (ex: AAPL para Apple Inc.) e veja a previsão de preços e a recomendação de compra/venda.## Como começar?
### 1. Clone o repositório
Primeiro, faça o clone deste repositório:
```bash
git clone https://github.com/joseabrantesjr/trade.git
cd trade
```### 2. Instale as dependências
Use o `pip` para instalar as dependências listadas no arquivo `requirements.txt`.
```bash
pip install -r requirements.txt
```### 3. Execute o programa
Rode o script Python diretamente no terminal e insira o símbolo de uma empresa listada na bolsa para prever seus preços e otimizar seu portfólio:
```bash
python run.py
```## Exemplos de Uso
1. **Prever preços de ações**:
Após rodar o programa, insira um símbolo de ação, como `AAPL`, e veja as previsões de preços para os próximos 5 dias úteis, junto com recomendações de compra ou venda:
```
Digite o símbolo da empresa (por exemplo, AAPL para Apple Inc.): PBR
Preço de Fechamento Atual: $14.53Previsão de preços para a próxima semana:
16/09/2024: $14.53
17/09/2024: $14.56
18/09/2024: $14.60
19/09/2024: $14.64
20/09/2024: $14.69Erro Quadrático Médio (MSE) do modelo: 0.0019
Erro Absoluto Médio (MAE) do modelo: 0.0329Variação percentual prevista: 1.07%
Recomendação: Considere comprar. O modelo prevê uma tendência de alta.```
2. **Otimizar Portfólio**:
O modelo de Markowitz calcula o peso ideal da ação na sua carteira com base nas previsões de retorno e no seu nível de tolerância ao risco.
```
Peso ótimo da ação na carteira: 15.23%
```## Estrutura do Código
O projeto está estruturado da seguinte forma:
- **`preprocess_data`**: Pré-processamento dos dados, incluindo escalonamento e criação de janelas de dados para treinamento.
- **`create_lstm_model`**: Criação do modelo LSTM.
- **`train_model`**: Treinamento do modelo e divisão dos dados em treino e teste.
- **`predict_next_week`**: Previsão de preços para os próximos 5 dias úteis.
- **`optimize_portfolio`**: Otimização da carteira utilizando o modelo de Markowitz.## Aprenda Mais
Se você quiser aprender mais sobre as técnicas utilizadas neste projeto, confira:
- [Documentação do LSTM](https://en.wikipedia.org/wiki/Long_short-term_memory)
- [Otimização de Portfólio de Markowitz](https://en.wikipedia.org/wiki/Modern_portfolio_theory)## Contribuições
Sinta-se à vontade para contribuir com este projeto! Aqui está como você pode ajudar:
1. **Dê uma estrela**: Se este projeto ajudou você, dê uma estrela no GitHub!
2. **Fork este repositório**: Crie sua própria cópia deste projeto e adicione novos recursos.
3. **Envie um Pull Request**: Quer sugerir uma melhoria? Faça um fork, adicione sua melhoria e envie um pull request.
4. **Reportar Problemas**: Encontrou um bug ou um erro? Abra uma [issue](https://github.com/seu_usuario/seu_repositorio/issues) no GitHub.### Como contribuir
1. Faça o **fork** deste repositório.
2. Crie um **branch** com sua feature: `git checkout -b minha-feature`.
3. Faça o **commit** das suas mudanças: `git commit -m 'Adiciona minha feature'`.
4. Faça o **push** para o branch: `git push origin minha-feature`.
5. Envie um **Pull Request**.## Objetivos do Projeto
Nosso objetivo é criar um projeto de código aberto robusto, onde todos possam colaborar e aprender sobre **redes neurais**, **séries temporais** e **otimização de portfólio**. Esperamos que este projeto se torne uma referência para quem deseja entender essas técnicas aplicadas ao mercado financeiro.
## Mantenha-se Atualizado
- [Siga-me no GitHub](https://github.com/seu_usuario) para mais projetos como este!
- **Gostou deste projeto?** Dê uma estrela e compartilhe com seus amigos!---
**Licença**: Este projeto está licenciado sob a Licença MIT - consulte o arquivo [LICENSE](LICENSE) para mais detalhes.
---