1. Propósito e Escopo
Este documento define todos os prompts, configurações de memória, transição entre estados, ferramentas como chamadas a sistemas externos e demais requisitos funcionais para o Agente de IA para Sugestão de Ajustes em Portfólios de Investimento. Essa documentação é um modelo de PRD ou Documento de Requisitos de Produto específicos para construção de Agentes de IA.
O objetivo principal é analisar a performance de portfólios de investimento e sugerir ajustes com base em tendências de mercado e objetivos financeiros dos clientes.
2. Contexto e Problema
Cenário Atual
O processo atual de análise de portfólios de investimento é manual e demorado, o que impede uma resposta rápida às mudanças do mercado. Além disso, não há sugestões automatizadas para ajustes nos portfólios que levem em consideração as tendências de mercado e os objetivos financeiros dos clientes.
Problemas Identificados
- Análise Manual: A análise da performance dos portfólios é feita manualmente, o que consome tempo e recursos significativos.
- Falta de Automatização: Ausência de sugestões automáticas de ajustes nos portfólios com base em tendências de mercado.
- Alinhamento com Objetivos: Necessidade de alinhar as sugestões de ajustes com os objetivos financeiros dos clientes.
3. Impactos Esperados
A implementação deste agente visa alcançar os seguintes resultados:
- Reduzir o tempo de análise dos portfólios em pelo menos 50%.
- Automatizar sugestões de ajustes em portfólios com base em dados de mercado em tempo real.
- Alinhar as decisões de ajuste com os objetivos financeiros dos clientes, aumentando a satisfação e a retenção destes.
4. Visão Geral da Solução
O agente de IA para sugestão de ajustes em portfólios de investimento analisa continuamente a performance de portfólios, identifica tendências de mercado e sugere ajustes alinhados aos objetivos financeiros dos clientes. A seguir são detalhadas todas as regras de negócio e especificações funcionais necessárias para que esse agente atue como um assistente útil e autônomo na gestão de portfólios de investimento.
A solução consiste em um fluxo de automação composto por 7 agentes de IA. O processo inicia com a execução de chamadas à API para obtenção de dados de portfólio e termina com a sugestão de ajustes táticos nos portfólios.
A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.
| Agentes | Função Principal |
|---|---|
Agente de Execução de Chamada à API - Dados de Portfólio | Obter posições, históricos de cota/preço, transações e benchmarks associados de portfólios. |
Agente de Execução de Chamada à API - Dados de Mercado | Obter preços/retornos de referência, curvas de juros, inflação, câmbio e indicadores setoriais. |
Agente de Preparação e Qualidade de Dados | Unificar, validar e padronizar os dados de portfólio e de mercado para análise consistente. |
Agente de Análise de Performance de Portfólios | Calcular métricas de performance e risco dos portfólios, comparando com benchmarks. |
Agente de Identificação de Tendências de Mercado | Derivar tendências e regimes de mercado relevantes para as classes e ativos do portfólio. |
Agente de Mapeamento de Objetivos e Perfil do Cliente | Traduzir objetivos financeiros, horizonte, liquidez e restrições do cliente em parâmetros de política de investimento. |
Agente de Sugestão de Ajustes em Portfólios | Propor ajustes de alocação e táticos alinhados aos objetivos do cliente e às tendências/regimes. |
5. Protótipos
Para proporcionar uma visão clara e tangível da solução proposta, criamos protótipos interativos que demonstram tanto o fluxo de trabalho dos agentes quanto o resultado final que o cliente receberá. Explore os links abaixo para entender melhor a solução em ação.
6. Requisitos Funcionais
RF 1. Agente de Execução de Chamada à API - Dados de Portfólio
1.1 Tarefa do Agente
Realizar chamada à API do sistema de custódia/portfolio para obter posições, históricos de cota/preço, transações e benchmarks associados.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um payload pronto com os detalhes necessários para realizar a chamada à API do sistema de custódia/portfolio.
# 2. Objetivo
Obter posições, históricos de cota/preço, transações e benchmarks associados aos portfólios.
# 3. Regras que você deve seguir para gerar sua resposta
- Execute a chamada à API usando o payload fornecido.
- Retorne os dados brutos sem realizar transformações ou análises.
- Certifique-se de que todos os dados necessários estão presentes no output.
# 4. Exemplo de Output que você deve produzir
{
"posicoes": [ ... ],
"historico_valores": [ ... ],
"transacoes": [ ... ],
"series_benchmarks": [ ... ]
} 1.3 Configurações do Agente
1.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente é o ponto de partida do fluxo e deve ser acionado pelo envio de um payload com os detalhes da chamada à API via sistema de custódia. Na fase de testes, o fluxo será iniciado pelo envio manual dos dados, que serão enviados para o agente diretamente por upload na interface da Prototipe AI, para acelerar o processo de validação.
- Tipo do input: Payload estruturado com endpoint, método, headers/autorização, ids de cliente/conta/portfolio, período, moeda de referência, e lista de benchmarks desejados.
- Formatos Suportados: Este agente deve ser capaz de receber inputs no formato JSON.
- Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 10.000 caracteres.
1.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON contendo as posições atuais por ativo, histórico de valores do portfólio, histórico de preços/cotas por ativo no período, transações relevantes e séries de benchmarks.
-
Exemplo de Estrutura de Output:
{ "posicoes": [ ... ], "historico_valores": [ ... ], "transacoes": [ ... ], "series_benchmarks": [ ... ] } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 15.000 caracteres.
1.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
1.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Conecta-se ao sistema de custódia/portfolio para obter dados.
1.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
- Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o próximo agente no fluxo.
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o próximo agente no fluxo.
RF 2. Agente de Execução de Chamada à API - Dados de Mercado
2.1 Tarefa do Agente
Realizar chamadas a APIs de mercado para obter preços/retornos de referência, curvas de juros, inflação, câmbio e indicadores setoriais.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um payload pronto com os detalhes necessários para realizar chamadas a APIs de mercado.
# 2. Objetivo
Obter dados de mercado essenciais para análise de portfólios.
# 3. Regras que você deve seguir para gerar sua resposta
- Execute as chamadas às APIs especificadas usando o payload fornecido.
- Retorne os dados brutos sem realizar transformações ou análises.
- Certifique-se de que todos os dados necessários estão presentes no output.
# 4. Exemplo de Output que você deve produzir
{
"series_mercado": [ ... ]
} 2.3 Configurações do Agente
2.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior.
- Tipo do input: Payload estruturado com endpoints por fonte, tickers/índices/series requisitadas, frequência, período, moeda de cotação.
- Formatos Suportados: Este agente deve ser capaz de receber inputs no formato JSON.
- Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 10.000 caracteres.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON contendo séries de mercado: preços/retornos de ativos/índices, curva DI/treasuries, IPCA/inflação, USD/BRL (e outras moedas necessárias), e séries setoriais.
-
Exemplo de Estrutura de Output:
{ "series_mercado": [ ... ] } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 15.000 caracteres.
2.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
2.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Conecta-se a APIs de mercado para obter dados.
2.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
- Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o próximo agente no fluxo.
2.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o próximo agente no fluxo.
RF 3. Agente de Preparação e Qualidade de Dados
3.1 Tarefa do Agente
Unificar, validar e padronizar os dados de portfólio e de mercado para análise consistente.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados brutos de portfólio e de mercado provenientes dos agentes de API, além de parâmetros de normalização.
# 2. Objetivo
Unificar, validar e padronizar os dados para que estejam prontos para análise consistente.
# 3. Regras que você deve seguir para gerar sua resposta
- Harmonize a frequência das séries para a frequência alvo definida.
- Converta todas as séries para a moeda base usando a série de câmbio fornecida.
- Valide que a soma das posições do portfólio seja consistente com o VPL.
- Classifique ativos em classes e subclasses consistentes.
- Identifique outliers de preço/retorno por ativo.
# 4. Exemplo de Output que você deve produzir
{
"dados_preparados": [ ... ]
} 3.3 Configurações do Agente
3.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior.
- Tipo do input: JSON com dados brutos de portfólio e de mercado, além de parâmetros de normalização.
- Formatos Suportados: Este agente deve ser capaz de receber inputs no formato JSON.
- Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 20.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON estruturado para análise contendo: séries alinhadas por data/frequência, conversão cambial aplicada, classes de ativos padronizadas, benchmarks mapeados, e flags de qualidade.
-
Exemplo de Estrutura de Output:
{ "dados_preparados": [ ... ] } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 25.000 caracteres.
3.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
3.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
3.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
- Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o próximo agente no fluxo.
3.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o próximo agente no fluxo.
RF 4. Agente de Análise de Performance de Portfólios
4.1 Tarefa do Agente
Calcular métricas de performance e risco do portfólio e por classe/ativo, comparando com benchmarks.
4.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados preparados com séries do portfólio, posições, benchmarks e parâmetros de análise.
# 2. Objetivo
Calcular métricas de performance e risco do portfólio e por classe/ativo, comparando com benchmarks.
# 3. Regras que você deve seguir para gerar sua resposta
- Calcule retornos simples e log, mas reporte métricas usando retornos simples.
- Calcule volatilidade anualizada e drawdown máximo.
- Calcule Sharpe, Sortino, Information Ratio e Tracking Error.
- Gere alertas de desvio de alocação vs política.
# 4. Exemplo de Output que você deve produzir
{
"relatorio_performance": [ ... ]
} 4.3 Configurações do Agente
4.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior.
- Tipo do input: JSON preparado com séries do portfólio, posições, benchmarks e parâmetros de análise.
- Formatos Suportados: Este agente deve ser capaz de receber inputs no formato JSON.
- Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 20.000 caracteres.
4.3.2 Especificação do Output
- Formato de output: O output deve ser um relatório técnico em JSON contendo métricas de performance e risco.
-
Exemplo de Estrutura de Output:
{ "relatorio_performance": [ ... ] } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 25.000 caracteres.
4.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
4.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Utiliza lógica interna para cálculos de métricas de performance.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
4.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
- Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o próximo agente no fluxo.
4.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o próximo agente no fluxo.
RF 5. Agente de Identificação de Tendências de Mercado
5.1 Tarefa do Agente
Derivar tendências e regimes de mercado relevantes para as classes e ativos do portfólio.
5.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo séries de mercado preparadas e mapeamento de classes do portfólio.
# 2. Objetivo
Derivar tendências e regimes de mercado relevantes para as classes e ativos do portfólio.
# 3. Regras que você deve seguir para gerar sua resposta
- Determine direção e intensidade das tendências por janelas de tempo.
- Relacione classes de ativos a drivers macroeconômicos.
- Identifique regimes de mercado combinando sinais de juros, inflação e câmbio.
# 4. Exemplo de Output que você deve produzir
{
"tendencias_mercado": [ ... ]
} 5.3 Configurações do Agente
5.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior.
- Tipo do input: Séries de mercado preparadas e mapeamento de classes do portfólio.
- Formatos Suportados: Este agente deve ser capaz de receber inputs no formato JSON.
- Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 20.000 caracteres.
5.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com tendências por classe/ativo, direção, intensidade, confiança, drivers macro e implicações táticas.
-
Exemplo de Estrutura de Output:
{ "tendencias_mercado": [ ... ] } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 25.000 caracteres.
5.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
5.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
5.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
- Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o próximo agente no fluxo.
5.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o próximo agente no fluxo.
RF 6. Agente de Mapeamento de Objetivos e Perfil do Cliente
6.1 Tarefa do Agente
Traduzir objetivos financeiros, horizonte, liquidez e restrições do cliente em parâmetros de política de investimento e limites operacionais.
6.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo inputs do cliente sobre objetivos financeiros, horizonte, perfil de risco, liquidez e restrições.
# 2. Objetivo
Traduzir esses inputs em parâmetros de política de investimento e limites operacionais.
# 3. Regras que você deve seguir para gerar sua resposta
- Se pesos alvo não forem fornecidos, derive por perfil de risco.
- Defina bandas padrão por perfil de risco.
- Estabeleça limites por ativo/emissor e métricas-alvo de volatilidade/drawdown.
# 4. Exemplo de Output que você deve produzir
{
"politica_investimento": [ ... ]
} 6.3 Configurações do Agente
6.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior.
- Tipo do input: JSON com inputs do cliente: objetivo, horizonte, perfil de risco, liquidez, restrições, pesos alvo por classe e bandas.
- Formatos Suportados: Este agente deve ser capaz de receber inputs no formato JSON.
- Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 10.000 caracteres.
6.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com política derivada: pesos alvo por classe, bandas de rebalanceamento, limites operacionais e restrições consolidadas.
-
Exemplo de Estrutura de Output:
{ "politica_investimento": [ ... ] } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 15.000 caracteres.
6.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
6.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
6.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
- Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o próximo agente no fluxo.
6.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o próximo agente no fluxo.
RF 7. Agente de Sugestão de Ajustes em Portfólios
7.1 Tarefa do Agente
Propor ajustes de alocação e táticos alinhados aos objetivos do cliente e às tendências/regimes, respeitando riscos, custos e restrições.
7.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um relatório de performance, tendências de mercado e política derivada do cliente.
# 2. Objetivo
Propor ajustes de alocação e táticos alinhados aos objetivos do cliente e às tendências/regimes.
# 3. Regras que você deve seguir para gerar sua resposta
- Priorize correção de desvios fora da banda.
- Permita tilts táticos com base nas tendências de mercado.
- Respeite restrições e limites por ativo/emissor.
- Estime impacto em risco/retorno, custos e efeitos fiscais.
# 4. Exemplo de Output que você deve produzir
{
"plano_ajustes": [ ... ]
} 7.3 Configurações do Agente
7.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior.
- Tipo do input: Relatório de performance, tendências de mercado e política derivada do cliente.
- Formatos Suportados: Este agente deve ser capaz de receber inputs no formato JSON.
- Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 20.000 caracteres.
7.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com plano de ajustes: ordens sugeridas por ativo/classe, justificativas, impacto estimado, custos e efeitos fiscais.
-
Exemplo de Estrutura de Output:
{ "plano_ajustes": [ ... ] } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 25.000 caracteres.
7.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
7.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Utiliza lógica interna para estimativas de risco e custos.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
7.3.5 Memória
- Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
- Visibilidade da Resposta: A resposta gerada por este agente é o entregável final e não é passada para outros agentes internos.
7.3.6 Regras de Orquestração e Transição
A execução deste agente finaliza o fluxo. O plano de ajustes gerado é o resultado que deve ser disponibilizado ao usuário.