NumEconCopenhagen / projects-2023-shashi-buhle

projects-2023-shashi-buhle created by GitHub Classroom
MIT License
0 stars 0 forks source link

Model project feedback #6

Open jqx527 opened 1 year ago

jqx527 commented 1 year ago
  1. The most elegant solution in the project was: (explain what and why)

I really liked the widget which allowed you to select certain stock and use real-world data to compute the option prices. The code seems quite concise which is impressive given the output of the widget.

  1. The hardest section of code in the project to understand was: (explain what)

I generally think the code is intuitive and rather easy to understand. The model itself is of course more complicated and harder to understand, but the implementation is easy to follow. The hardest part to understand is probably the data extraction, but I suppose that comes down some of the packages being used, are different from those which I worked with on previous occasions.

  1. This part of the project could be better documented: (explain what)

The code is very well documented.

  1. An idea for an improvement/clarification could be: (explain what and why)

As far as I understand, the numerical solution you present is more a repetition of the analytical solution across different stock prices, rather than a true numerical solution. I think an improvement would be to use the closed form solution for the option price to find the implied volatility given observed option prices. As there does not exist a closed form solution for volatility (e.g., it is not possible to isolate volatility in the BS-model), you would have to apply some kind of numerical optimization to solve for the implied volatility. By applying this numerical solution over a range of strike prices, you would also be able to create a volatility smile/smirk, which is a nice real-world application of the BS-model.

  1. An idea for an extension could be: (explain what and why)

I liked your extension where you allowed for dividends. I think you list some of most obvious extensions to the model in your project. Another possible extension could be to use implied volatility to generate an implied volatility surface. Alternatively, you could use the model to create an implied probability distribution for the asset and then compare the implied distribution to the lognormal distribution which the model assumes.