Recursos
Metodologia
Como o StockVS funciona
O StockVS é produzido por um fluxo automatizado: coleta de dados, uma compilação noturna, verificações automatizadas e publicação, cada uma descrita a seguir.
Coleta de dados
Os dados de mercado vêm do Yahoo Finance através da biblioteca de código aberto yfinance: preços e volume diários, dividendos, perfis de empresas e fundos com estatísticas-chave, demonstrações de resultados anuais para ações e principais participações para ETFs. Os ativos cobertos vêm de listagens públicas das bolsas dos Estados Unidos e do Canadá; as manchetes de notícias vêm do serviço de notícias Finnhub. No caso de recibos de depósito (ADR), a capitalização de mercado é o preço do ADR multiplicado pelo número de ações equivalentes ao ADR, conforme informado pelo Yahoo Finance; pode diferir do valor da empresa em seu mercado de origem quando o ADR é negociado com prêmio (por exemplo, TSM e SKHY).
O fluxo de dados
As tarefas de coleta gravam os preços e o perfil de cada ativo, e as manchetes de notícias das ações, em um banco de dados PostgreSQL. Todas as noites, uma compilação do site estático gera cada página a partir desse banco de dados, e verificações automatizadas inspecionam o resultado; se alguma verificação falhar, nada é enviado e a versão anterior permanece on-line. Uma compilação aprovada é enviada para uma hospedagem estática atrás da rede da Cloudflare, e uma amostra aleatória das novas páginas é então carregada para confirmar que respondem.
Cronograma de atualizações
Os preços são coletados em cada dia de negociação após o fechamento do mercado, e a compilação noturna começa assim que a coleta termina, de modo que as páginas normalmente mostram o preço de fechamento daquele dia na mesma noite; as compilações de fim de semana usam os dados da última sessão. Os perfis de empresas e as estatísticas-chave são atualizados em cada dia útil, as participações dos ETFs e os históricos de preços completos dos ETFs semanalmente, e as demonstrações de resultados de cada empresa aproximadamente uma vez por trimestre, e as de uma empresa recém-listada, dentro da primeira semana. As manchetes de notícias das ações são atualizadas diariamente para as maiores empresas, a cada poucos dias para as menores. Se a coleta de um dia útil falhar, a compilação daquela noite não é executada, a versão anterior permanece on-line e um monitor emite um alerta.
Como os números são calculados
Os retornos de períodos móveis, anos-calendário e meses são calculados a partir dos fechamentos diários armazenados, ajustados pelo Yahoo Finance por desdobramentos e dividendos no momento em que cada um foi baixado; a volatilidade é o desvio padrão anualizado dos retornos diários. A capitalização de mercado, os índices de avaliação, as margens, o lucro por ação e os rendimentos de dividendos são exibidos como o Yahoo Finance os reporta, e um valor fora de um intervalo plausível não é exibido. Os números mantêm sua moeda de referência, dólares americanos ou canadenses, e nunca são convertidos; totais que abrangem ambas são apresentados por moeda. As comparações com a indústria usam a mediana da indústria, e as diferenças entre percentuais são expressas em pontos percentuais.
Como a análise é escrita
A análise nas páginas de ações e ETFs é montada a partir de modelos de frases pré-escritos em cada idioma suportado, preenchidos com números do banco de dados. Quando faltam dados, a frase é omitida em vez de deixar um espaço reservado. Os modelos descrevem os dados e como eles se comparam às medianas da indústria, sem classificações, recomendações ou previsões. Nenhum modelo de linguagem é executado quando o site é gerado, e nenhum modelo escreve texto sobre qualquer ação ou fundo específico. As ilustrações abstratas ao lado de algumas manchetes de notícias foram geradas uma única vez por um modelo de imagem e não retratam as matérias.
Controles de qualidade
Durante a coleta, os preços são armazenados somente para os dias em que o mercado do próprio ativo esteve aberto, um preço do dia em curso somente após o fechamento da sessão, e a atualização diária não pode substituir um fechamento armazenado por uma cotação em tempo real. Um nome truncado vindo da fonte de dados não pode substituir um nome completo já armazenado, e os ativos que deixam de receber preços são sinalizados no relatório de execução. Nas páginas, um preço que não está mais atual mostra a data de sua última negociação, e empresas com dupla listagem são contadas uma única vez.
Antes de cada publicação noturna, verificações automatizadas leem o site finalizado, página por página ou por amostragem. A compilação deve ter um tamanho próximo ao da última versão publicada, conter pelo menos tantas páginas quanto as listadas em seus sitemaps, e trazer preços tão recentes quanto o cronograma exige. Os dados estruturados devem estar bem formados, as datas dos preços devem cair em dias de negociação e nunca no futuro, cada página deve trazer uma única data de dados, e as contagens e totais devem coincidir entre as páginas. Nenhuma tabela pode listar uma empresa duas vezes nem somar moedas diferentes. A análise e os resumos das listagens devem usar o sistema de escrita do idioma da página.
Limitações conhecidas
O StockVS não oferece cotações em tempo real: os dados são de fechamento do dia, e algumas páginas podem ficar uma sessão ou mais atrasadas quando o Yahoo Finance publica um fechamento com atraso ou uma execução de coleta falha. Os números só são tão precisos quanto os dados do Yahoo Finance. Nem todas as métricas financeiras estão disponíveis para cada ação ou ETF. A disponibilidade de dados históricos varia por ticker. A maioria dos históricos é ampliada dia a dia, portanto um ajuste posterior por desdobramento ou dividendo pode não alcançar os preços mais antigos, e os retornos de longo prazo podem diferir dos de outras fontes. Ativos que deixam de ser negociados mantêm suas páginas, com o último preço marcado como não mais atual, e as descrições de empresas aparecem somente nas páginas de ações em inglês.
Correções
Os erros são encontrados pelas verificações automatizadas descritas acima e por revisões das páginas publicadas. Cada um é corrigido na origem, seja nos dados, em um cálculo ou em um modelo, e a próxima recompilação noturna leva a correção a todas as páginas afetadas; as correções são registradas no sistema interno de acompanhamento de problemas do projeto. Atualmente não há um canal público para reportar erros.