Learn R Programming

⚠️There's a newer version (1.3.7) of this package.Take me there.

Purpose

  • Purposely designed functions for trading, trading analytics and risk practitioners in Commodities and Finance.
  • Build to support delivery of Finance classes from one of the co-authors of RTL at the Alberta School of Business.

Features

  • Historical forward curves charting.

  • Calendars and expiry dates data objects for a wide range of commodity futures contracts.

  • rolladjust to adjust continuous contracts returns for roll adjustments using expiries above.

  • Morningstar Marketplace API functions getPrice(), getPrices() and getCurve() using your own Morningstar credentials. Current feeds included:

    • ICE_EuroFutures and ICE_EuroFutures_continuous.
    • CME_NymexFutures_EOD and CME_NymexFutures_EOD_continuous.
    • CME_NymexOptions_EOD.
    • CME_CbotFuturesEOD and CME_CbotFuturesEOD_continuous.
    • CME_Comex_FuturesSettlement_EOD and CME_Comex_FuturesSettlement_EOD_continuous.
    • LME_AskBidPrices_Delayed.
    • CME_CmeFutures_EOD and CME_CmeFutures_EOD_continuous.
    • CME_STLCPC_Futures.
    • ICE_NybotCoffeeSugarCocoaFutures and ICE_NybotCoffeeSugarCocoaFutures_continuous.
    • Morningstar_FX_Forwards.
    • ... see ?getPrice for up to date selection and examples.
  • chart_zscore() supports seasonality adjusted analysis of residuals, particularly useful when dealing with commodity stocks and/or days demand time series with trends as well as non-constant variance across seasonal periods.

  • chart_eia_steo() and chart_eia_sd() return either a chart or dataframe of supply demand balances from the EIA.

  • chart_spreads() to generate specific contract spreads across years e.g. ULSD March/April. Requires Morninstar credentials.

  • swapInfo() returns all information required to price first line futures contract averaging swap or CMA physical trade, including a current month instrument with prior settlements.

  • ...

  • ... Check the functions index and send feedback to pcote@ualberta.ca. We welcome feedback, suggestions and collaborators.

Data Sets

Accessible via data(datsetname)

  • expiry_table: Historical and forward futures contract metadata.
  • holidaysOil: Holiday calendars for ICE and NYMEX.
  • tickers_eia: Mapping of EIA tickers to crude and refined products markets for building supply demand balances.
  • usSwapIRDef: Data frame of definitions for instruments to build a curve for use with RQuantlib. Use getIRswapCurve() to extract the latest data from FRED and Morningstar.
  • usSwapIR: Sample data set output of getIRswapCurve.
  • usSwapCurves: Sample data set output of RQuantlib::DiscountCurve().
  • cancrudeassays contains historical Canadian crude assays by batch from Crudemonitor. cancrudeassayssum is a summarised average assays version.
  • crudeassaysXOM for all publicly available complete assays in Excel format from ExxonMobil
  • crudeassaysBP for all publicly available complete assays in Excel format from BP
  • eiaStocks: Sample data set of EIA.gov stocks for key commodiities.
  • eiaStorageCap: EIA crude storage capacity by PADD.
  • dflong and dfwide contain continuous futures prices sample data sets for Nymex (CL, HO, RB and NG contracts) and ICE Brent.
  • crudepipelines and refineries contain GIS information in the North American crude space.

Python

A python version of RTL for most functions is available at https://pypi.org/project/risktools/.

Installation

Latest Package devtools::install_github("risktoollib/RTL")

CRAN Stable install.packages("RTL")

Credentials

Usernames and password for API services are required.

Copy Link

Version

Install

install.packages('RTL')

Monthly Downloads

536

Version

0.1.5

License

GPL (>= 3)

Issues

Pull Requests

Stars

Forks

Maintainer

Philippe Cote

Last Published

November 11th, 2020

Functions in RTL (0.1.5)

cancrudeprices

cancrudeprices
chart_fwd_curves

chart_fwd_curves
chart_eia_sd

chart_eia_sd
CRReuro

CRReuro
chart_PerfSummary

chart_PerformanceSummary
chart_eia_steo

chart_eia_steo
bond

bond
chart_pairs

chart_pairs
cancrudeassays

cancrudeassays
chart_spreads

chart_spreads
crudepipelines

crudepipelines
ir_df_us

ir_df_us
eiaStorageCap

eiaStorageCap
chart_zscore

chart_zscore
expiry_table

expiry_table
npv

npv
rolladjust

rolladjust
eia2tidy

eia2tidy
eiaStocks

eiaStocks
dfwide

dfwide
cancrudeassayssum

cancrudeassayssum
ngstorage

ngstorage
crudes

crudes
df_fut

df_fut
lngterminals

lngterminals
crudeassaysBP

crudeassaysBP
simGBM

simGBM
tradeStats

tradeStats
tradeCycle

tradeCycle
distdescplot

distdescplot
fitOU

fitOU
dflong

dflong
fizdiffs

fizdiffs
usSwapIRdef

usSwapIRdef
promptBeta

promptBeta
ref.opt.inputs

ref.opt.inputs
nghubs

nghubs
ngpipelines

ngpipelines
refineryLP

refineryLP
crudeassaysXOM

crudeassaysXOM
simOU

simOU
refineries

refineries
ref.opt.outputs

ref.opt.ouputs
garch

garch
returns

returns
simOUJ

simOUJ
usSwapCurves

usSwapCurves
swapFutWeight

swapFutWeight
getCurve

getCurve
tradeprocess

tradeprocess
stl_decomp

stl_decomp
swapCOM

swapCOM
holidaysOil

holidaysOil
getPrices

getPrices
getIRswapCurve

getIRswapCurve
swapIRS

swapIRS
usSwapCurvesPar

usSwapCurvesPar
swapInfo

swapInfo
tickers_eia

tickers_eia
usSwapIR

usSwapIR
getPrice

getPrice
planets

planets
%>%

Pipe operator
productsterminals

productsterminals
productspipelines

productspipelines