Черная поверхность Скоулза против времени до погашения и цены исполнения в R - PullRequest
0 голосов
/ 14 января 2019

Я только что обнаружил функцию "каркас" в R для построения графиков трехмерных поверхностей. Я хочу реализовать это, построив график цены опциона Black & Scholes Call на две последовательности данных: время до погашения и цена исполнения. Итак, прежде всего здесь следует мой сценарий:

S=100  #My stock Price
K=90   #Initial Strike Price
T=1    #Initial Time to Maturity (1 year here)
RF=0.03    #Risk free rate
SIGMA=0.2  #Volatility
d1=(log(S/K) + (RF + 0.5*SIGMA^2)*T)/SIGMA*sqrt(T)     #initial d(1)
d2=d1-SIGMA*sqrt(T)                                    #initial d(2)

Затем я попытался подготовить сетку для моей поверхности / 3D-графика:

K=seq(80,120,1)
T=seq(0,1,0.1)
table=expand.grid(K,T)

На последнем шаге я добавляю новую переменную столбца для вычисления моей цены Call для каждой отдельной комбинации:

table$CALL= S*pnorm(d1) - K*exp(-RF*T)*pnorm(d2)
names(table)= c("K","T","CALL")

Наконец поверхность / 3D сюжет:

wireframe(CALL ~ K * T, scales = list( arrows = FALSE),aspect = c(1, .6),data=table,
      drape=T,shade=T)

Итак, он показывает, по-видимому, надежный график (согласно моему финансовому исследованию), но ... я не знаю, он выглядит немного "масштабно-шаговым" графиком. Поскольку я новичок в функции «каркас», я не знаю, правильно ли я использовал все входные данные. Я хотел бы узнать мнение кого-то, кто уже использовал для построения формулы B & S в 3D-графике. Я заинтересован, потому что я сделал бы то же самое, чтобы построить греков и подразумеваемую волатильность в будущем.

Заранее спасибо

...