Wolfram Computation Meets Knowledge

FinancialDerivativeをFinancialDataと一緒に使う方法

FinancialDataFinancialDerivativeの関数を一緒に使うと,デリバティブの価格を求めることができます.例えば,S&P 500におけるアメリカンプットオプションの価格を計算したい場合は,指標の終値データを出します.

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

FinancialDataが2つ一組の数のリストを返します.それぞれのペアは,日付とその日の指標の終値を表しています.FinancialDerivativeを使って,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}]

データに価格関数をマップすると,それぞれの日におけるオプションの価値のリストが返されます.

putPrice = Map[americanPutPrice, sp500]

しかし,このリストにはもとのデータに含まれていた日付がまったく含まれていません.RenkoChart等の金融のプロット関数は,日付がなくては使えず,入力の各要素は数のペア(最初の値が日付で,2つ目の値はアメリカンオプションの価格)でなければなりません.sp500[[All, 1]を評価して,もとのデータソースからの日付を取り出し,これをTranspose関数を使って,オプション値のリストとインターリーブします.

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

RenkoChartは,これを入力として使うことができます.

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

[English]

この項目は役に立ちましたか?
はい
いいえ

ご意見・ご提案がおありでしたらお書きください.

フィードバックをありがとうございました.

送信

サポートへのお問合せ

お支払い,アクティベーションに関する質問から技術的な質問まで,お気軽にお問い合せください.

販売代理店 (ライセンスをお持ちの方は、ご購入された代理店にお問い合わせください)

Hulinks

電話:03-5642-8380
Fax:03-5642-8381

soft.sales@hulinks.co.jp
Webサイト

日本電子計算株式会社

電話:03-5210-0184
Fax:03-5210-0229

math_info@cm.jip.co.jp
Webサイト

亘香通商株式会社

電話:045-320-2711
Fax:045-320-9342

sales@senko-corp.co.jp
Webサイト

株式会社シーエムディーラボ

電話:03-3408-8406
Fax:03-3408-8406

info@cmdlab.co.jp
Webサイト