1573 lines
24 KiB
Markdown
1573 lines
24 KiB
Markdown
#### 期权
|
||
|
||
##### 内容
|
||
|
||
- 基本信息
|
||
- 期权熔断机制
|
||
- 活跃成交持仓
|
||
- 期权风险指标
|
||
- 期权结算参数
|
||
- 期权基本函数
|
||
- 期权主力合约
|
||
- 期权合约代码
|
||
- 行权交收信息
|
||
|
||
##### 基本信息
|
||
|
||
###### 内容
|
||
|
||
- optioninfoceilingprice
|
||
- OptionInfoIsTradeRange
|
||
- OptionInfoEndTBetweenMaturityDays
|
||
- OptionInfoUnitDeposit
|
||
- OptionInfoOpenPosition
|
||
- OptionInfoIsNewContract
|
||
- OptionInfoLast5DayContractAdjusted
|
||
- OptionInfoStatusInfo
|
||
- OptionInfoConsSuspended
|
||
- OptionInfoFloorPrice
|
||
- OptionInfoIsBetweenMaturityLess5Days
|
||
- 中间函数
|
||
- OP_ResidualMaturity
|
||
- OptionToPZ
|
||
- OptionContractUnit
|
||
- OptionInfoStrikePrice
|
||
|
||
###### optioninfoceilingprice
|
||
|
||
###### OptionInfoIsTradeRange
|
||
|
||
范例
|
||
|
||
```text
|
||
// "CF201C13800"在2021-09-24指定日是否交易区间
|
||
|
||
SetSysParam(pn_stock(),"CF201C13800");
|
||
|
||
return OptionInfoIsTradeRange(20210924T); //结果:1
|
||
```
|
||
|
||
###### OptionInfoEndTBetweenMaturityDays
|
||
|
||
范例
|
||
|
||
```text
|
||
// "IO2306-P-4200"在2022-6-27距离到期日天数
|
||
|
||
SetSysParam(pn_stock(),"IO2306-P-4200");
|
||
|
||
return OptionInfoEndTBetweenMaturityDays(20220627T); //结果:249
|
||
```
|
||
|
||
###### OptionInfoUnitDeposit
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10004233"在2022-6-27的单位保证金
|
||
|
||
SetSysParam(pn_stock(),"OP10004233");
|
||
|
||
return OptionInfoUnitDeposit(20220627T); //结果:15425.6
|
||
```
|
||
|
||
###### OptionInfoOpenPosition
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10004233"在2022-6-27的开仓状态
|
||
|
||
SetSysParam(pn_stock(),"OP10004233");
|
||
|
||
return OptionInfoOpenPosition(20220627T); //结果:可开仓
|
||
```
|
||
|
||
###### OptionInfoIsNewContract
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10004233"在2022-6-27的是否新挂牌合约
|
||
|
||
SetSysParam(pn_stock(),"OP10004233");
|
||
|
||
return OptionInfoIsNewContract(20220627T); //结果:否
|
||
```
|
||
|
||
###### OptionInfoLast5DayContractAdjusted
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10004233"在2022-6-27的最近5个交易日内合约是否发生过调整
|
||
|
||
SetSysParam(pn_stock(),"OP10004233");
|
||
|
||
return OptionInfoLast5DayContractAdjusted(20220627T); //结果:否
|
||
```
|
||
|
||
###### OptionInfoStatusInfo
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10004233"在2022-6-27的期权合约状态信息
|
||
|
||
SetSysParam(pn_stock(),"OP10004233");
|
||
|
||
return OptionInfoStatusInfo(20220627T); //结果:0000E0
|
||
```
|
||
|
||
###### OptionInfoConsSuspended
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10004233"在2022-6-27是否连续停牌
|
||
|
||
SetSysParam(pn_stock(),"OP10004233");
|
||
|
||
return OptionInfoConsSuspended(20220627T); //结果:否
|
||
```
|
||
|
||
###### OptionInfoFloorPrice
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10004233"在2022-6-27跌幅下限价格
|
||
|
||
SetSysParam(pn_stock(),"OP10004233");
|
||
|
||
return OptionInfoFloorPrice(20220627T); //结果:0.57
|
||
```
|
||
|
||
###### OptionInfoIsBetweenMaturityLess5Days
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10004233"在2022-6-27是否距离到期日不足5个交易日
|
||
|
||
SetSysParam(pn_stock(),"OP10004233");
|
||
|
||
return OptionInfoIsBetweenMaturityLess5Days(20220627T); //结果:否
|
||
```
|
||
|
||
###### 中间函数
|
||
|
||
####### 内容
|
||
|
||
- optiongetdatabyendt
|
||
|
||
####### optiongetdatabyendt
|
||
|
||
###### OP_ResidualMaturity
|
||
|
||
范例
|
||
|
||
```text
|
||
endt := 20221220T;
|
||
|
||
setsysparam(pn_stock(),"OP10004850");
|
||
|
||
setsysparam(pn_date(),endt);
|
||
|
||
return OP_ResidualMaturity(); //0.0219(年)
|
||
```
|
||
|
||
###### OptionToPZ
|
||
|
||
范例
|
||
|
||
```text
|
||
// "CU2101C39000" 的期权品种代码
|
||
|
||
|
||
SetSysParam(pn_stock(),"CU2101C39000");
|
||
|
||
|
||
return OptionToPZ();
|
||
|
||
|
||
//结果:"CU"
|
||
```
|
||
|
||
###### OptionContractUnit
|
||
|
||
范例
|
||
|
||
```text
|
||
// "CU2101C39000"2021-02-01的合约单位
|
||
|
||
SetSysParam(pn_stock(),"CU2101C39000");
|
||
|
||
|
||
return OptionContractUnit(20210201T);
|
||
|
||
|
||
//结果:5
|
||
```
|
||
|
||
###### OptionInfoStrikePrice
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回OP10008613 500ETF购2月5903A,20250123T的行权价
|
||
|
||
SetSysParam(pn_stock(),"OP10008613");
|
||
|
||
endt:= 20250123T;
|
||
|
||
return OptionInfoStrikePrice(Endt);
|
||
|
||
//结果:5.903
|
||
```
|
||
|
||
##### 期权熔断机制
|
||
|
||
###### 内容
|
||
|
||
- optioncbisstop
|
||
- optioncbsuspendtime
|
||
- optioncblaststopdate
|
||
- optioncbstopcount
|
||
- 中间函数
|
||
- optioncbzfaboveminiquotenum
|
||
- optioncbzdthresh
|
||
- optioncbstopcountqj
|
||
|
||
###### optioncbisstop
|
||
|
||
###### optioncbsuspendtime
|
||
|
||
###### optioncblaststopdate
|
||
|
||
- optioncbisstop
|
||
- optioncbsuspendtime
|
||
- optioncblaststopdate
|
||
- optioncbstopcount
|
||
- 中间函数
|
||
- optioncbzfaboveminiquotenum
|
||
- optioncbzdthresh
|
||
- optioncbstopcountqj
|
||
|
||
###### optioncbstopcount
|
||
|
||
- optioncbisstop
|
||
- optioncbsuspendtime
|
||
- optioncblaststopdate
|
||
- optioncbstopcount
|
||
- 中间函数
|
||
- optioncbzfaboveminiquotenum
|
||
- optioncbzdthresh
|
||
- optioncbstopcountqj
|
||
|
||
###### 中间函数
|
||
|
||
####### 内容
|
||
|
||
- optioncbgetdataperiod
|
||
|
||
####### optioncbgetdataperiod
|
||
|
||
###### optioncbzfaboveminiquotenum
|
||
|
||
- optioncbisstop
|
||
- optioncbsuspendtime
|
||
- optioncblaststopdate
|
||
- optioncbstopcount
|
||
- 中间函数
|
||
- optioncbzfaboveminiquotenum
|
||
- optioncbzdthresh
|
||
- optioncbstopcountqj
|
||
|
||
###### optioncbzdthresh
|
||
|
||
###### optioncbstopcountqj
|
||
|
||
- optioncbisstop
|
||
- optioncbsuspendtime
|
||
- optioncblaststopdate
|
||
- optioncbstopcount
|
||
- 中间函数
|
||
- optioncbzfaboveminiquotenum
|
||
- optioncbzdthresh
|
||
- optioncbstopcountqj
|
||
|
||
##### 活跃成交持仓
|
||
|
||
###### 内容
|
||
|
||
- 指定日
|
||
- 中间函数
|
||
|
||
###### 指定日
|
||
|
||
####### 内容
|
||
|
||
- optionubcsumnnetvolgrow
|
||
- optionubcsumnvolgrow
|
||
- optionubcnonvolgrow
|
||
- optionubcinstitutnetvolgrow
|
||
- optionubcsumnnetoigrow
|
||
- optionubcnonoigrow
|
||
- optionubcinstitutoigrow
|
||
- optionubcnonnetvolgrow
|
||
- optionubcinstitutnetoigrow
|
||
- optionubcsumnoigrow
|
||
- optionubcnonnetoigrow
|
||
- optionubcinstitutvolgrow
|
||
- OptionUBCSumNVol
|
||
- OptionUBCInstitutOIRank
|
||
- OptionUBCInstitutOIPercent
|
||
- OptionUBCNoNOIPercent
|
||
- OptionUBCInstitutPercent
|
||
- OptionUBCNoNNetVol
|
||
- OptionUBCNoNOIName
|
||
- OptionUBCInstitutOI
|
||
- OptionUBCSumNNetVol
|
||
- OptionUBCSumNOIPercent
|
||
- OptionUBCInstitutNetVol
|
||
- OptionUBCInstitutVol
|
||
- OptionUBCInstitutNetOI
|
||
- OptionUBCNoNVolName
|
||
- OptionUBCNoNPercent
|
||
- OptionUBCNoNNetOI
|
||
- OptionUBCNoNOI
|
||
- OptionUBCInstitutVolRank
|
||
- OptionUBCNoNVol
|
||
- OptionUBCSumNOI
|
||
- OptionUBCSumNPercent
|
||
- OptionUBCSumNNetOI
|
||
|
||
####### optionubcsumnnetvolgrow
|
||
|
||
####### optionubcsumnvolgrow
|
||
|
||
####### optionubcnonvolgrow
|
||
|
||
####### optionubcinstitutnetvolgrow
|
||
|
||
####### optionubcsumnnetoigrow
|
||
|
||
####### optionubcnonoigrow
|
||
|
||
####### optionubcinstitutoigrow
|
||
|
||
####### optionubcnonnetvolgrow
|
||
|
||
####### optionubcinstitutnetoigrow
|
||
|
||
####### optionubcsumnoigrow
|
||
|
||
####### optionubcnonnetoigrow
|
||
|
||
####### optionubcinstitutvolgrow
|
||
|
||
####### OptionUBCSumNVol
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCSumNVol(20200807T,1,0);
|
||
|
||
//结果:339980
|
||
```
|
||
|
||
####### OptionUBCInstitutOIRank
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCInstitutOIRank(20200807T,'华泰证券',0);
|
||
|
||
//结果:3
|
||
```
|
||
|
||
####### OptionUBCInstitutOIPercent
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCInstitutOIPercent(20200807T,'华泰证券',0);
|
||
|
||
//结果:5.29416436328386
|
||
```
|
||
|
||
####### OptionUBCNoNOIPercent
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCNoNOIPercent(20200807T,1,0);
|
||
|
||
//结果:7.58237322661357
|
||
```
|
||
|
||
####### OptionUBCInstitutPercent
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCInstitutPercent(20200807T,'华泰证券',0);
|
||
|
||
//结果:15.4328861467173
|
||
```
|
||
|
||
####### OptionUBCNoNNetVol
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCNoNNetVol(20200807T,1);
|
||
|
||
//结果:-9468
|
||
```
|
||
|
||
####### OptionUBCNoNOIName
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCNoNOIName(20200807T,1);
|
||
|
||
//结果:华泰证券
|
||
```
|
||
|
||
####### OptionUBCInstitutOI
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCInstitutOI(20200807T,"华泰证券",1);
|
||
|
||
//结果:177850
|
||
```
|
||
|
||
####### OptionUBCSumNNetVol
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCSumNNetVol(20200807T,1);
|
||
|
||
//结果:-9468
|
||
```
|
||
|
||
####### OptionUBCSumNOIPercent
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCSumNOIPercent(20200807T,1,0);
|
||
|
||
//结果:7.58237322661357
|
||
```
|
||
|
||
####### OptionUBCInstitutNetVol
|
||
|
||
算法指定日指定机构净认购成交量变动=今日净认购-上日净认购范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCInstitutNetVol(20200807T,'华泰证券');
|
||
|
||
//结果:-26123
|
||
```
|
||
|
||
####### OptionUBCInstitutVol
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCInstitutVol(20200807T,'华泰证券',1);
|
||
|
||
//结果:313857
|
||
```
|
||
|
||
####### OptionUBCInstitutNetOI
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCInstitutNetOI(20200807T,'华泰证券');
|
||
|
||
//结果:48525
|
||
```
|
||
|
||
####### OptionUBCNoNVolName
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCNoNVolName(20200807T,1,1);
|
||
|
||
//结果:广发证券
|
||
```
|
||
|
||
####### OptionUBCNoNPercent
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCNoNPercent(20200807T,1,1);
|
||
|
||
//结果:14.1982876756464
|
||
```
|
||
|
||
####### OptionUBCNoNNetOI
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCNoNNetOI(20200807T,1);
|
||
|
||
//结果:-7371
|
||
```
|
||
|
||
####### OptionUBCNoNOI
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCNoNOI(20200807T,1,1);
|
||
|
||
//结果:177850
|
||
```
|
||
|
||
####### OptionUBCInstitutVolRank
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCInstitutVolRank(20200807T,'广发证券',1);
|
||
|
||
//结果:1
|
||
```
|
||
|
||
####### OptionUBCNoNVol
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCNoNVol(20200807T,1,1);
|
||
|
||
//结果:330512
|
||
```
|
||
|
||
####### OptionUBCSumNOI
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCSumNOI(20200807T,1,1);
|
||
|
||
//结果:177850
|
||
```
|
||
|
||
####### OptionUBCSumNPercent
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCSumNPercent(20200807T,1,1);
|
||
|
||
//结果:14.1982876756464
|
||
```
|
||
|
||
####### OptionUBCSumNNetOI
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"SH510050");
|
||
|
||
return OptionUBCSumNNetOI(20200807T,3);
|
||
|
||
//结果:62518
|
||
```
|
||
|
||
###### 中间函数
|
||
|
||
####### 内容
|
||
|
||
- optionubcqkperiod
|
||
- OptionUBCQK
|
||
|
||
####### optionubcqkperiod
|
||
|
||
####### OptionUBCQK
|
||
|
||
范例
|
||
|
||
```text
|
||
return OptionUBCQK("SH510050",20200807T,0,0,3);
|
||
```
|
||
|
||
结果:
|
||
|
||
##### 期权风险指标
|
||
|
||
###### 内容
|
||
|
||
- 中间函数
|
||
- OptionRITheta
|
||
- OptionRIDelta
|
||
- OptionRIRHO
|
||
- OptionRIVega
|
||
- OptionRIGamma
|
||
|
||
###### 中间函数
|
||
|
||
####### 内容
|
||
|
||
- optionriskindicator
|
||
|
||
####### optionriskindicator
|
||
|
||
###### OptionRITheta
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"OP10006730");
|
||
|
||
return OptionRITheta(20240126T);
|
||
|
||
//结果:-0.119
|
||
```
|
||
|
||
###### OptionRIDelta
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"OP10006730");
|
||
|
||
return OptionRIDelta(20240126T);
|
||
|
||
//结果:0.795
|
||
```
|
||
|
||
###### OptionRIRHO
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"OP10006730");
|
||
|
||
return OptionRIRHO(20240126T);
|
||
|
||
//结果:1.055
|
||
```
|
||
|
||
###### OptionRIVega
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"OP10006730");
|
||
|
||
return OptionRIVega(20240126T);
|
||
|
||
//结果:0.545
|
||
```
|
||
|
||
###### OptionRIGamma
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(pn_stock(),"OP10006730");
|
||
|
||
return OptionRIGamma(20240126T);
|
||
|
||
//结果:0.838
|
||
```
|
||
|
||
##### 期权结算参数
|
||
|
||
###### 内容
|
||
|
||
- Optionspqk
|
||
- Optionspqk2
|
||
- OptionSMarginAdjustmentFactor
|
||
- OptionSMiniGuaranteeFactor
|
||
- OptionSPClosingProceduresFee
|
||
- OptionSPOpeningChargeFee
|
||
- OptionSPPerformanceFee
|
||
- OptionSPShortClosingProceduresFee
|
||
- OptionSPShortOpeningChargeFee
|
||
- OptionSPTradingMargin
|
||
- 中间函数
|
||
|
||
###### Optionspqk
|
||
|
||
范例
|
||
|
||
```text
|
||
// "al2104C13400"在20210312~20210322的区间期权结算参数数据
|
||
|
||
SetSysParam(pn_stock(),"al2104C13400");
|
||
|
||
return OptionSPQK(20210312T,20210322T);
|
||
```
|
||
|
||
###### Optionspqk2
|
||
|
||
范例
|
||
|
||
```text
|
||
// "al2104C13400"在20210322的5日结算参数数据
|
||
|
||
SetSysParam(pn_stock(),"al2104C13400");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSPQK2(5);
|
||
```
|
||
|
||
###### OptionSMarginAdjustmentFactor
|
||
|
||
范例
|
||
|
||
```text
|
||
// "IO2106-P-5300"在20210322日的保证金调整系数(%)
|
||
|
||
SetSysParam(pn_stock(),"IO2106-P-5300");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSMarginAdjustmentFactor(); //结果:12
|
||
```
|
||
|
||
###### OptionSMiniGuaranteeFactor
|
||
|
||
范例
|
||
|
||
```text
|
||
// "IO2106-P-5300"在20210322日的最低保障系数
|
||
|
||
SetSysParam(pn_stock(),"IO2106-P-5300");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSMiniGuaranteeFactor(); //结果:0.5
|
||
```
|
||
|
||
###### OptionSPClosingProceduresFee
|
||
|
||
范例
|
||
|
||
```text
|
||
// "MA110C2375"在20210322日的平仓手续费额
|
||
|
||
SetSysParam(pn_stock(),"MA110C2375");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSPClosingProceduresFee(); //结果:0.5
|
||
```
|
||
|
||
###### OptionSPOpeningChargeFee
|
||
|
||
范例
|
||
|
||
```text
|
||
// "MA110C2375"在20210322日的开仓手续费额
|
||
|
||
SetSysParam(pn_stock(),"MA110C2375");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSPOpeningChargeFee(); //结果:0.5
|
||
```
|
||
|
||
###### OptionSPPerformanceFee
|
||
|
||
范例
|
||
|
||
```text
|
||
// "MA110C2375"在20210322日的行权/履约手续费额
|
||
|
||
SetSysParam(pn_stock(),"MA110C2375");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSPPerformanceFee(); //结果:0.5
|
||
```
|
||
|
||
###### OptionSPShortClosingProceduresFee
|
||
|
||
范例
|
||
|
||
```text
|
||
// "MA110C2375"在20210322日的短线平仓手续费额
|
||
|
||
SetSysParam(pn_stock(),"MA110C2375");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSPShortClosingProceduresFee(); //结果:0
|
||
```
|
||
|
||
###### OptionSPShortOpeningChargeFee
|
||
|
||
范例
|
||
|
||
```text
|
||
// "MA110C2375"在20210322日的短线开仓手续费额
|
||
|
||
SetSysParam(pn_stock(),"MA110C2375");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSPShortOpeningChargeFee(); //结果:0.5
|
||
```
|
||
|
||
###### OptionSPTradingMargin
|
||
|
||
范例
|
||
|
||
```text
|
||
// "MA110C2375"在20210322日的交易保证金
|
||
|
||
SetSysParam(pn_stock(),"MA110C2375");
|
||
|
||
SetSysParam(PN_Date(),20210322T);
|
||
|
||
return OptionSPTradingMargin(); //结果:3090
|
||
```
|
||
|
||
###### 中间函数
|
||
|
||
####### 内容
|
||
|
||
- Stock2OptionSPId
|
||
|
||
####### Stock2OptionSPId
|
||
|
||
##### 期权基本函数
|
||
|
||
###### 内容
|
||
|
||
- OP_GetOptionChain
|
||
- OP_BKDateOverview
|
||
- OP_GetBidAskData
|
||
- OP_GetDaysMaturity
|
||
- OP_GetPutAndCallratio
|
||
- OP_GetRiskFreeRate
|
||
- OP_GetUnderlyingSecurity
|
||
- OP_HV
|
||
- OP_IVGreeks
|
||
|
||
###### OP_GetOptionChain
|
||
|
||
范例
|
||
|
||
```text
|
||
return OP_GetOptionChain("SH510050",20150209T);
|
||
```
|
||
|
||
返回结果:
|
||
|
||
###### OP_BKDateOverview
|
||
|
||
范例
|
||
|
||
```text
|
||
return OP_BKDateOverview("SH510050",1);
|
||
```
|
||
|
||
返回结果:
|
||
|
||
###### OP_GetBidAskData
|
||
|
||
范例
|
||
|
||
```text
|
||
ret:=array(("代码":"CU2106"),
|
||
|
||
("代码":"IF2106"),
|
||
|
||
("代码":"PG2106"),);
|
||
|
||
return OP_GetBidAskData(ret);
|
||
```
|
||
|
||
返回结果:
|
||
|
||
###### OP_GetDaysMaturity
|
||
|
||
范例
|
||
|
||
```text
|
||
return OP_GetDaysMaturity(20150208T,20150228T); // 0.6575
|
||
```
|
||
|
||
###### OP_GetPutAndCallratio
|
||
|
||
算法到日期为Ex_endt日的指定期权品种为StockID的 在指定时间endt的所有认购期权成交量与认沽期权成交量的比值,到期日<=0表示取所有代码范例
|
||
|
||
```text
|
||
Return OP_GetPutAndCallratio("cu",20210514t);
|
||
|
||
//1.33637606170067
|
||
```
|
||
|
||
###### OP_GetRiskFreeRate
|
||
|
||
范例
|
||
|
||
```text
|
||
return OP_GetRiskFreeRate(20150208T,0);//2.75
|
||
```
|
||
|
||
###### OP_GetUnderlyingSecurity
|
||
|
||
范例
|
||
|
||
```text
|
||
return OP_GetUnderlyingSecurity();
|
||
```
|
||
|
||
返回结果:
|
||
|
||
###### OP_HV
|
||
|
||
算法
|
||
|
||
获取日期区间的收盘价
|
||
|
||
计算日期区间股价环比增长自然对数序列的标准差作为日波动率(%)
|
||
|
||
按一年250的交易日取年化波动率范例
|
||
|
||
```text
|
||
//取SZ000002在2021-01-01前六个月的nian波动率
|
||
|
||
return OP_HV("SZ000002",20210101T,-6); //25.7907888130722
|
||
```
|
||
|
||
###### OP_IVGreeks
|
||
|
||
范例
|
||
|
||
```text
|
||
return OP_IVGreeks(0,18,20,2,5,1.00);
|
||
```
|
||
|
||
返回结果:
|
||
|
||
##### 期权主力合约
|
||
|
||
###### 内容
|
||
|
||
- OptionZLId
|
||
- OptionZLId2
|
||
- OptionCZLId
|
||
- OptionCZLId2
|
||
- OptionFlatZLId
|
||
- OptionFlatZLId2
|
||
- OptionFlatCZLId
|
||
- OptionFlatCZLId2
|
||
- OptionFlatValueId
|
||
- OptionVirtualValueID
|
||
- OptionRealValueID
|
||
- OptionIsFlatValueID
|
||
- OptionIsFlatValueID2
|
||
- OptionIsRealValueID
|
||
- OptionIsRealValueID2
|
||
- OptionIsVirtualValueID
|
||
- OptionIsVirtualValueID2
|
||
- 中间函数
|
||
- OptionZLId3
|
||
|
||
###### OptionZLId
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的期权主力合约
|
||
|
||
return OptionZLId("SH510050",20210331T,0,-1);
|
||
|
||
//结果:OP10003266
|
||
```
|
||
|
||
###### OptionZLId2
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的期权主力合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
return OptionZLId2(20210331T,0,-1);
|
||
|
||
//结果:OP10003266
|
||
```
|
||
|
||
###### OptionCZLId
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的期权次主力合约
|
||
|
||
return OptionCZLId("SH510050",20210331T,0,-1);
|
||
|
||
//结果:OP10003273
|
||
```
|
||
|
||
###### OptionCZLId2
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的期权次主力合约
|
||
|
||
|
||
setsysparam(pn_stock(),'SH510050');
|
||
|
||
return OptionCZLId2(20210331T,0,-1);
|
||
|
||
//结果:OP10003273
|
||
```
|
||
|
||
###### OptionFlatZLId
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的期权平值主力合约
|
||
|
||
return OptionFlatZLId("SH510050",20210331T,0,0);
|
||
|
||
//结果:OP10003265
|
||
```
|
||
|
||
###### OptionFlatZLId2
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的期权平值主力合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
|
||
return OptionFlatZLId2(20210331T,0,0);
|
||
|
||
//结果:OP10003265
|
||
```
|
||
|
||
###### OptionFlatCZLId
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的期权平值次主力合约
|
||
|
||
return OptionFlatCZLId("SH510050",20210331T,0,0);
|
||
|
||
//返回:OP10003274
|
||
```
|
||
|
||
###### OptionFlatCZLId2
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的期权平值次主力合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
return OptionFlatCZLId2(20210331T,0,0);
|
||
|
||
//返回:OP10003274
|
||
```
|
||
|
||
###### OptionFlatValueId
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的认购的平值合约
|
||
|
||
return OptionFlatValueId("SH510050",20210331T,0);
|
||
```
|
||
|
||
###### OptionVirtualValueID
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的认购的虚值合约
|
||
|
||
return OptionVirtualValueID("SH510050",20210331T,0);
|
||
```
|
||
|
||
###### OptionRealValueID
|
||
|
||
范例
|
||
|
||
```text
|
||
// "SH510050"在20210331日的认购的实值合约
|
||
|
||
|
||
return OptionRealValueID("SH510050",20210331T,0);
|
||
```
|
||
|
||
###### OptionIsFlatValueID
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10003265 50ETF购4月3600"在20210331日是否平值合约
|
||
|
||
return OptionIsFlatValueID("OP10003265",20210331T);
|
||
|
||
//返回:1
|
||
```
|
||
|
||
###### OptionIsFlatValueID2
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10003265 50ETF购4月3600"在20210331日是否平值合约
|
||
|
||
setsysparam(pn_stock(),"OP10003265");
|
||
|
||
return OptionIsFlatValueID2(20210331T);
|
||
|
||
//结果:1
|
||
```
|
||
|
||
###### OptionIsRealValueID
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10003265 50ETF购4月3600"在20210331日是否实值合约
|
||
|
||
return OptionIsRealValueID("OP10003265",20210331T);
|
||
|
||
//返回:0
|
||
```
|
||
|
||
###### OptionIsRealValueID2
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10003265 50ETF购4月3600"在20210331日是否实值合约
|
||
|
||
setsysparam(pn_stock(),"OP10003265");
|
||
|
||
return OptionIsRealValueID2(20210331T);
|
||
|
||
//结果:0
|
||
```
|
||
|
||
###### OptionIsVirtualValueID
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10003265 50ETF购4月3600"在20210331日是否虚值合约
|
||
|
||
return OptionIsVirtualValueID("OP10003265",20210331T);
|
||
|
||
//返回:0
|
||
```
|
||
|
||
###### OptionIsVirtualValueID2
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10003265 50ETF购4月3600"在20210331日是否虚值合约
|
||
|
||
SetSysParam(pn_stock(),"OP10003265");
|
||
|
||
return OptionIsVirtualValueID2(20210331T);
|
||
|
||
//结果:0
|
||
```
|
||
|
||
###### 中间函数
|
||
|
||
####### 内容
|
||
|
||
- OptionCheckIdsEndT
|
||
- OptionIsValueID
|
||
- OptionCheckValueIds
|
||
- OptionsZLId
|
||
|
||
####### OptionCheckIdsEndT
|
||
|
||
范例
|
||
|
||
```text
|
||
return OptionCheckIdsEndT('SH510050',20210331T,-1,0);
|
||
```
|
||
|
||
####### OptionIsValueID
|
||
|
||
范例
|
||
|
||
```text
|
||
// "OP10003265 50ETF购4月3600"在20210331日是否平值合约
|
||
|
||
return OptionIsValueID("OP10003265",20210331T,0);
|
||
|
||
//返回:1
|
||
```
|
||
|
||
####### OptionCheckValueIds
|
||
|
||
范例
|
||
|
||
```text
|
||
return OptionCheckValueIds('SH510050',20210331T,1,0);
|
||
```
|
||
|
||
####### OptionsZLId
|
||
|
||
范例
|
||
|
||
```text
|
||
return OptionsZLId('SH510050',20210331T,-1,1,0);
|
||
|
||
//结果:OP10003264
|
||
```
|
||
|
||
###### OptionZLId3
|
||
|
||
算法
|
||
|
||
模型中提供了两种算法:
|
||
|
||
算法一:近月合约,适用所有期权
|
||
|
||
选取最近到期日且满足到期日大于等于N日的期权合约序列,即若近月到期日与指定日区间天数小于N日,则判断次近月,依此类推,直到满足到期天数>=N日;
|
||
|
||
算法二:标的主力线合约,仅适用商品期货期权
|
||
|
||
期货期权标的(商品期货)的主力线对应的当前实际合约作为标的的期权合约序列,
|
||
|
||
通过上述算法逻辑筛选出期权样本组后,再根据选择的期权类型(认购、认沽、所有)与期权合约类型(所有、平值、实值、虚值)以及对应的档位,最后筛选出符合条件的期权序列作为指定日期权主力。
|
||
|
||
范例
|
||
|
||
```text
|
||
//取50ETF期权在指定日的期权主力(近月算法)序列
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
return OptionZLId3(20251112T);
|
||
```
|
||
|
||
```text
|
||
//取50ETF期权在指定日的期权主力(近月算法,大于等于5个交易日的近月合约)序列
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
stocks:= OptionZLId3(20251120T,1,5);
|
||
|
||
return stocks;
|
||
```
|
||
|
||
```text
|
||
//取50ETF期权在指定日的期权主力(近月算法,大于等于5个交易日的近月合约)认购平值期权序列
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
stocks:= OptionZLId3(20251120T,1,5,0,0);
|
||
|
||
return stocks;
|
||
```
|
||
|
||
```text
|
||
//取50ETF期权在指定日的期权主力(近月算法,大于等于5个交易日的近月合约)认购实值期权二档序列
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
stocks:= OptionZLId3(20251120T,1,5,-1,1,2);
|
||
|
||
return stocks;
|
||
```
|
||
|
||
```text
|
||
//取50ETF期权在指定日的期权主力(标的主力算法,主力1)一档序列
|
||
|
||
setsysparam(pn_stock(),"CU");
|
||
|
||
stocks:= OptionZLId3(20251120T,nil,nil,-1,-1,1,1);
|
||
|
||
return stocks;
|
||
```
|
||
|
||
##### 期权合约代码
|
||
|
||
###### 内容
|
||
|
||
- OptionNearContractCallOTM1
|
||
- OptionNearContractPutITM1
|
||
- OptionNearContractPutOTM1
|
||
- OptionNearContractPutOTM2
|
||
- OP_SelectOptionData
|
||
- OptionNearContractCallOTM2
|
||
- OptionNearContractCallITM1
|
||
- OptionNearContractCallITM2
|
||
- OptionNearContractPutITM2
|
||
- OP_SelectOption
|
||
- OP_GetOptionChainList
|
||
|
||
###### OptionNearContractCallOTM1
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认购的近月虚值一档期权合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
setsysparam(pn_date(),20230511T);
|
||
|
||
return OptionNearContractCallOTM1();
|
||
|
||
//结果:"OP10005266"
|
||
```
|
||
|
||
###### OptionNearContractPutITM1
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认沽的近月实值一档期权合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
setsysparam(pn_date(),20230511T);
|
||
|
||
return OptionNearContractPutITM1();
|
||
|
||
//结果:"OP10005275"
|
||
```
|
||
|
||
###### OptionNearContractPutOTM1
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认沽的近月虚值一档期权合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
setsysparam(pn_date(),20230511T);
|
||
|
||
return OptionNearContractPutOTM1();
|
||
|
||
//结果:"OP10005273"
|
||
```
|
||
|
||
###### OptionNearContractPutOTM2
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认沽的近月虚值二档期权合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
setsysparam(pn_date(),20230511T);
|
||
|
||
return OptionNearContractPutOTM2();
|
||
|
||
//结果:"OP10005272"
|
||
```
|
||
|
||
###### OP_SelectOptionData
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回"AP"在20240419交易的期权合约列表信息
|
||
|
||
return OP_SelectOptionData('AP',20240419T);
|
||
```
|
||
|
||
结果:
|
||
|
||
###### OptionNearContractCallOTM2
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认购的近月虚值二档期权合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
setsysparam(pn_date(),20230511T);
|
||
|
||
return OptionNearContractCallOTM2();
|
||
|
||
//结果:"OP10005267"
|
||
```
|
||
|
||
###### OptionNearContractCallITM1
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认购的近月实值一档期权合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
setsysparam(pn_date(),20230511T);
|
||
|
||
return OptionNearContractCallITM1();
|
||
|
||
//结果:"OP10005264"
|
||
```
|
||
|
||
###### OptionNearContractCallITM2
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认购的近月实值二档期权合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
setsysparam(pn_date(),20230511T);
|
||
|
||
return OptionNearContractCallITM2();
|
||
|
||
//结果:"OP10005263"
|
||
```
|
||
|
||
###### OptionNearContractPutITM2
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认沽的近月实值二档期权合约
|
||
|
||
setsysparam(pn_stock(),"SH510050");
|
||
|
||
setsysparam(pn_date(),20230511T);
|
||
|
||
return OptionNearContractPutITM2();
|
||
|
||
//结果:"OP10005276"
|
||
```
|
||
|
||
###### OP_SelectOption
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,20230511T交易类型为认购的近月平值期权合约列表
|
||
|
||
|
||
return OP_SelectOption("SH510050",20230511T,1,0,0,0);
|
||
|
||
|
||
//结果:array("OP10005274")
|
||
```
|
||
|
||
###### OP_GetOptionChainList
|
||
|
||
范例
|
||
|
||
```text
|
||
//返回50ETF为标的,所有行权方式和期权类型的期权合约列表
|
||
|
||
|
||
return OP_GetOptionChainList("SH510050",-1,-1);
|
||
```
|
||
|
||
##### 行权交收信息
|
||
|
||
###### 内容
|
||
|
||
- OptionESIExerciseAmount
|
||
- 中间函数
|
||
|
||
###### OptionESIExerciseAmount
|
||
|
||
范例
|
||
|
||
```text
|
||
SetSysParam(PN_Stock(),'SH510050');
|
||
|
||
return OptionESIExerciseAmount(20231227T,0);
|
||
|
||
//结果:20893
|
||
```
|
||
|
||
###### 中间函数
|
||
|
||
####### 内容
|
||
|
||
- OptionESIGetdata
|
||
|
||
####### OptionESIGetdata
|
||
|
||
范例
|
||
|
||
```text
|
||
return OptionESIGetdata('SH510050',20231227T);
|
||
```
|
||
|
||
结果:
|