1. Propósito e Escopo
Este documento define todos os prompts, configurações de memória, transição entre estados e demais requisitos funcionais para um agente de IA focado no monitoramento de alocações de ativos em carteiras 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 é garantir que as alocações de ativos estejam sempre alinhadas ao perfil de risco e aos objetivos do cliente, identificando desvios e sugerindo ajustes automáticos para otimizar o desempenho da carteira.
2. Contexto e Problema
Cenário Atual
Investidores frequentemente enfrentam desafios para manter suas carteiras de investimento alinhadas com seus objetivos financeiros e perfis de risco. As condições de mercado podem mudar rapidamente, causando desvios nas alocações de ativos que, se não corrigidos, podem comprometer o desempenho da carteira.
Atualmente, a verificação e o ajuste das alocações são processos manuais e demorados, que dependem da análise de dados complexos e da tomada de decisão baseada em critérios subjetivos.
Problemas Identificados
- Risco de desalinhamento: As alocações podem se desviar dos objetivos e do perfil de risco do cliente sem que isso seja rapidamente identificado.
- Tempo de reação: A demora na identificação de desvios pode resultar em decisões de investimento subótimas.
- Complexidade de dados: A análise manual de grandes volumes de dados de mercado e de portfólio pode ser propensa a erros.
- Falta de automação: A ausência de processos automatizados para ajustes nas alocações limita a capacidade de resposta proativa às mudanças de mercado.
3. Impactos Esperados
A implementação deste agente de IA visa alcançar os seguintes resultados:
- Monitoramento contínuo das alocações de ativos em tempo real.
- Identificação proativa de desvios que possam comprometer a estratégia de investimento.
- Sugestões automáticas de ajustes para otimizar o desempenho da carteira.
- Redução do tempo de reação a mudanças de mercado, aumentando a eficiência operacional.
4. Visão Geral da Solução
O agente de IA para monitoramento de alocações de ativos analisa continuamente os dados de mercado e de portfólio, identifica desvios em relação ao perfil de risco e aos objetivos do cliente, e sugere ajustes automáticos. 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 carteiras de investimento.
A solução consiste em um fluxo de automação composto por 5 agentes de IA. O processo inicia com a coleta de dados de carteiras e termina com a geração de alertas e recomendações de ajustes.
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 Carteira e Perfil (RF 1)
| Realizar chamadas às APIs dos sistemas de portfólios para obter dados de alocações e perfil do cliente. |
Agente de Execução de Chamada à API - Mercado e Benchmarks (RF 2)
| Obter cotações, séries históricas e composições de benchmarks de mercado. |
Agente de Análise de Desvios e Conformidade de Risco (RF 3)
| Calcular desvios de alocação e verificar conformidade com perfil de risco. |
Agente de Recomendações de Rebalanceamento (RF 4)
| Gerar propostas de ajustes nas alocações para aderir às metas e limites do perfil. |
Agente de Geração de Alertas e Sumário Executivo (RF 5)
| Transformar a análise e as recomendações em alertas acionáveis e comunicações para stakeholders. |
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 Carteira e Perfil
1.1 Tarefa do Agente
Realizar chamadas às APIs dos sistemas de portfólios para obter posições, alocações, políticas-alvo e perfil/objetivos do cliente.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo parâmetros de entrada para realizar chamadas a APIs de portfólios de investimentos. # 2. Objetivo Realizar chamadas às APIs dos sistemas de portfólios para obter dados de posições, alocações, políticas-alvo e perfil/objetivos do cliente. # 3. Regras que você deve seguir para gerar sua resposta - Execute a chamada à API utilizando os parâmetros fornecidos. - Retorne os dados crus recuperados, sem processamento adicional. - Não utilize LLM para análise dos dados. # 4. Exemplo de Output que você deve produzir JSON com: posições (id_ativo, classe_ativo, quantidade, preço_ultimo, valor, peso_atual), metas (peso_alvo por classe/ativo, bandas_tolerancia_min/max), perfil_risco (nível_risco, limites_vol, limites_exposição, restrições), objetivos (horizonte, meta_retorno, restrições_específicas), parâmetros operacionais (min_trade, buffer_caixa, ativos_restritos).
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 parâmetros via API. 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: O input inicial para o fluxo é um payload contendo client_id(s), portfolio_id(s), data_referencia, entre outros.
- Formatos Suportados: Esse 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 com os dados crus recuperados da chamada à API.
-
Exemplo de Estrutura de Output:
{ "posicoes": [ {"id_ativo": "AAPL", "classe_ativo": "Ações", "quantidade": 50, "preco_ultimo": 150.00, "valor": 7500.00, "peso_atual": 0.15}, {"id_ativo": "GOOGL", "classe_ativo": "Ações", "quantidade": 30, "preco_ultimo": 2800.00, "valor": 84000.00, "peso_atual": 0.70} ], "metas": {"peso_alvo": {"Ações": 0.65, "Renda Fixa": 0.35}, "bandas_tolerancia_min": {"Ações": 0.60, "Renda Fixa": 0.30}, "bandas_tolerancia_max": {"Ações": 0.70, "Renda Fixa": 0.40}}, "perfil_risco": {"nivel_risco": "Moderado", "limites_vol": 0.15, "limites_exposicao": {"Ações": 0.75}}, "objetivos": {"horizonte": "5 anos", "meta_retorno": 0.10} } - Número de caracteres esperado: O JSON final terá um tamanho estimado em torno de 5.000 caracteres.
1.3.3 Parâmetros de Geração
- Modelo: Não se aplica (execução de chamada à API)
- Temperatura: Não se aplica
1.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Executa chamadas a sistemas externos via API.
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 Agente de Análise de Desvios e Conformidade de Risco (RF 3).
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Execução de Chamada à API - Mercado e Benchmarks (RF 2).
RF 2. Agente de Execução de Chamada à API - Mercado e Benchmarks
2.1 Tarefa do Agente
Realizar chamadas às APIs de mercado para obter cotações, séries históricas e composições de benchmarks.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo parâmetros de entrada para realizar chamadas a APIs de mercado. # 2. Objetivo Realizar chamadas às APIs de mercado para obter cotações, séries históricas e composições de benchmarks. # 3. Regras que você deve seguir para gerar sua resposta - Execute a chamada à API utilizando os parâmetros fornecidos. - Retorne os dados crus recuperados, sem processamento adicional. - Não utilize LLM para análise dos dados. # 4. Exemplo de Output que você deve produzir JSON com: preços_atualizados, retornos_históricos por janela, composição_benchmarks (pesos por classe/ativo), taxas livres de risco, custos_transação por ativo/classe (se disponível).
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 (RF 1).
- Tipo do input: Este agente deve ser apto a receber parâmetros prontos, como lista de ativos/benchmarks, janelas_historicas, data_referencia, etc.
- Formatos Suportados: Esse 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é 8.000 caracteres.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com os dados crus recuperados da chamada à API.
-
Exemplo de Estrutura de Output:
{ "precos_atualizados": [ {"ativo": "AAPL", "preco": 150.00}, {"ativo": "GOOGL", "preco": 2800.00} ], "retornos_historicos": {"AAPL": {"21_dias": 0.05, "63_dias": 0.10, "252_dias": 0.20}}, "composicao_benchmarks": {"Ações": 0.70, "Renda Fixa": 0.30}, "taxas_livres_risco": 0.02 } - Número de caracteres esperado: O JSON final terá um tamanho estimado em torno de 3.500 caracteres.
2.3.3 Parâmetros de Geração
- Modelo: Não se aplica (execução de chamada à API)
- Temperatura: Não se aplica
2.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Executa chamadas a sistemas externos via API.
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 Agente de Análise de Desvios e Conformidade de Risco (RF 3).
2.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Análise de Desvios e Conformidade de Risco (RF 3).
RF 3. Agente de Análise de Desvios e Conformidade de Risco
3.1 Tarefa do Agente
Calcular desvios de alocação e verificar conformidade com perfil de risco, metas e bandas de tolerância.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados consolidados dos agentes de API.
# 2. Objetivo
Calcular desvios de alocação e verificar conformidade com perfil de risco, metas e bandas de tolerância.
# 3. Regras que você deve seguir para gerar sua resposta
- Normalize os dados de alocação se necessário.
- Calcule desvios absolutos e relativos.
- Verifique conformidade com bandas de tolerância e perfil de risco.
- Gere um sumário com status geral e métricas de risco.
# 4. Exemplo de Output que você deve produzir
JSON analítico com: por classe/ativo {peso_atual, peso_alvo, banda_min, banda_max, desvio_absoluto, desvio_relativo, em_breach (bool), severidade (baixa/média/alta)}, métricas de risco vs perfil {exposição_por_classe vs limites, proxy_volatilidade_portfolio vs limite_perfil, aderência_benchmark (tracking_drift)}, sumário_portfolio {qtde_breaches, maior_desvio, status_geral (ok/atenção/ação)}. 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 (RF 2).
- Tipo do input: Este agente deve ser apto a receber dados consolidados de alocações atuais, metas, restrições, perfil de risco, objetivos e dados de mercado/benchmarks.
- Formatos Suportados: Esse 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é 15.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON analítico com os resultados da análise de desvios e conformidade de risco.
-
Exemplo de Estrutura de Output:
{ "classe_ativo": "Ações", "peso_atual": 0.70, "peso_alvo": 0.65, "banda_min": 0.60, "banda_max": 0.70, "desvio_absoluto": 0.05, "desvio_relativo": 0.0769, "em_breach": false, "severidade": "baixa", "exposicao_por_classe": 0.70, "proxy_volatilidade_portfolio": 0.15, "tracking_drift": 0.02, "sumario_portfolio": {"qtde_breaches": 0, "maior_desvio": 0.05, "status_geral": "ok"} } - Número de caracteres esperado: O JSON final terá um tamanho estimado em torno de 7.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: Utiliza lógica interna para cálculos de desvios e conformidade.
- Busca Online: Não utiliza.
- Sistemas Externos: Não utiliza.
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 Agente de Recomendações de Rebalanceamento (RF 4).
3.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Recomendações de Rebalanceamento (RF 4).
RF 4. Agente de Recomendações de Rebalanceamento
4.1 Tarefa do Agente
Gerar propostas de ajustes nas alocações com listas de trades que levem o portfólio a aderir às metas e limites do perfil.
4.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um output analítico com dados de desvios e conformidade.
# 2. Objetivo
Gerar propostas de ajustes nas alocações com listas de trades que levem o portfólio a aderir às metas e limites do perfil.
# 3. Regras que você deve seguir para gerar sua resposta
- Escolha a estratégia de rebalanceamento com base na severidade dos desvios.
- Gere uma lista de trades para ajustar as alocações.
- Verifique a conformidade pós-trade com as metas e limites do perfil.
# 4. Exemplo de Output que você deve produzir
JSON com: estrategia_rebalance (full/para_meio_da_banda/minimo_viavel), lista_trades [{ativo_id, lado (comprar/vender), delta_peso, quantidade_estimada, preço_referencia, custo_est_transacao, impacto_turnover}], pós_trade_estimado {pesos_por_classe/ativo, aderência_bandas, buffer_caixa}, checagens_conformidade {restrições_violadas: []}, métricas {turnover_total, custo_total_estimado}. 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 (RF 3).
- Tipo do input: Este agente deve ser apto a receber um output analítico com breaches/severidades, metas/bandas, restrições operacionais, dados de preços atuais, custos de transação e parâmetros do cliente.
- Formatos Suportados: Esse 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é 12.000 caracteres.
4.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com propostas de ajustes nas alocações e lista de trades.
-
Exemplo de Estrutura de Output:
{ "estrategia_rebalance": "full", "lista_trades": [ {"ativo_id": "AAPL", "lado": "comprar", "delta_peso": 0.05, "quantidade_estimada": 10, "preco_referencia": 150.00, "custo_est_transacao": 1.50, "impacto_turnover": 0.005} ], "pós_trade_estimado": {"pesos_por_classe": {"Ações": 0.65}, "aderência_bandas": true, "buffer_caixa": 0.02}, "checagens_conformidade": {"restrições_violadas": []}, "métricas": {"turnover_total": 0.01, "custo_total_estimado": 1.50} } - Número de caracteres esperado: O JSON final terá um tamanho estimado em torno de 4.500 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 ajustes e trades.
- Busca Online: Não utiliza.
- Sistemas Externos: Não utiliza.
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 Agente de Geração de Alertas e Sumário Executivo (RF 5).
4.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Geração de Alertas e Sumário Executivo (RF 5).
RF 5. Agente de Geração de Alertas e Sumário Executivo
5.1 Tarefa do Agente
Transformar a análise e as recomendações em alertas acionáveis e comunicações para stakeholders.
5.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo outputs de análise e recomendações.
# 2. Objetivo
Transformar a análise e as recomendações em alertas acionáveis e comunicações para stakeholders.
# 3. Regras que você deve seguir para gerar sua resposta
- Gere alertas quando houver desvios significativos ou riscos fora dos limites.
- Crie mensagens personalizadas para diferentes stakeholders.
- Inclua KPIs e próximos passos recomendados.
# 4. Exemplo de Output que você deve produzir
JSON de alerta com: severidade_alerta, titulo, motivos_chave, itens_em_breach (lista), KPIs (maior_desvio, qtde_breaches, tracking_drift, turnover_total, custo_total), próximos_passos (aprovar_execução, revisar_parametros, adiar), mensagens_formatadas {cliente_final, assessor}, anexos_dados (ids de relatórios), SLA_sugestao (prazo_resposta). 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 (RF 4).
- Tipo do input: Este agente deve ser apto a receber outputs dos agentes de Análise e Recomendações.
- Formatos Suportados: Esse 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.
5.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON de alerta com detalhes de comunicação e próximos passos.
-
Exemplo de Estrutura de Output:
{ "severidade_alerta": "alta", "titulo": "Desvios Críticos Identificados", "motivos_chave": ["Desvio significativo em Ações", "Risco fora dos limites"], "itens_em_breach": ["Ações"], "KPIs": {"maior_desvio": 0.05, "qtde_breaches": 2, "turnover_total": 0.01, "custo_total": 1.50}, "próximos_passos": "aprovar_execução", "mensagens_formatadas": {"cliente_final": "Recomendamos ajustes imediatos.", "assessor": "Favor revisar os desvios identificados e proceder conforme necessário."}, "anexos_dados": ["relatório_123"], "SLA_sugestao": "24 horas" } - Número de caracteres esperado: O JSON final terá um tamanho estimado em torno de 6.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: Utiliza lógica interna para formatação de alertas e comunicações.
- Busca Online: Não utiliza.
- Sistemas Externos: Não utiliza.
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 é o entregável final e não é passada para outros agentes internos.
5.3.6 Regras de Orquestração e Transição
A execução deste agente finaliza o fluxo. O JSON de alerta gerado é o resultado que deve ser disponibilizado ao usuário.