Como foi feito
Nada aqui fica guardado em servidor. A cada acesso, o seu navegador chama a API pública de Expectativas de Mercado do Banco Central, a mesma do Relatório Focus, que libera chamadas de qualquer site (CORS), e monta os gráficos na hora. São cinco chamadas:
1. A evolução de um indicador
GET https://olinda.bcb.gov.br/olinda/servico/Expectativas/versao/v1/odata/ExpectativasMercadoAnuais
?$filter=Indicador eq 'IPCA' and baseCalculo eq 0
and Data ge '2025-11-06' and Data le '2026-11-06'
and DataReferencia ge '2026' and DataReferencia le '2029'
&$select=Data,DataReferencia,Mediana,Minimo,Maximo,numeroRespondentes
&$orderby=Data&$top=100000&$format=json
2. O Focus de um dia, para o resumo e a dispersão
GET https://olinda.bcb.gov.br/olinda/servico/Expectativas/versao/v1/odata/ExpectativasMercadoAnuais
?$filter=baseCalculo eq 0 and Data ge '2026-07-24' and Data le '2026-10-30'
and (DataReferencia eq '2026' or DataReferencia eq '2027')
and (Indicador eq 'IPCA' or Indicador eq 'PIB Total' or Indicador eq 'Câmbio' or ...)
&$select=Indicador,IndicadorDetalhe,Data,DataReferencia,Mediana&$format=json
3. A Selic reunião a reunião
GET https://olinda.bcb.gov.br/olinda/servico/Expectativas/versao/v1/odata/ExpectativasMercadoSelic
?$filter=baseCalculo eq 0 and Data ge '2026-09-25' and Data le '2026-10-30'
&$format=json
4. As projeções mês a mês
GET https://olinda.bcb.gov.br/olinda/servico/Expectativas/versao/v1/odata/ExpectativaMercadoMensais
?$filter=baseCalculo eq 0 and Data eq '2026-10-30'
&$format=json
5. A meta Selic vigente (série 432 do SGS)
GET https://api.bcb.gov.br/dados/serie/bcdata.sgs.432/dados?formato=json&dataInicial=20/09/2026&dataFinal=30/10/2026
Cada registro traz Mediana, Media, DesvioPadrao, Minimo, Maximo e numeroRespondentes: são estatísticas das projeções das instituições, não a projeção de cada uma.
As regras da API que o dashboard respeita
- A data é texto, no formato
AAAA-MM-DDe entre aspas simples. Emdd/mm/aaaaa API não dá erro: devolve uma lista vazia. Sem as aspas, responde 400 (The types 'Edm.String' and 'Edm.Date' are not compatible). - Fim de semana, feriado, data futura, data que não existe e intervalo invertido voltam vazios, sem erro. Por isso o dashboard valida o período antes de chamar.
- O Focus sai uma vez por semana. As estatísticas são de cada dia útil, mas a semana inteira entra no primeiro dia útil da semana seguinte, junto com o relatório: numa sexta-feira, o dado mais recente ainda é o da sexta anterior.
- O nome do indicador tem que ser exato, com acento e maiúsculas:
'Câmbio','PIB Total','Dívida líquida do setor público'. Com'ipca', a lista volta vazia. - O recurso mensal tem o nome no singular (
ExpectativaMercadoMensais); os outros estão no plural (ExpectativasMercadoAnuais,ExpectativasMercadoSelic). Trocar um pelo outro dá erro 400. - Base de cálculo:
baseCalculo eq 0usa as respostas dos últimos 30 dias, a base do relatório;1usa só as dos últimos 5 dias úteis e reage mais rápido. A base 0 começa em 03/01/2000; a 1, em 02/01/2014 (na Selic por reunião, em 31/03/2021). - Cada ano entra na pesquisa quatro anos antes e sai no começo do janeiro seguinte: as projeções para 2026 começaram em 11/01/2022, e as de 2025 foram até 08/01/2026.
- A balança comercial vem em três linhas, separadas pelo campo
IndicadorDetalhe:Saldo,ExportaçõeseImportações. O resumo usa o saldo. - Cada recurso tem os seus campos: no anual,
DataReferenciaé o ano ('2026'); no mensal, mês e ano ('10/2026'); o da Selic troca esse campo porReuniao('R7/2026', a 7ª reunião do Copom no ano). $topgrande não é problema: 14.640 registros voltam em menos de um segundo, e cinco anos de um indicador somam cerca de 400 KB.- A SGS às vezes responde 304 sem corpo, mesmo a um pedido que não perguntou se o dado mudou: aconteceu em 06/11/2026 com uma janela de datas da série 432, para qualquer cliente. O dashboard pede a meta Selic sem cache e, num 304, tenta outra janela de datas, que para o servidor é outra URL.
Os cálculos
- Na semana e em 4 semanas: a mediana mais recente contra a última até 7 e até 28 dias antes. No resumo, as três colunas de cada ano são essas mesmas datas.
- Mudança: em pontos percentuais (p.p.) para taxas (%, % ao ano, % do PIB); em % para o câmbio; em US$ bilhões para conta corrente, balança e investimento direto, que podem ser negativos.
- Semana: compara a mediana com a da semana anterior, arredondada a 2 casas como aparece na tabela; o número entre parênteses conta há quantas semanas seguidas o movimento se repete (até 13).
- Selic em degraus: a taxa decidida numa reunião vale até a reunião seguinte. O ponto "Atual" é a meta vigente, da série 432 do SGS.
- Mês a mês: a cor vai do azul (deflação) ao laranja (inflação), com a escala até o maior valor das linhas de inflação; câmbio e desocupação ficam sem cor.
Documentação oficial: API de Expectativas de Mercado (Olinda) e Dados Abertos do Banco Central.