1.2 KiB
1.2 KiB
181 OptionChain
用途
期权链。
最小示例
var state mujica.OptionChainState
rows := []mujica.OptionStrike{{Strike: 100, Call: mujica.OptionQuote{Bid: 3, Ask: 3.2, Last: 3.1}, Put: mujica.OptionQuote{Bid: 2, Ask: 2.2, Last: 2.1}}}
view := func(c *ui.Context) {
mujica.Use(c, mujica.Settings{})
r := mujica.OptionChain(c, &state, []string{"Oct 17", "Nov 21"}, rows, mujica.OptionChainOptions{Spot: 100.4})
if r.Changed || r.Submitted || r.ExpiryChanged {
fmt.Println(state.Expiry, state.Strike, state.Side)
}
}
ui.Render(view, 960, 440, 1)
参数
s 保存到期日和合约;expiries 至少一个;strikes 升序。Spot 默认 0 隐藏现价;Decimals 默认 2;Disabled 默认 false。
状态
默认;交互区域支持聚焦与选中,Disabled 参数控制禁用。
事件
if r.Changed || r.Submitted || r.ExpiryChanged { 调用方回调(state.Expiry, state.Strike, state.Side) }
键盘操作
Tab 切换到期日或列表;上下、Home/End 选择行;左右切换认购认沽;Enter 确认。
限制
到期日切换后,由调用方更换对应报价;排序与稳定合约标识由调用方保证。