A:参考FAQ:
2017-03-20-应用专题-数据提取专题06:债券收益率曲线数据提取专题。注意,只能提取2011年之后的数据,2011年之前的数据暂未提供。
下面给出一个10年期国债收益率的提取范例和指定日债券期限结构的范例,专题中有更详细的说明及相关范例。
范例1:提取一段时间10年期的国债到期收益率
//BTS000033是天软提取中证指数国债收益率数据的代码
StockID := "BTS000033";
SetSysParam(pn_stock(),"SH000012");
SetSysParam(pn_date(),20170315T);
//最近 10 个交易日 10 年期国债到期收益率
Return nday(10,"time",sp_time(),
"10 年期国债到期收益率%)",
spec(GetBondTermStructureByRemainDuration(2,10),StockID));
结果截图:
范例2:提取所有期限指定日期的债券期限结构
StockID := "BTS000033";
EndT := 20170301T;
SetSysParam(pn_stock(),StockID);
SetSysParam(PN_Date(),EndT);
Return md("债券期限结构");
结果截图:
范例3:提取一段时间内的10年期的国债到期收益率
//BTS000033是天软提取中证指数国债收益率数据的代码
StockID := "BTS000033";
begt:=20230101T;
endt:=20231020T;
SetSysParam(pn_stock(),"SH000012"); //Nday推移需要有交易日序列
SetSysParam(pn_date(),endt);
N:=tradedays(begt,endt);
echo N;
//一段时间内的 10 年期国债到期收益率
Return nday(N,"time",sp_time(),
"10 年期国债到期收益率(%)",
spec(GetBondTermStructureByRemainDuration(2,10),StockID));
部分结果截图:
注:这种方式提取会比较慢。