cbrapi is a Python client for the Central Bank of Russia's web services.
This client provides structured access to the following key data categories from the CBR:
- CURRENCY: Official exchange rates of foreign currencies against the Russian Ruble.
- METALS: Official prices of precious metals.
- RATES: Key interest rates and interbank lending rates.
- RESERVES: Data on international reserves and foreign currency liquidity.
- RUONIA: The Russian Overnight Index Average and related benchmark rates.
Returns a list of all available currency tickers supported by the API.
get_currencies_list()
Retrieves the internal CBR currency code for a given currency ticker.
get_currency_code(ticker: str)
Fetches historical exchange rate data for a specified currency and date range.
get_time_series(symbol: str, first_date: str, last_date: str, period: str = 'D')
Provides historical prices for precious metals (Gold, Silver, Platinum, Palladium).
get_metals_prices(first_date: Optional[str] = None, last_date: Optional[str] = None, period: str = 'D')
IBOR: Interbank Offered Rate.
Retrieves the historical key rate set by the Central Bank of Russia.
get_key_rate(first_date: Optional[str] = None, last_date: Optional[str] = None, period: str = 'D')
Fetches the historical Interbank Offered Rate and related interbank rates.
get_ibor(first_date: Optional[str] = None, last_date: Optional[str] = None, period: str = 'M')
MRRF: International Reserves and Foreign Currency Liquidity.
Provides time series data for International Reserves and Foreign Currency Liquidity.
get_mrrf(first_date: Optional[str] = None, last_date: Optional[str] = None, period: str = 'M')
RUONIA: Russian Overnight Index Average.
ROISfix: Russian Overnight Index Swap Fixing.
Retrieves RUONIA time series data for a specific symbol.
get_ruonia_ts(symbol: str, first_date: Optional[str] = None, last_date: Optional[str] = None, period: str = 'D')
Fetches the historical RUONIA index and averages.
get_ruonia_index(first_date: Optional[str] = None, last_date: Optional[str] = None, period: str = 'D')
Provides the historical RUONIA overnight value.
get_ruonia_overnight(first_date: Optional[str] = None, last_date: Optional[str] = None, period: str = 'D')
Retrieves the historical ROISfix time series data.
get_roisfix(first_date: Optional[str] = None, last_date: Optional[str] = None, period: str = 'D')
pip install cbrapiThe latest development version can be installed directly from GitHub:
git clone https://github.com/mbk-dev/cbrapi.git
cd cbrapi
poetry installimport cbrapi as cbr
cbr.get_key_rate("2017-09-13", "2023-09-13").head()DATE
2017-09-12 9.0
2017-09-13 9.0
2017-09-14 9.0
2017-09-15 9.0
2017-09-16 9.0
Freq: D, Name: KEY_RATE, dtype: float64
cbr.get_metals_prices('2024-01-01', '2025-01-31').head()| GOLD | SILVER | PLATINUM | PALLADIUM | |
|---|---|---|---|---|
| DATE | ||||
| 2024-01-09 | 5886.06 | 66.40 | 2755.41 | 2915.27 |
| 2024-01-10 | 5848.46 | 66.46 | 2701.63 | 2830.97 |
| 2024-01-11 | 5785.30 | 65.55 | 2654.59 | 2845.84 |
| 2024-01-12 | 5749.64 | 65.26 | 2618.17 | 2833.52 |
| 2024-01-13 | 5749.64 | 65.26 | 2618.17 | 2833.52 |
cbr.get_roisfix().head()| RATE_1_WEEK | RATE_2_WEEK | RATE_1_MONTH | RATE_2_MONTH | RATE_3_MONTH | RATE_6_MONTH | |
|---|---|---|---|---|---|---|
| DATE | ||||||
| 2011-04-14 | 3.09 | 3.09 | 3.18 | 3.24 | 3.32 | 3.51 |
| 2011-04-15 | 3.09 | 3.09 | 3.18 | 3.24 | 3.32 | 3.51 |
| 2011-04-16 | 3.09 | 3.09 | 3.18 | 3.24 | 3.32 | 3.51 |
| 2011-04-17 | 3.08 | 3.09 | 3.19 | 3.24 | 3.31 | 3.50 |
| 2011-04-18 | 3.08 | 3.09 | 3.19 | 3.24 | 3.31 | 3.49 |
MIT