Этот пример создает 3D график, показывающий, как гамма изменяется относительно цены за опцию Блэка-Шоулза.
Вспомните, что гамма является второй производной цены опции относительно цены базового актива. График в этом примере показывает 3D поверхность, z-значение которой является гаммой опции, когда цена (ось X) и время (ось Y) варьируется. График добавляет все же четвертую размерность путем показа дельты опции (первая производная цены опции к цене безопасности) как цвет поверхности. Сначала установите диапазон цен опций и установите область значений времени на один год, разделенный на полумесяцы, и описал как части года.
Range = 10:70; Span = length(Range); j = 1:0.5:12; Newj = j(ones(Span,1),:)'/12;
Для каждого периода времени создайте вектор из цен от 10 до 70 и создайте матрицу из всех единиц.
JSpan = ones(length(j),1); NewRange = Range(JSpan,:); Pad = ones(size(Newj));
Вычислите гамму и чувствительность дельты (греки), использующие blsgamma
и blsdelta
функции. Гамма является второй производной цены опции относительно курса акций, и дельта является первой производной цены опции относительно курса акций. Цена исполнения составляет 40$, безрисковая процентная ставка составляет 10%, и энергозависимость 0.35 за все цены и периоды.
ZVal = blsgamma(NewRange, 40*Pad, 0.1*Pad, Newj, 0.35*Pad); Color = blsdelta(NewRange, 40*Pad, 0.1*Pad, Newj, 0.35*Pad);
Отобразите греков в зависимости от цены и время. Гамма является осью z; дельта является цветом.
mesh(Range, j, ZVal, Color); xlabel('Stock Price ($)'); ylabel('Time (months)'); zlabel('Gamma'); title('Call Option Price Sensitivity'); axis([10 70 1 12 -inf inf]); view(-40, 50); colorbar('horiz');
blsdelta
| blsgamma
| blsprice
| blsvega
| bndconvy
| bnddury
| bndkrdur
| bndprice
| corr2cov
| portopt
| zbtprice
| zero2disc
| zero2fwd