WOLFRAM

How do I use FinancialDerivative with FinancialData?

You can combine the functions FinancialData and FinancialDerivative to price derivatives. For example, to calculate the price of an American put option on the S&P 500, collect the index’s closing values.

sp500data = FinancialData["SP500", {{2011, 1, 20}, {2011, 4, 23}}];

FinancialData returns a list of pairs. Each pair represents a date and the closing value of the index on that date. Using FinancialDerivative, you can write a function that calculates the value of an example option on sp500data.

americanPutPrice[{date_, currentPrice_}] :=
     FinancialDerivative[{"American", "Put"}, {"StrikePrice" -> 1190,
        "Expiration" -> {2011, 9, 20}}, {"CurrentPrice" -> currentPrice,
        "Dividend" -> 0.03, "Volatility" -> 0.4, "InterestRate" -> 0.05,
        "ReferenceTime" -> date}]

Mapping the price function onto the data returns a list of the values for the option on each day.

putPrice = Map[americanPutPrice, sp500]

This list, however, does not contain any of the dates that are in the original data. Financial plotting functions such as RenkoChart need these dates to work. Each element in their input must be a pair. The first value must be the date and the last value must be the price of the American option. Take the dates from the original data source by evaluating sp500[[All, 1] and interleave it with the list of option values using the Transpose function.

Transpose[{sp500[[All, 1]], putPrice}]

RenkoChart can use this as input.

 RenkoChart[Transpose[{sp500[[All, 1]], putPrice}]]

Была ли эта статья для вас полезной?
Да
Нет

Хотите оставить комментарий?

Спасибо за ваш отзыв.

Отправить

Обратиться в службу поддержки

Если у вас есть вопросы о ценах и оплате, активации или сомнения по техническим темам, мы готовы вам помочь.

1-800-WOLFRAM (+1-217-398-0700 для международных звонков)

Служба поддержки

Понедельник-пятница
с 08:00 до 17:00 по центральному времени США

  • Регистрация или активация продукта
  • Предпродажная информация и заказ
  • Помощь в установке и первом запуске

Расширенная техническая поддержка (для правомочных клиентов)

Понедельник-четверг
с 08:00 до 19:00 по центральному времени США

Пятница
с 08:30 до 10:00 и с 11:00 до 17:00 по центральному времени США

  • Приоритетная техническая поддержка
  • Поддержка по продуктам от экспертов Wolfram
  • Помощь специалистов по программированию на Wolfram Language
  • Расширенная поддержка установки