Cannot find implied volatility for a put option.
1 次查看(过去 30 天)
显示 更早的评论
I want to find implied volatility for an american put option by using impvbybaw.It works with a call but not with a put.
%% EXERCISE 2
% Calculate implied volatility using BAW model
%define settle and maturity date
Settle = 'Sep-8-2021';
Maturity = 'Dec-17-2021';
RateSpec = intenvset('Rates',r,'StartDate',Settle,'EndDates',Maturity,'Compounding',-1,'Basis',1)
StockSpec = stockspec(NaN,S,{'continuous'},y)
OptSpec = {'call'}
OptionPrice = [2.52];
ImpVol = impvbybaw(RateSpec,StockSpec,Settle,Maturity,OptSpec,K,OptionPrice)
0 个评论
回答(2 个)
Dennis Jung
2021-10-10
Hi Jana,
I don't have a profound background in this type of work but I played around with the function and found that adjusting the rates value for the intenvset changes output of impvbybaw. I modified the example code from the MATLAB. Check the comments I made there.
%Modified from the example from https://www.mathworks.com/help/fininst/impvbybaw.html
AssetPrice = 100;
Settle = 'Jan-1-2017';
Maturity = 'Jul-1-2017';
Strike = 100;
DivAmount = 0.1;
Rates = 0.15;%I increased the Rates from 0.05 to 0.15 and it worked for 'put' option; for 'call' option works when it is decreased to 0.05
OptSpec = {'put'};
RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,...
'EndDates', Maturity, 'Rates', Rates, 'Compounding', -1, 'Basis', 1);
StockSpec = stockspec(0.2, AssetPrice, {'continuous'}, DivAmount);
OptionPrice = [0.01:0.5:15]';
ImpVol = impvbybaw(RateSpec, StockSpec, Settle, Maturity, OptSpec,Strike,OptionPrice);
0 个评论
Roberto Specchio
2021-10-11
I noticed the same problem and found the same "solution" by modifying the rate value, but I don't have an explanation for this. It seems that the rate value for a put option should be set "higher", but I don't see any theoretical basis for this. Does anyone have any suggestions ?
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Weather and Atmospheric Science 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!