2.2

🔶 Configurar Interactive Brokers

Flex Query e sincronização automática

1. Visão Geral

O Interactive Brokers (IBKR) oferece a integração mais abrangente.

✅ Processo:
1. Criar Flex Query
2. Baixar e importar o Flex Query como XML para cada ano
3. Obter atualizações via Flex Sync
⚠️ Importante:
O Flex Sync só recupera atualizações dos últimos dias. A importação XML constrói o histórico completo. Sem histórico completo, o sistema não pode avaliar adequadamente os trades (ex.: estratégias de opções, campanhas, ganhos forex).

2. O que é um Flex Query?

Um Flex Query é um relatório personalizável do Interactive Brokers. Você define uma vez quais dados quer exportar, depois pode recuperar este relatório a qualquer momento - manual ou automaticamente.

Benefícios:
• Todos os trades, dividendos, posições em um relatório
• Sincronização automática possível
• Dados dos últimos 365 dias disponíveis
• Sem entrada manual de dados necessária

Guia Passo a Passo

1

Passo 1: Criar Flex Query no IBKR

1. Fazer login no IBKR:
Vá para interactivebrokers.com e faça login na sua conta.

2. Abrir as Flex Queries:
Navegue até: Performance & Reports → Flex Queries

3. Escolher o tipo de consulta correto:
A página Flex Queries mostra dois tipos de consulta, um abaixo do outro. Somente o primeiro está correto:
✅ Activity Flex Query
Este é o correto. Clique no ➕ no canto superior direito deste painel“Create”.
❌ Trade Confirmation Flex Query
Não use este! Ele contém apenas confirmações de negociações. O sTraderZ.com não consegue ler nenhum dado dele — a importação ficaria completamente vazia.
Enquanto você ainda não tiver criado nenhuma consulta, o painel Activity Flex Query mostra apenas um aviso de que não há modelos. O ➕ continua lá — no canto superior direito desse painel.

ℹ️ Você não precisa do botão “Configure with AI” — basta seguir os passos 2 e 3 abaixo, que listam todas as configurações.
2

Passo 2: Configurar Flex Query

Nome da consulta: o nome que você quiser, ex.: “SingularityTrader”.

Depois defina a configuração de entrega e a configuração geral exatamente assim:
0 de 11 configurações concluídas
3

Passo 3: Selecionar Seções do Relatório

Ative todas as seguintes seções no Flex Query. A lista está aqui para você ir marcando — o seu progresso é salvo mesmo que você recarregue a página.
0 de 20 seções ativadas
⚠️ Campos vs. opções de tipo — a diferença decisiva

Campos (a lista numerada dentro de cada seção): use sempre “Select All” — quanto mais, melhor. Campos que faltam são a causa mais comum de erros de importação.

Opções de tipo (a linha “Options:” no topo de uma seção): aqui vale o contrário — escolha apenas um nível de detalhe, exatamente o indicado acima. Cada nível adicional (“Summary”, “Orders”, “Symbol Summary”, “Lots”) descreve o mesmo evento uma segunda vez em outra linha. O sTraderZ.com não avalia o nível de detalhe, ele processa cada linha — por isso vários níveis podem levar a negociações, taxas e posições contadas em dobro. Exceção: “Closed Lots” e “Wash Sales” na seção Operações não são apenas redundantes, eles têm de estar desativados.
4

Passo 4: Salvar Consulta

Clique em "Continuar" e depois em "Criar".

Após a criação, você verá sua consulta na lista. Anote o ID da Consulta - você precisará dele em breve.
5

Passo 5: Gerar Flex Token

Para a recuperação automática você precisa de uma chave de acesso. A IBKR chama-a de token — no sTraderZ.com você vai inseri-la mais tarde como Flex Token.

1. Abrir o Flex Web Service:
Na página Flex Queries, role até o fim, até o bloco “Flex Web Service Configuration”, e clique em “Configure” (⚙️).

2. Ativar o serviço:
Na página “Configure Flex Web Service”, o Flex Web Service status tem de estar ativado. Se estiver desligado, o sTraderZ.com não consegue buscar a consulta — a IBKR recusa a solicitação.

3. Gerar o token:
Na seção “Generate New Token”:
0 de 3 configurações concluídas
⚠️ O token é exibido apenas uma vez
Copie-o imediatamente e guarde-o em segurança. Se você o perder, terá de gerar um novo — e isso invalida o token antigo na hora. Qualquer sincronização que ainda use o token antigo falhará a partir desse momento.

O token é válido por 1 ano. Após a expiração, gere um novo e guarde-o na configuração da sua conta.
6

Passo 6: Exportação XML para Todos os Anos

Exporte o Flex Query como XML para cada ano do seu histórico de trading:

1. Abrir Flex Query:
No IBKR: Desempenho e Relatórios → Flex Queries

2. Ajustar Intervalo de Datas:
Edite a consulta e defina o intervalo de datas para um ano civil (ex.: 01/01/2023 - 31/12/2023)

3. Executar Consulta:
Clique em "Executar" e baixe o arquivo XML

4. Repetir para Cada Ano:
Repita os passos 2-3 para todos os anos em que negociou no IBKR (ex.: 2021, 2022, 2023, 2024).
7

Passo 7: Importação XML do Histórico

Importe todos os arquivos XML baixados no Singularity Trader:

1. Abrir Seção de Importação:
Vá para Contas → Sua Conta IBKR → Configuração → "Enviar XML"

2. Ano Mais Antigo Primeiro:
Comece com o arquivo XML mais antigo (ex.: 2021) e avance cronologicamente

3. Importar Todos os Anos:
Importe todos os arquivos XML sequencialmente até o ano atual

⚠️ Importante: Este passo é essencial! Sem histórico completo, estratégias de opções, campanhas de trades e ganhos forex não podem ser calculados corretamente.
8

Passo 8: Configurar no Singularity Trader

1. Abrir Configuração da Conta:
Vá para Contas → Sua Conta IBKR → Configuração

2. Inserir Dados do Flex Query:
ID do Flex Query: O ID de 7 dígitos da consulta na IBKR (exibido na visão geral da consulta, ex.: 1570627)
Flex Token: O token gerado no passo 5

3. Salvar e Testar:
Clique em “Salvar” e depois em “Sincronizar Agora” para testar.

Sincronização Automática

Após a configuração bem-sucedida, seus trades são sincronizados automaticamente todos os dias. Você não precisa fazer mais nada!

O que acontece durante a sincronização:
• Novos trades são importados
• Posições são atualizadas
• Dividendos são registrados
• Estratégias de opções são reconhecidas
• Ganhos forex são calculados (FIFO)

Você sempre pode sincronizar manualmente a qualquer momento se quiser os dados mais recentes imediatamente.

12. Reintento automático em erros temporários

As consultas IBKR Flex podem falhar pontualmente por vários motivos (p. ex. erro temporário do servidor da IBKR, timeout de rede, query em processamento). O Singularity Trader possui uma fila de reintento automática:

• Se uma sincronização falhar, ela é repetida automaticamente até 3 vezes (com intervalo exponencial).
• Somente quando todas as tentativas falham aparece uma entrada CRITICAL no log do sistema e uma notificação.
• Problemas temporários geralmente se resolvem sozinhos, sem que você precise intervir.

Você pode ver o estado atual de sincronização na seção Contas — verde = último sucesso, amarelo = reintento em andamento, vermelho = falhou após 3 tentativas.

13. Alternativa: importação manual de XML

Se não desejar sincronização automática, você pode exportar a Flex Query manualmente:

1. Na IBKR: Flex Queries → "Run" ao lado da sua query
2. Baixar: Salvar o arquivo XML
3. Enviar: Em Singularity Trader → Contas → Configuração → "Enviar XML"

Este método também é necessário para dados históricos (> 365 dias), pois o Flex Sync só alcança 1 ano atrás.

14. Dados importados da IBKR

Totalmente suportado:
• Trades de ações (compra/venda)
• Trades de opções com Greeks
• Futuros e Forex
• Dividendos (bruto, líquido, imposto retido na fonte)
• Juros (crédito/débito)
• Exercícios e atribuições de opções
• Splits de ações e fusões
• Statement of Funds para FIFO cambial

Reconhecido automaticamente:
• Estratégias de opções (Spreads, Iron Condors, etc.)
• Covered Calls / Cash-Secured Puts
• Campanhas de trading
• Ganhos cambiais conforme § 23 EStG

15. 📥 Dados do TradingLogbook? Traga suas tags.

📥 Você vem do TradingLogbook?

Você pode transferir suas estratégias tagueadas para os trades já importados — símbolo + data de abertura são suficientes. Pronto em 3 minutos.

Para a migração em 3 passos

⚠️ Solução de problemas

"Token expirado":
Gere um novo token na IBKR e insira-o na configuração.

"Query não encontrada":
Verifique se o ID da query está correto e se a query está ativa.

"Sem dados":
Certifique-se de que todas as seções necessárias estejam ativadas na query.

"Erro ao importar":
Verifique o log de importação para detalhes. Causa frequente: campos ausentes na query.

⚠️ Recarregar trades históricos faltantes (⚠️ badge nas posições)

O problema:
No painel ou nas listas de posições aparece um símbolo ⚠️ ao lado do nome da conta em uma posição. O tooltip exibe "Dados de trades ausentes — Nenhuma transação foi importada para esta posição. Por isso a estratégia não pode ser reconhecida automaticamente."

A causa:
A posição em si é conhecida via snapshot do portfólio da IBKR, mas os trades de abertura estão antes do dia de trading mais antigo importado até agora. Isso é típico em LEAPS (opções de longo prazo) abertas meses ou anos antes do primeiro Flex Sync.

✅ A solução:
A partir da Flex Query existente, iniciar pontualmente uma exportação ad-hoc com intervalo de datas histórico, baixar como XML e enviar via importação XML. Não é necessário criar uma nova Flex Query!
Passo a passo:
1. Iniciar a exportação histórica na IBKR
• Localizar a Flex Query existente → clicar em Run
• Alterar o período para Custom Date Range
• De: tão atrás quanto necessário (p. ex. 01/01/2024)
• Até: um dia antes do trade mais antigo já importado
• Formato: XML → confirmar Run

2. Baixar o arquivo XML e salvar localmente

3. Enviar no Singularity Trader
• Contas → Conta IBKR → "Configurar IBKR" → XML Import

4. O que acontece durante a importação
• Apenas novos trades são importados (sem duplicatas)
• Estratégias, campanhas e Trade-Cycles são recalculados

5. Verificar o resultado
• Recarregar o painel — o badge ⚠️ deve ter desaparecido

Se o ⚠️ persistir: Os trades de abertura estão ainda mais atrás → iniciar outro run com uma data de início anterior.

18. ✅ Conferência final: como fica a consulta pronta

Depois de salvar, a IBKR mostra uma página de resumo (“Review your Activity Flex Query”). Compare-a com esta referência — é assim que a sua consulta tem de estar quando tudo está correto.
SeçãoOpções de tipo (linha “Options:”)
Juros acumulados
Transações em dinheiroTodos os subtipos (Dividends, Payment In Lieu Of Dividends, Withholding Tax, Deposits & Withdrawals, Broker/Bond Interest, Other Fees, Other Income …) + Detail
Taxas de CFD
Relatório de caixa
Transferências de negociações de entrada/saídaTrade Transfers
Detalhes de P/L de ForexTransaction
Conceder atividade
Informações sobre instrumento financeiro
Extrato de recursosBase Currency Summary, Currency Breakout, Include Starting and Ending Balances
Operações societáriasDetail
Informações da conta
Valor patrimonial líquido (VPL) na base
Posições em abertoSummary (sem “Lots”)
Dividendos acumulados em aberto
Exercícios, atribuições e vencimentos de opções(a seção mais esquecida!)
Posições do período anterior
OperaçõesApenas Executionsem “Closed Lots”, sem “Wash Sales”, sem “Orders”/“Asset Class”/“Symbol Summary”
Taxas de transaçãoApenas Execution (sem “Summary” adicional)
TransferênciasTransfer (sem “Lots”)
Variação nos dividendos acumuladosDetail (sem “Summary” adicional)

Configuração de entrega e configuração geral:

ConfiguraçãoValor
ContasO ID da sua conta (ex.: U1234567)
FormatoXML
PeríodoÚltimos 30 dias corridos
Lucros e perdasPredefinido
Incluir compensação de negociação/cancelar pares?Não
Incluir taxas de câmbio?Não
Incluir campos de trilha de auditoria?Não
Exibir alias da conta no lugar do ID da conta?Não
Dividir por dia?Não
Formato de datayyyyMMdd
Formato de horaHHmmss
Separador de data/hora; (ponto e vírgula)
💡 Anote o Query ID
A mesma visão geral mostra o Query ID no topo (um número de 7 dígitos, ex.: 1570627). Você vai precisar dele junto com o token no passo 8.