Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
science:social:economics:finance:option-simulator [2025/10/04 15:17] – falsycat | science:social:economics:finance:option-simulator [2025/10/04 15:56] (current) – falsycat | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Option | + | ====== Option |
- | <WRAP TODO> | + | [[black-scholes-equation]]に基づいて、オプションの損益をシミュレーションするためのツールです。 |
+ | テキストエリアに建玉を入力してCalcボタンを押すと、縦軸を原資産価格、横軸を満期までの日数とした損益のヒートマップを生成することができます。 | ||
+ | 建玉の入力記法については[[# | ||
< | < | ||
Line 7: | Line 9: | ||
<div id=" | <div id=" | ||
- | < | + | < |
- | <div style=" | + | LC@21750# |
+ | SC@21500#5$390</ | ||
+ | <div style=" | ||
< | < | ||
< | < | ||
Line 62: | Line 66: | ||
const priceMin = Math.min(...pos.map(x => x.strike))*0.8; | const priceMin = Math.min(...pos.map(x => x.strike))*0.8; | ||
const priceMax = Math.max(...pos.map(x => x.strike))*1.2; | const priceMax = Math.max(...pos.map(x => x.strike))*1.2; | ||
- | const priceStep = (priceMax - priceMin)/50; | + | const priceStep = (priceMax - priceMin)/100; |
let prices = []; | let prices = []; | ||
for (let S = priceMin; S <= priceMax; S+=priceStep) { | for (let S = priceMin; S <= priceMax; S+=priceStep) { | ||
Line 81: | Line 85: | ||
for (const p of pos) { | for (const p of pos) { | ||
if (p.open_at >= T) { | if (p.open_at >= T) { | ||
- | const open_vol = p.open_price | + | const open_vol = p.open_price; |
const curr_vol = blackScholes(S, | const curr_vol = blackScholes(S, | ||
pnl += p.count*(p.side === " | pnl += p.count*(p.side === " | ||
Line 151: | Line 155: | ||
colorscale: [ | colorscale: [ | ||
[0.0, ' | [0.0, ' | ||
- | [0.49, 'white'], | + | [0.49, 'lightblue'], |
[0.5, ' | [0.5, ' | ||
[0.51, ' | [0.51, ' | ||
Line 190: | Line 194: | ||
===== How To Use ===== | ===== How To Use ===== | ||
+ | 単体の建玉は以下の記法で記述できます。 | ||
+ | 単体の建玉記述を1行ずつ記述することで、複数の建玉を記述することができます。 | ||
+ | |||
+ | < | ||
+ | (S/ | ||
+ | S/L: Short or Long | ||
+ | C/P: Call or Put | ||
+ | strike | ||
+ | open_at | ||
+ | open_price: price at open | ||
+ | </ | ||
+ | |||
+ | ==== 例 ==== | ||
+ | |||
+ | オプション戦略については[[option-strategy]]を参照。 | ||
+ | |||
+ | === Short Iron Butterfly === | ||
+ | |||
+ | < | ||
+ | SC@21000# | ||
+ | LC@20000# | ||
+ | LP@20000# | ||
+ | SP@19000# | ||
+ | </ |