Retrieve PTAX foreign exchange reference rates from the Banco Central do Brasil Olinda API. The rates are the closing (Fechamento) bid and ask quotations expressed in Brazilian real (BRL) per unit of the foreign currency.
Arguments
- currency
(
character())
One or more ISO 4217 currency codes (e.g."USD",c("USD", "EUR")). Seebcb_currencies()for the available currencies.- start_date
(
Date(1)|character(1))
Start date of the data (e.g.,"2024-01-01").- end_date
(
NULL|Date(1)|character(1))
End date of the data, in the same format as start_date. IfNULL, thestart_dateis used. DefaultNULL.
Value
A data.table::data.table() with columns date, currency, bid, and ask.
See also
Other data:
banxico_data(),
bbk_data(),
bbk_series(),
bcb_data(),
bcb_expectations(),
bcb_inflation(),
bcb_selic(),
bcb_top5(),
bde_data(),
bde_latest(),
bdf_codelist(),
bdf_data(),
bdf_dataset(),
bdp_data(),
bis_data(),
boc_data(),
boe_data(),
boi_data(),
boj_data(),
cnb_czeonia(),
cnb_data(),
cnb_fx_other_rates(),
cnb_fx_rates(),
cnb_pribor(),
ecb_data(),
nbb_data(),
nbp_fx_rates(),
nbp_gold(),
nob_data(),
onb_data(),
snb_data(),
srb_cross_rates(),
srb_data()
Examples
# \donttest{
# fetch USD/BRL closing rates
bcb_fx_rates("USD", start_date = "2024-01-01", end_date = "2024-01-31")
#> Error in req_perform(req_error(req_url_query(req_url_path_append(base_request(url), resource), ..., `$format` = "json"), body = bcb_error_body)): HTTP 403 Forbidden.
#> ℹ <!doctype html> <html lang="en">
#>
#> <head> <meta charset="utf-8"> <meta name="viewport"
#> content="width=device-width, initial-scale=1">
#>
#> <link href="https://www.bcb.gov.br/svr_css/bootstrap.min.css" rel="stylesheet">
#>
#> <link rel="stylesheet"
#> href="https://fonts.googleapis.com/css?family=Cormorant+Garamond:300,300i,400,400i,500,500i,600,600i,700,700i&display=swap">
#> <link rel="stylesheet"
#> href="https://fonts.googleapis.com/css?family=Ubuntu:300,300i,400,400i,500,500i,700,700i&display=swap">
#>
#> <link rel="stylesheet" href="https://www.bcb.gov.br/svr_css/theme.css">
#>
#> <title>Banco Central do Brasil</title> </head>
#>
#> <body> <header> <h1 class="logo">Banco Central do Brasil</h1> </header> <div
#> id="menu"></div> <section class="content"> <div class="container"> <h2
#> class="cormorant">Requisição inválida</h2>
#>
#> <p>Seu "browser" (ou o servidor proxy) enviou uma requisição inválida ao
#> servidor.</p>
#>
#> <div class="mb-4 text-danger"> <p>A sua requisição foi rejeitada.<br> Código de
#> erro: 20261009T085847Z-16d5d5b65d9h7vh2hC1DM18htw00000016qg000000009kaq<br>
#> Data e hora do erro: <span class="error-date-time"></span> </p> <p>Caso
#> necessite de ajuda entre em contato com a Central de Atendimento do Banco
#> Central: +55 61 3414-2156. </p> </div>
#>
#> <div class="fst-italic"> <h3 class="h2 cormorant">Bad request</h3>
#>
#> <p class="">Your browser (or proxy) sent a request that this server could not
#> understand.</p>
#>
#> <div class="text-danger"> <p>Your request was rejected.<br> Error code:
#> 20261009T085847Z-16d5d5b65d9h7vh2hC1DM18htw00000016qg000000009kaq<br> Error
#> date and time: <span class="error-date-time"></span></p> <p>If you need help,
#> contact the Central Bank Call Center: +55 61 3414-2156.</p> </div> </div>
#> </div> </section> <footer role="contentinfo"> <a name="inicioRodape"
#> id="inicioRodape"></a> <div class="container"> <span class="line"> <!--
#> chanfro --> </span> <div class="content d-sm-flex justify-content-sm-between
#> pr-sm-5"> <div class="missao mb-2 mb-sm-0"> Assegurar a estabilidade do poder
#> de compra da moeda e um sistema financeiro sólido e eficiente </div> <div
#> class="infos"> <ul class="list-inline text-sm-right"> <li
#> class="list-inline-item">Atendimento: 145 (custo de ligação local)</li> <li
#> class="list-inline-item"><a bcblink
#> href="https://www.bcb.gov.br/acessoinformacao/faleconosco">Fale conosco</a>
#> </li> </ul> <ul class="list-inline text-sm-right mb-0"> <li
#> class="list-inline-item"><a bcblink
#> href="https://www.bcb.gov.br/acessoinformacao/politicaprivacidade">Política
#> de privacidade</a></li> <li class="list-inline-item sem-separador"><a bcblink
#> href="https://www.bcb.gov.br/acessoinformacao/politica_acessibilidade">Política
#> de acessibilidade</a></li> <li class="list-inline-item">© Banco Central do
#> Brasil - <a bcblink
#> href="https://www.bcb.gov.br/acessoinformacao/direitosautorais">Todos os
#> direitos reservados</a></li> </ul> </div> </div> </div> </footer>
#>
#> <script src="https://www.bcb.gov.br/svr_js/bootstrap.bundle.min.js"></script>
#>
#> <script> let elErrorDateTime = document.querySelectorAll('.error-date-time')
#> elErrorDateTime.forEach(e => { const actualDateText =
#> document.createTextNode(new Date) e.append(actualDateText) }) </script>
#> </body>
#>
#> </html>
# fetch multiple currencies
bcb_fx_rates(c("USD", "EUR"), start_date = "2024-01-01", end_date = "2024-01-31")
#> Error in req_perform(req_error(req_url_query(req_url_path_append(base_request(url), resource), ..., `$format` = "json"), body = bcb_error_body)): HTTP 403 Forbidden.
#> ℹ <!doctype html> <html lang="en">
#>
#> <head> <meta charset="utf-8"> <meta name="viewport"
#> content="width=device-width, initial-scale=1">
#>
#> <link href="https://www.bcb.gov.br/svr_css/bootstrap.min.css" rel="stylesheet">
#>
#> <link rel="stylesheet"
#> href="https://fonts.googleapis.com/css?family=Cormorant+Garamond:300,300i,400,400i,500,500i,600,600i,700,700i&display=swap">
#> <link rel="stylesheet"
#> href="https://fonts.googleapis.com/css?family=Ubuntu:300,300i,400,400i,500,500i,700,700i&display=swap">
#>
#> <link rel="stylesheet" href="https://www.bcb.gov.br/svr_css/theme.css">
#>
#> <title>Banco Central do Brasil</title> </head>
#>
#> <body> <header> <h1 class="logo">Banco Central do Brasil</h1> </header> <div
#> id="menu"></div> <section class="content"> <div class="container"> <h2
#> class="cormorant">Requisição inválida</h2>
#>
#> <p>Seu "browser" (ou o servidor proxy) enviou uma requisição inválida ao
#> servidor.</p>
#>
#> <div class="mb-4 text-danger"> <p>A sua requisição foi rejeitada.<br> Código de
#> erro: 20261009T085847Z-16d5d5b65d9h7vh2hC1DM18htw00000016qg000000009kax<br>
#> Data e hora do erro: <span class="error-date-time"></span> </p> <p>Caso
#> necessite de ajuda entre em contato com a Central de Atendimento do Banco
#> Central: +55 61 3414-2156. </p> </div>
#>
#> <div class="fst-italic"> <h3 class="h2 cormorant">Bad request</h3>
#>
#> <p class="">Your browser (or proxy) sent a request that this server could not
#> understand.</p>
#>
#> <div class="text-danger"> <p>Your request was rejected.<br> Error code:
#> 20261009T085847Z-16d5d5b65d9h7vh2hC1DM18htw00000016qg000000009kax<br> Error
#> date and time: <span class="error-date-time"></span></p> <p>If you need help,
#> contact the Central Bank Call Center: +55 61 3414-2156.</p> </div> </div>
#> </div> </section> <footer role="contentinfo"> <a name="inicioRodape"
#> id="inicioRodape"></a> <div class="container"> <span class="line"> <!--
#> chanfro --> </span> <div class="content d-sm-flex justify-content-sm-between
#> pr-sm-5"> <div class="missao mb-2 mb-sm-0"> Assegurar a estabilidade do poder
#> de compra da moeda e um sistema financeiro sólido e eficiente </div> <div
#> class="infos"> <ul class="list-inline text-sm-right"> <li
#> class="list-inline-item">Atendimento: 145 (custo de ligação local)</li> <li
#> class="list-inline-item"><a bcblink
#> href="https://www.bcb.gov.br/acessoinformacao/faleconosco">Fale conosco</a>
#> </li> </ul> <ul class="list-inline text-sm-right mb-0"> <li
#> class="list-inline-item"><a bcblink
#> href="https://www.bcb.gov.br/acessoinformacao/politicaprivacidade">Política
#> de privacidade</a></li> <li class="list-inline-item sem-separador"><a bcblink
#> href="https://www.bcb.gov.br/acessoinformacao/politica_acessibilidade">Política
#> de acessibilidade</a></li> <li class="list-inline-item">© Banco Central do
#> Brasil - <a bcblink
#> href="https://www.bcb.gov.br/acessoinformacao/direitosautorais">Todos os
#> direitos reservados</a></li> </ul> </div> </div> </div> </footer>
#>
#> <script src="https://www.bcb.gov.br/svr_js/bootstrap.bundle.min.js"></script>
#>
#> <script> let elErrorDateTime = document.querySelectorAll('.error-date-time')
#> elErrorDateTime.forEach(e => { const actualDateText =
#> document.createTextNode(new Date) e.append(actualDateText) }) </script>
#> </body>
#>
#> </html>
# }