get.point.estimate {RND} | R Documentation |
Point Estimation of the Density
Description
get.point.estimate
estimates the risk neutral density by center differentiation.
Usage
get.point.estimate(market.calls, call.strikes, r, te)
Arguments
market.calls |
market calls (most expensive to cheapest) |
call.strikes |
strikes for the calls (smallest to largest) |
r |
risk free rate |
te |
time to expiration |
Details
This is a non-parametric estimate of the risk neutral density. Due to center differentiation, the density values are not estimated at the highest and lowest strikes.
Value
point.estimates |
values of the estimated density at each strike |
Author(s)
Kam Hamidieh
References
J. Hull (2011) Options, Futures, and Other Derivatives and DerivaGem Package Prentice Hall, Englewood Cliffs, New Jersey, 8th Edition
Examples
###
### Recover the lognormal density based on BSM
###
r = 0.05
te = 60/365
s0 = 1000
k = seq(from = 500, to = 1500, by = 1)
sigma = 0.25
y = 0.01
bsm.calls = price.bsm.option(r =r, te = te, s0 = s0, k = k, sigma = sigma, y = y)$call
density.est = get.point.estimate(market.calls = bsm.calls,
call.strikes = k, r = r , te = te)
len = length(k)-1
### Note, estimates at two data points (smallest and largest strikes) are lost
plot(density.est ~ k[2:len], type = "l")
[Package RND version 1.2 Index]