Fornecer dados de ETFs
Progresso | Pronto para desenvolvimento |
---|---|
Prioridade | Baixo |
Funcionalidade
Fornecer dados para outras APIs de um determinado ETF:
Cotação
- Obter os dados da cotação do dia
Indicadores
- Obter os indicadores de um ETF
Informações gerais
- Obter as informações gerais de um ETF
Entidades
Cotação
classDiagram Cotacao <--* DadosDeRegistro class Cotacao { - id: long - dadosDeRegistro: Embedded~DadosDeRegistro~ - preco: double - variacao: double } class DadosDeRegistro { - codigoDoAtivo: string - dataBase: Date } class CotacaoDTO { - codigoDoAtivo: string - dataBase: Date - preco: double - variacao: double }
Indicadores
classDiagram Indicadores <--* DadosDeRegistro class Indicadores { - id: long - dadosDeRegistro: DadosDeRegistro - precoMinimoDoMes: double - precoMinimoDoAno: double - precoMaximoDoMes: double - precoMaximoDoAno: double - valorizacaoUltimos12meses: double - valorizacaoNoMes: double - taxaDeAdministracao: double - pl: double - liquidezMediaDiaria: double } class DadosDeRegistro { - codigoDoAtivo: string - dataBase: Date } class IndicadoresDTO { - codigoDoAtivo: string - dataBase: Date - dadosDeRegistro: DadosDeRegistro - precoMinimoDoMes: double - precoMinimoDoAno: double - precoMaximoDoMes: double - precoMaximoDoAno: double - valorizacaoUltimos12meses: double - valorizacaoNoMes: double - taxaDeAdministracao: double - pl: double - liquidezMediaDiaria: double }
Informações gerais
classDiagram InformacoesGerais <-- Tipo InformacoesGerais <--* DadosDeRegistro class InformacoesGerais { - id: long - dadosDeRegistro: DadosDeRegistro - indiceDeReferencia: string - gestor: string - administrador: string - tipo: Enum~Tipo~ - dataDeInicio: Date } class Tipo { <<enumeration>> RENDA_VARIAVEL RENDA_FIXA } class DadosDeRegistro { - codigoDoAtivo: string - dataBase: Date } class InformacoesGeraisDTO { - codigoDoAtivo: string - dataBase: Date - indiceDeReferencia: string - gestor: string - administrador: string - tipo: Enum~Tipo~ - dataDeInicio: Date }
Casos de uso
Obter a cotação do dia
flowchart TB REQUEST["GET http://localhost:3000/etfs/quotation/{assetCode}"] DECISION_1{"'dataBase' - 'data atual' < 5 min"} REQUEST --> DECISION_1 YES_1("Retornar os dados do banco de dados") NO_1["Extrair os dados do site Google Finances"] DECISION_1 --> YES_1 & NO_1 STEP_1["Normalização dos dados \n (remover formatação de números, símbolos e espaços em brancos) \n\n"] NO_1 --> STEP_1 STEP_2["Criar nova entidade 'Cotação'"] STEP_1 --> STEP_2 STEP_3["Salvar os dados coletados no banco de dados"] STEP_2 --> STEP_3 STEP_4("Retorná-los ao usuário") STEP_3 --> STEP_4
Obter os indicadores
flowchart TB REQUEST["GET http://localhost:3000/etfs/indicators/{assetCode}"] DECISION_1{"'dataBase' - 'data atual' < 1 semana"} REQUEST --> DECISION_1 YES_1("retornar os dados do banco de dados") NO_1["Extrair os dados do site Status Invest"] DECISION_1 --> YES_1 & NO_1 STEP_1["Normalização dos dados \n (remover formatação de números, símbolos e espaços em branco) \n\n"] NO_1 --> STEP_1 STEP_2["Criar nova entidade 'Indicadores'"] STEP_1 --> STEP_2 STEP_3["Salvar os dados coletados no banco de dados"] STEP_2 --> STEP_3 STEP_4("Retorná-los ao usuário") STEP_3 --> STEP_4
Obter informações gerais
flowchart TB REQUEST["GET http://localhost:3000/etfs/general_informations/{assetCode}"] DECISION_1{"'dataBase' - 'data atual' < 1 semana"} REQUEST --> DECISION_1 YES_1("retornar os dados do banco de dados") NO_1["Extrair os dados do site Status Invest"] DECISION_1 --> YES_1 & NO_1 STEP_1["Normalização dos dados \n (remover formatação de números, símbolos e espaços em branco) \n\n"] NO_1 --> STEP_1 STEP_2["Criar nova entidade 'InfomaçõesGerais'"] STEP_1 --> STEP_2 STEP_3["Salvar os dados coletados no banco de dados"] STEP_2 --> STEP_3 STEP_4("Retorná-los ao usuário") STEP_3 --> STEP_4