brfinance is an R package that brings together official Brazilian macroeconomic data and practical financial calculators in a simple, ready-to-use interface.
If you work with Brazilian data, interest rates, inflation, or financial math, this package is for you.
With brfinance, you can:
- Access official Brazilian macroeconomic indicators (BCB & IBGE)
- Run financial calculations (NPV, IRR, PV, FV, PMT, rates)
- Plot key indicators with one line of code
- Use Portuguese or English outputs seamlessly
No APIs. No scraping. No manual cleaning.
install.packages("brfinance")
# Or development version from GitHub
install.packages("devtools")
devtools::install_github("efram2/brfinance")
library(brfinance)Inflation (IPCA)
plot_inflation_rate(
get_inflation_rate("2020", "2024")
)SELIC interest rate
plot_selic_rate(
get_selic_rate(2020, 2024)
)Unemployment rate
plot_unemployment(
get_unemployment("2019", "2024")
)Compare multiple indicators in one chart
You can compare different economic indicators using: 1. raw values 2. indexed series (base = first observation) 3. percentage change from the first observation
- Want to analyze how different economic indicators evolve together?
- Use plot_series_comparison() to compare multiple time series in a single, clean visualization.
plot_series_comparison(
data_list = list(
"SELIC" = get_selic_rate(2020, 2024),
"IPCA" = get_inflation_rate("2020", "2024"),
"Unemployment" = get_unemployment("2020", "2024")
),
y_vars = rep("value", 3),
date_vars = rep("date", 3),
scale_type = "index",
title = "Brazilian Economic Indicators",
subtitle = "Indexed comparison (base = first observation)"
)Financial Calculators (minimalista)
# Net Present Value
calc_npv(0.1, c(-1000, 300, 400, 500))
# Internal Rate of Return
calc_irr(c(-1000, 300, 400, 500))
# Loan payment
calc_pmt(rate = 0.02, n = 24, pv = 10000)get_inflation_rate()→ Retrieves Brazil’s official inflation rate (IPCA)get_selic_rate()→ Retrieves the SELIC interest rateget_cdi_rate()→ Retrieves the CDI interest rateget_exchange_rate()→ Retrieves official exchange ratesget_gdp_growth()→ Retrieves GDP growth ratesget_unemployment()→ Retrieves unemployment rate from PNAD Contínuaget_sgs_series()→ Retrieves any Central Bank (SGS) time series by code
All get_* functions support flexible date inputs: "YYYY",
"YYYY-MM", or "YYYY-MM-DD".
plot_inflation_rate()→ Plots IPCA inflation over timeplot_selic_rate()→ Plots the SELIC interest rateplot_cdi_rate()→ Plots the CDI interest rateplot_exchange_rate()→ Plots exchange rate time seriesplot_gdp_growth()→ Plots GDP growth over timeplot_unemployment()→ Plots unemployment rate time seriesplot_series_comparison()→ Compares multiple economic indicators in one chart
calc_pv()→ Present Valuecalc_fv()→ Future Valuecalc_npv()→ Net Present Valuecalc_irr()→ Internal Rate of Returncalc_pmt()→ Loan payment calculationcalc_rate()→ Interest rate calculationcalc_nper()→ Number of periodscalc_compound_interest()→ Compound interest calculationcalc_continuous_interest()→ Continuous compoundingcalc_rule72()→ Rule of 72 approximationcalc_rule114()→ Rule of 114 approximation
All main functions support bilingual output:
- language = “eng” (default): Returns English column names and labels
- language = “pt”: Returns Portuguese column names and labels
All data come from official Brazilian institutions:
- Central Bank of Brazil (BCB / SGS)
- IBGE (SIDRA / PNAD Contínua)
Suggestions, feature requests, and pull requests are welcome!



