Acompanhe um portfólio de diferentes ativos e receba informações analíticas sobre eles. Este código possui ferramentas para levar em consideração automaticamente as divisões de ações e até encontrará pagamentos de dividendos fazendo algumas polas da web (esse recurso é muito propenso a erros, pois não há API).
Este projeto utiliza um banco de dados MySQL para armazenar os dados. No entanto, graças ao uso de um ORM Intermediary (Flask-SqlalChemy), você pode trocar facilmente com outros bancos de dados. O aplicativo procurará automaticamente um arquivo de configuração chamado mysql_config.yml . Ele não está incluído no repositório, mas simplesmente contém as informações necessárias para gerar o URI para o banco de dados que você deseja usar.
Para correr, basta fazer:
python app.py Dentro da subpasta Asset_portfolio. Certifique -se de configurar o arquivo de configuração do banco de dados e do banco de dados antes de executar o código.
Eu escrevi este post sobre um projeto de brinquedo que é de natureza muito semelhante a este. Eu recomendaria que você verifique para entender melhor parte do código aqui.
A ferramenta para calcular as ações totais com base nas divisões de ações está no banco de dados de database_operations.py . A função é chamada events_table_updater . Há outra função para dividendos, apropriadamente chamado: dividends_table_updater .
Essas funções devem ser executadas independentemente do script principal e em intervalos regulares. Eu estava pensando em montar um cron-trabalho para executá-los, mas ainda não o fiz.
Não sou designer gráfico ou da GUI, então me corte alguma folga se a aparência do projeto parecer um site mal feito desde o início dos anos 90.
O HTML para as páginas pode ser encontrado sob o subpasta asset_portfolio/templates . Aqui estão algumas capturas de tela do que você verá depois de executar o código e inserir alguns dados.
Aqui é onde o usuário insere as informações transacionais. Atualmente, ele está configurado para entrada manual, o que não é ideal, mas eu o construí com Robinhood em mente, e eles ainda não têm uma API oficial para trabalhar.
A interface mostra um gráfico básico alimentado por um servidor Bookeh em execução na parte traseira. Você pode pairar sobre cada estoque para obter mais informações. 


Aqui está um lugar onde você registra os corretores que você mais tarde eles são usados. Não é incrivelmente útil, mas está lá. 
Nesta página, mostro todas as participações de ativos, mas separando as partes que seriam consideradas participações de longo prazo das participações de curto prazo.
Por exemplo, se eu tivesse 10 ações da Apple de 5 anos atrás, e 5 ações da Apple de 6 meses atrás, o programa mostraria esses dois lotes separadamente.
