exponenta event banner

Инструмент спреда цен для товара с использованием модели Black-Scholes и аналитических цен

В этом примере показан поток операций для определения цены товара. Spread инструмент при использовании BlackScholes модель и Kirk и BjerksundStensland аналитические методы ценообразования.

Общие сведения о параметрах распространения трещин

В нефтяной промышленности нефтепереработчики обеспокоены разницей между их затратами на сырье (сырая нефть) и ценами на продукцию (продукты переработки - бензин, мазут, дизельное топливо и так далее). Разница между этими двумя основными товарами называется спредом трещин. Она представляет собой маржу прибыли между сырой нефтью и нефтепродуктами.

Опцион на спред - это опцион на спред, в котором держатель имеет право, но не обязательство, заключать спотовый или форвардный спред-договор. Варианты распространения трещин часто используются для защиты от снижения распространения трещин или для монетизации волатильности или ценовых ожиданий в отношении распространения.

Определение товара

Предположим, что текущие цены на бензин сильны, и вы хотите смоделировать стратегию варианта распространения трещин, чтобы защитить маржу бензина. Стратегия распределения трещин используется для сохранения прибыли в следующем сезоне. Фьючерс на нефть WTI находится на уровне $93,20 за баррель, а фьючерсный контракт на бензин RBOB - на уровне $2,85 за галлон.

Strike = 20;
Rate = 0.05;

Settle = datetime(2020,1,1);
Maturity = datemnth(Settle,3);

% Price and volatility of RBOB gasoline
PriceGallon1 = 2.85;          % Dollars per gallon
Price1 = PriceGallon1 * 42;   % Dollars per barrel
Vol1 = 0.29;

% Price and volatility of WTI crude oil
Price2 = 93.20;         % Dollars per barrel
Vol2 = 0.36;

% Correlation between the prices of the commodities
Corr = 0.42;

Создать Spread Объект КИП

Использовать fininstrument для создания Spread объект прибора.

SpreadOpt = fininstrument("Spread", 'ExerciseDate', Maturity, 'Strike', Strike,'ExerciseStyle',"european",'Name',"spread_instrument")
SpreadOpt = 
  Spread with properties:

       OptionType: "call"
           Strike: 20
    ExerciseStyle: "european"
     ExerciseDate: 01-Apr-2020
             Name: "spread_instrument"

Создать BlackScholes Объект модели

Использовать finmodel для создания BlackScholes объект модели.

BlackScholesModel = finmodel("BlackScholes", 'Volatility', [Vol1,Vol2], 'Correlation', [1 Corr; Corr 1]);

Создать ratecurve Объект

Создание плоского ratecurve объект с использованием ratecurve.

ZeroCurve = ratecurve('zero', Settle, Maturity, Rate, 'Basis', 1);

Создать BjerksundStensland Объект прайсера

Использовать finpricer для создания BjerksundStensland pricer object и используйте ratecurve объект для 'DiscountCurve' аргумент пары имя-значение.

BJSPricer = finpricer("Analytic", 'Model', BlackScholesModel, 'SpotPrice', [Price1 , Price2], 'DiscountCurve', ZeroCurve,'PricingMethod', "BjerksundStensland");

Создать Kirk Объект прайсера

Использовать finpricer для создания Kirk pricer object и используйте ratecurve объект для 'DiscountCurve' аргумент пары имя-значение.

KirkPricer = finpricer("Analytic", 'Model', BlackScholesModel,'SpotPrice', [Price1 , Price2], 'DiscountCurve', ZeroCurve,'PricingMethod', "Kirk");

Цена Spread Использование прибора BjerksundStensland и Kirk Аналитические методы ценообразования

Использовать price для расчета цены и чувствительности товара Spread инструмент.

[PriceKirk, outPR_Kirk] = price(KirkPricer, SpreadOpt, "all");
[PriceBJS,  outPR_BJS]  = price(BJSPricer,  SpreadOpt, "all");

[outPR_Kirk.Results; outPR_BJS.Results]
ans=2×7 table
    Price           Delta                  Gamma                 Lambda                Vega           Theta      Rho  
    _____    ___________________    ____________________    _________________    ________________    _______    ______

    11.19    0.67224    -0.60665    0.019081    0.021662    7.1907    -6.4891    11.299    9.8869    -14.539    3.1841
     11.2    0.67371    -0.60816    0.018992    0.021572    7.2003    -6.4997    11.198    9.9878    -14.555    3.1906