Package {solvency2rfr}


Title: 'EIOPA' Risk-Free Interest Rate Term Structures for Solvency II
Version: 0.1.0
Description: Downloads and parses the risk-free interest rate ('RFR') term structures published monthly by the European Insurance and Occupational Pensions Authority ('EIOPA') for Solvency II calculations. Provides a tidy data frame interface to the data, accessed via the official 'EIOPA' feed at https://www.eiopa.europa.eu/feed/53/rss_en.
Depends: R (≥ 4.1.0)
License: MIT + file LICENSE
Encoding: UTF-8
Language: en-US
RoxygenNote: 8.0.0
URL: https://github.com/JanWein/solvency2rfr
BugReports: https://github.com/JanWein/solvency2rfr/issues
Imports: httr2 (≥ 1.0.0), readxl (≥ 1.4.0), tibble (≥ 3.2.0), xml2 (≥ 1.3.0)
Suggests: knitr, rmarkdown, testthat (≥ 3.0.0), withr
Config/testthat/edition: 3
NeedsCompilation: no
Packaged: 2026-05-11 07:54:25 UTC; 1003177
Author: Jan-Hendrik Weinert ORCID iD [aut, cre]
Maintainer: Jan-Hendrik Weinert <janhendrikweinert@gmail.com>
Repository: CRAN
Date/Publication: 2026-05-14 09:50:06 UTC

solvency2rfr: EIOPA Risk-Free Interest Rate Term Structures for Solvency II

Description

Downloads and parses the risk-free interest rate (RFR) term structures published monthly by the European Insurance and Occupational Pensions Authority (EIOPA) for Solvency II calculations. Provides a tidy tibble interface to the data, accessed via the official EIOPA RSS feed at https://www.eiopa.europa.eu/feed/53/rss_en.

Author(s)

Maintainer: Jan-Hendrik Weinert janhendrikweinert@gmail.com (ORCID)

Authors:

See Also

Useful links:


List available EIOPA RFR publications

Description

Fetches the EIOPA RSS feed and returns a tibble of all available risk-free rate publications with their reference dates and download URLs.

Usage

rfr_index(feed_url = rfr_feed_url())

Arguments

feed_url

The URL of the EIOPA RSS feed. Defaults to the official feed URL. Override only for testing.

Details

The EIOPA RSS feed contains monthly RFR publications as well as background documents (technical documentation, UFR reports, etc.). rfr_index() filters the feed to return only the monthly ZIP publications and excludes PDF, XLSX, and other document types.

An internet connection is required.

Value

A tibble::tibble() with columns:

Examples


idx <- rfr_index()
head(idx)


Download EIOPA RFR term structures as a tidy tibble

Description

Downloads the monthly ZIP file for a given reference date, extracts the Term_Structures.xlsx file, and returns the selected interest rate curve as a tidy tibble.

Usage

rfr_term_structures(
  date = NULL,
  curve = "spot_no_VA",
  feed_url = rfr_feed_url()
)

Arguments

date

A Date object or a character string in "YYYY-MM-DD" format specifying the reference date (end of month). Use rfr_index() to see available dates. Defaults to the most recent available publication.

curve

One of "spot_no_VA" (default), "spot_with_VA", "spot_no_VA_up", "spot_no_VA_down", "spot_with_VA_up", "spot_with_VA_down". Selects which rate curve to return.

feed_url

The URL of the EIOPA RSS feed. Rarely needs to be changed.

Details

The EIOPA RFR term structures are published around the 5th of each month for the previous month-end. An internet connection is required.

Rates are returned as decimals, not percentages.

Value

A tibble::tibble() with columns:

See Also

rfr_index() to list all available publications.

Examples


# Get the most recent term structures
rfr <- rfr_term_structures()
head(rfr)

# Get a specific month
rfr <- rfr_term_structures("2026-04-30")

# Get the curve including volatility adjustment
rfr_va <- rfr_term_structures(curve = "spot_with_VA")