手上有一张期货期权,要把最后行权日记进提醒清单。自选里可能同时有这张期权和它的标的期货,两边都看得到到期信息。最容易记错的不是日期格式,而是把别的合约的日期抄进这一行,或者把行情里的日期当成柜台最后受理的时间。
提醒跟着那张期权走
如果用 TqSdk 查行情,拿手里那张具体期权 的完整合约代码查询它自己的 Quote,用 instrument_id 核对拿到的对象。要记的日期来自这个对象的 last_exercise_datetime,即期权最后行权日。它和同一对象的 expire_datetime(合约到期日)都是秒级时间戳。两者显示为同一天也不奇怪,但清单里仍分两栏:看得出哪个日期来自最后行权字段,哪个来自到期字段。标的期货的到期信息不填进这两栏。
转换时,原始秒值别扔,显示日期旁边写清时区,例如统一用北京时间(UTC+8)。如果另一张表的日期和你的显示不同,可以回到原始值核对,而不是凭日期字符串判断字段冲突。查不到有效的最后行权字段时,把这一项留为「待核」;不能拿看起来最接近的到期日期顶上。
日期能提醒你核对,不能替柜台给结论
一条实用的提醒不是「某日几点以前一定能办」,而是「这张合约的最后行权日已记下,实际申报条件还要核」。清单可以这样留栏:
| 留存项 | 写什么 |
|---|---|
| 期权合约 | 完整合约代码,与持有记录核对 |
| 最后行权日 | last_exercise_datetime 原始秒值、换算后的日期和展示时区 |
| 本期权到期日 | expire_datetime 原始秒值和按同一时区换算的日期,单独列 |
| 柜台事项 | 实际受理时段、适用条件及确认出处;尚未确认就写「待核」 |
到提醒日临近,拿完整代码去核对适用规则和开户期货公司的安排。即便两个日期字段都齐,也不能据此判断这笔持仓是否满足行权条件,或者会不会自动行权。
为什么用 TqSdk 记这张表
我推荐用 TqSdk 做这类期货期权提醒的日期底稿:同一张期权的行情对象上有合约标识和两个独立日期字段,复查时能说清「这个日期是哪张合约的、从哪一栏来的」。你自己维护提醒和柜台确认两项即可;有据可查的日期用来安排核对,不替你做行权决定。