Learn R Programming

TempStable

A collection of methods to estimate parameters of different tempered stable distributions. Currently, there are seven different tempered stable distributions to choose from: Tempered stable subordinator distribution, classical tempered stable distribution (TSD), normal TSD, generalized classical TSD, modified TSD, Kim-Rachev TSD, rapidly decreasing TSD. The package also provides functions to compute density and probability functions and tools to run Monte Carlo simulations.

The main function of this package are briefly described below:

  • Main function: TemperedEstim() computes all the information about the estimator. It allows the user to choose the preferred method and several related options.
  • Characteristic function, density function, probability function and other functions for every tempered stable distribution mentioned above. E.g. charTSS(), dCTS(), …
  • Monte Carlo simulation: a tool to run a Monte Carlo simulation (TemperedEstim_Simulation()) is provided and can save output files or produce statistical summary.

The package was developed by Till Massing and Cedric Jüssen and is structurally based on the “StableEstim” package by Tarak Kharrat and Georgi N. Boshnakov.

Installation

Since we use the package “copula” and this uses C code, it may be that this package has to be installed manually beforehand.

TempStable is now available on CRAN! In R-Studio the package can be installed directly with the following command:

install.packages("TempStable")

You can install the development version of TempStable from GitHub with:

# install.packages("devtools")
devtools::install_github("TMoek/TempStable")

Example

This is a basic example which shows you how to solve a common problem:

library(TempStable)
## basic example code
# Such a simulation can take a very long time. Therefore, it can make sense to 
# parallelise after Monte Carlo runs. Parallelisation of the simulation is not 
# yet part of the package. 

# For testing purposes, the amount of runs and parameters is greatly reduced. 
# Therefore, the result is not meaningful. To start a meaningful simulation, the
# SampleSize could be, for example, 1000 and MCParam also 1000.
thetaT <- c(1.5,1,1,1,1,0)
res_CTS_ML_size10 <- TemperedEstim_Simulation(ParameterMatrix = rbind(thetaT),
                                               SampleSizes = c(10), MCparam = 3,
                                               TemperedType = "CTS", Estimfct = "ML",
                                               saveOutput = FALSE)
#> ---------------- Alpha=1.5 *** DeltaP=1 *** DeltaM=1 *** LambdaP=1 *** LambdaM=1 *** mu=0 ---------------
#> Warning in log(densis): NaNs wurden erzeugt
#> *** Iter 1/3 *** Estimated Remaining Time: 0h0min12sec. *** 
#> *** Iter 2/3 *** Estimated Remaining Time: 0h0min12sec. ***
#> Warning in log(densis): NaNs wurden erzeugt
#> *** Iter 3/3 *** Estimated Remaining Time: 0h0min0sec. ***

colMeans(sweep(res_CTS_ML_size10$outputMat[,9:14],2,thetaT), na.rm = TRUE)
#>     alphaE    delta+E    delta-E   lambda+E   lambda-E        muE 
#> -1.4999990 -0.9999990  9.5255124  7.2885255  0.3178998 -0.7087628

Copy Link

Version

Install

install.packages('TempStable')

Monthly Downloads

188

Version

0.2.2

License

GPL (>= 2)

Issues

Pull Requests

Stars

Forks

Maintainer

Till Massing

Last Published

October 24th, 2023

Functions in TempStable (0.2.2)

dNTS

Density function of the normal tempered stable (NTS) distribution
pGTS

Cumulative probability function of the generalized classical tempered stable (GTS) distribution
dGTS

Density function of generalized classical tempered stable distribution
pKRTS

Cumulative probability distribution function of the Kim-Rachev tempered stable (KRTS) distribution
dCTS

Density function of the classical tempered stable (CTS) distribution
dRDTS

Density function of the rapidly decreasing tempered stable (CTS) distribution
dMTS

Density function of the modified tempered stable (MTS) distribution
dTSS

Density function of the tempered stable subordinator (TSS) distribution
dKRTS

Density Function of the Kim-Rachev tempered stable distribution
pCTS

Cumulative probability function of the classical tempered stable (CTS) distribution
parallelizeMCsimulation

Function to parallelize the Monte Carlo Simulation
pRDTS

Cumulative probability function of the rapidly decreasing tempered stable (RDTS) distribution
rGTS

Function to generate random variates of GTS distribution.
qCTS

Quantile function of the classical tempered stable (CTS)
qNTS

Quantile function of the normal tempered stable (NTS)
rCTS

Function to generate random variates of CTS distribution.
qTSS

Quantile function of the tempered stable subordinator distribution
pMTS

Cumulative probability function of the modified tempered stable (MTS) distribution
rTSS

Function to generate random variates of the TSS distribution.
rKRTS

Function to generate random variates of KRTS distribution.
rMTS

Function to generate random variates of MTS distribution
pNTS

Cumulative probability function of the normal tempered stable (NTS) distribution
pTSS

Cumulative probability distribution function of the tempered stable subordinator distribution
rRDTS

Function to generate random variates of RDTS distribution.
rNTS

Function to generate random variates of NTS distribution.
charMTS

Characteristic function of the modified tempered stable distribution
TempStable

TempStable: A collection of methods to estimate parameters of different tempered stable distributions.
TemperedEstim_Simulation

Monte Carlo Simulation
charCTS

Characteristic function of the classical tempered stable (CTS) distribution
TemperedEstim

Estimation function
charNTS

Characteristic function of the normal tempered stable (NTS) distribution
charRDTS

Characteristic function of the rapidly decreasing tempered stable (RDTS) distribution
charTSS

Characteristic function of the tempered stable subordinator
charGTS

Characteristic function of the generalized classical tempered stable (GTS) distribution.
charKRTS

Characteristic function of the Kim-Rachev tempered stable distribution