# Longstaff Schwartz Algrorithm in R

I recently discovered the LSMonteCarlo library in R which basically determines the price of American options via Longstaff Schwartz method.

I tried the AmerPutLSM which per description first simulates paths of a geometric Brownian Motion and then uses the Longstaff Schwartz method.

The first few applications did non convince so I tried to price an European Put Option with this function:

library(LSMonteCarlo)
s0 <- 100
strike <- 100
sigma <- 0.03

set.seed(123)
AmerPutLSM(Spot = s0, sigma = sigma, n = 10000,
m = 12, Strike = strike, r = 0, mT = 1, dr = 0)

American Put Option
Price: 1.187689


So basically I consider 10000 paths of a geometric Brownian motion with $\sigma = 0.03$ and an ATM put option (strike = $S_0$ = 100). The maturity of the option is set to 1 (mT = 1) and the number of time steps in the simulation is also set to 12 (m = 12). This means that the option can be exercised at the end of each month (Bermudan type). For simplicity I assumed no interest rate (r = 0) and zero dividends (dr = 0). This function tells me that the price of this option is about 1.188

But, if we compare this with the Black-Scholes Put Price of a European Put Option we get that

$$V_{\text{European}} = \text{Strike} \cdot \Phi\Bigl(\frac \sigma 2 \Bigr) - S_0 \cdot \Phi\Bigl(-\frac \sigma 2 \Bigr) = 1.196782.$$

strike * pnorm(sigma/2) - s0 * pnorm(-sigma/2)
[1] 1.196782


This makes no sense since the value of the European Option should always be less then its American (or Bermudan) counterpart.

Does anyone have an explanation for this?

Thank you.

• Well, you are assuming no dividends therefore the price of the American option should coincide with the European price. The difference between your 2 prices is 0.77% which for monthly steps seems already rather low, so it might be purely numerical imprecision. Have you tried augmenting the number of time steps? – Daneel Olivaw Jun 7 '18 at 15:12
• Thank you for your comment. I think only call prices coincide when there are no dividends. In general Put prices are not equal, even if dividends are zero. And yes I also tried different parameters. Results were always the same. – Cettt Jun 7 '18 at 15:17