A:期权风险指标函数说明,可参考:FAQ:
2025-03-19-应用专题-期权系列03:期权行情及风险指标(更新版)
批量循环提取指标的方法可参考:FAQ:
Q:取数Demo-取一段时间内多个股票的指标值
实现案例:以指定沪深300指数期权为例,提取该标的下在指定日所有合约的1分钟线的风险指标
indexid:="SH000300";
endt:=20240625T;
stocks:=OP_GetOptionChain(indexid,endt)[:,"StockID"]; //获取证券样本
setsysparam(pn_cycle(),cy_1m()); //周期
data:=array();
k:=0;
for i:=0 to length(stocks)-1 do //股票循环
begin
setsysparam(pn_stock(),stocks[i]); //设置当前证券代码
dayList:= stocktradedayqk(endt,endt+16/24); //取当前证券的交易时间序列
for j:=0 to length(dayList)-1 do //时间循环
begin
dayEnd:=dayList[j];
setsysparam(pn_date(),dayEnd);//设置当前时间,给不需要时间参数的指标提供指定日
data[k]['StockID']:=stocks[i];
data[k]['StockName']:=stockName(stocks[i]);
data[k]['Date']:=datetimetostr(dayEnd);
//获取多个指标值
data[k,'收盘价']:=close();
data[k,'成交量']:=vol();
t:=op_Greeks();//计算风险指标
data[k,'Delta']:=t[0,"Delta"];
data[k,'Gamma']:=t[0,"Gamma"];
data[k,'Theta']:=t[0,"Theta"];
data[k,'Vega']:=t[0,"Vega"];
data[k,'Rho']:=t[0,"Rho"];
//还可以继续添加其它指标
//data[k,'xxx']:=funcxxx(...);
k++;
end;
end;
return data;
返回结果(部分结果截图):
