Skip to content

Latest commit

 

History

History
24 lines (17 loc) · 2.52 KB

README.md

File metadata and controls

24 lines (17 loc) · 2.52 KB

accumulator-option-pricing

The .py files price an accumulator option using Monte Carlo simulation and calculate its profit and loss distribution given different volatilities. The .m files provides an analytical function to approximate the value of an accumulator option.

The option

An accumulator is settled periodically throughout its term. At each settlement:

  • If the market price of the underlying security is above the predetermined knock-out price, the contract is terminated.
  • If the market price of the underlying security is between the knock-out price and the strike price, the buyer "accumulates" the underlying security at the strike price.
  • If the market price of the underlying security is below the strike price, the buyer is obligated to buy the underlying security at the strike price at 2 (or more) times of the predetermined amount.

In case of knock-out, the aggregate number of shares accumulated will be settled on the early termination date, which is the third business day following the occurrence of early termination event.

The shares accumulated for each accumulation period will be delivered to the investor on the third business day following the end of each monthly accumulation period.

The analytical pricing method

  • In the case that the knock-out barrier is extremely high, there will be no knock-out. And the accumulator is equivalent to a series of call and put options on forwards. The value of a forward contract can be calculated by risk-neutral pricing. (See file acc_XH.m)
  • The approximation formula for an accumulator option is taken from a paper by Kin Lam. (See file ana_acc.m)

Monte Carlo simulation method

  • Generate a return matrix, and consequently a price matrix under the risk-neutral measure. For each observation day: If it is neither a settlement day nor an early termination day, we accumulate the number of shares and set the payoff equal to the previous observation day payoff; if it is either a settlement day or an early termination day, we set the payoff equal to the previous day payoff plus the discounted value of the number of shares times the price of the forward. After each settlement day, we set the number of shares back to zero and begin with the next month.
  • To gain the fair value of the option, we average over all the simulated paths. To look at the payoff distribution for different volatilities, we plot the payoffs from each simulation.

Results

img