Learn R Programming

schwartz97 (version 0.0.6)

pricing-futures: Schwartz two-factor Model: Futures Prices

Description

Compute arbitrage-free futures prices.

Usage

"pricefutures"(ttm = 1, s0 = 50, delta0 = 0, sigmaS = 0.3, kappa = 1, alpha = 0, sigmaE = 0.5, rho = 0.75, r = 0.03, lambda = 0, alphaT = NULL)
"pricefutures"(ttm = 1, s0, r = 0.03, lambda = 0, alphaT = NULL)
"pricefutures"(ttm = 1, s0)

Arguments

ttm
Time to maturity.
s0
Either a numeric representing the initial value of the commodity spot price or an object inheriting from class schwartz2f.
delta0
Initial value of the convenience yield.
sigmaS
Diffusion parameter of the spot price-process.
kappa
Speed of mean-reversion of the convenience-yield process.
alpha
Mean-level of the convenience-yield process.
sigmaE
Diffusion parameter of the convenience-yield process.
rho
Correlation coefficient between the Brownian motion driving the spot-price and the convenience-yield process.
r
Instantaneous risk-free interest rate.
lambda
Market price of convenience yield risk (see Details).
alphaT
Mean-level of the convenience yield process with respect to the equivalent martingale measure (see Details).

Value

A numeric containing futures prices.

Details

The model and its parameters are described in the Details section of the schwartz2f-class documentation and in the package vignette Technical Document.

References

The Stochastic Behavior of Commodity Prices: Implications for Valuation and Hedging by Eduardo S. Schwartz Journal of Finance 52, 1997, 923-973

Valuation of Commodity Futures and Options under Stochastic Convenience Yields, Interest Rates, and Jump Diffusions in the Spot by Jimmy E. Hilliard and Jorge Reis Journal of Financial and Quantitative Analysis 33, 1998, 61-86

See Also

priceoption to price options, d/p/q/rfutures to work with futures, schwartz2f-constructor, fit.schwartz2f for parameter estimation, futures-data.

Examples

Run this code

# ## function call by atomic arguments
# forward.curve <- pricefutures(ttm = 0.2 * 1:10, s0 = 10, delta0 = 0,
#                               alpha = 0, lambda = 0.02, r = 0)
# plot(forward.curve, type = "b")
# 
# ## function call via schwartz2f-object. 
# obj <- schwartz2f(delta0 = 0, sigmaE = 1e-5) # Make convenience yield inactive
# forward.curve <- pricefutures(ttm = 0.2 * 1:10, s0 = obj, r = 0, alphaT = 0)
# plot(forward.curve, type = "b")


Run the code above in your browser using DataLab