Skip to content
Prev 8969 / 15274 Next

Option valuation for arbitrary distribution using monte carlo simulation

Dear Massimo,

thanks for the hint to Iacus' book. I was aware of this title already 
but could not get hold of it by now. Thank you for the code snippet as 
well. Unfortunately, it does not seem to help with my main problem: How 
to correct the original data such that Monte Carlo sampling from it 
gives me samples from a risk-neutral but NONNORMAL process. Maybe my 
description is a bit awkward. Also I may lack the math and statistics 
skills. I try do say it another way:

Let
r : original log return series
     ( with e.g. mean(r)  = -0.0001574849 and sd(r)  = 0.01479017 )
x:  risk-free rate of, say, 5%.
Snow : stock price now
time to maturity = 1 year = 252 trading days
St : stock price in 1 year
X: call option strike
E[] : expected value
C : the option price

I am looking for a corrected return series rcorr = r + z such that
E[ Snow * exp(  sum(  sample(rcorr, 252)     ) ) ] = 100 * exp(0.05)

because then I can find the call option price with
for (i in 1:bignumber) {
   St[i] = Snow * exp(  sum(   sample(rcorr, 252)     ) )
   op[i] = max(0, exp(-.05) * (St[i] - X)  )
}
C = mean(op)

I could of course use some search algorithm to find z. In fact thats 
what I did. But I thought this is so common a problem for finance folks 
that there must be some elegant R procedure for th task.

Your code seems to assume that we are dealing with normal log returns 
but this is not the case for my sample.

Do you see what I mean? Is this stuff dealt with in the Iacus book?

Greetings
Joachim