A:基金份额变动表:FAQ:
份额变动
该表中,有些类型的基金份额是每日公布的,如ETF等,而有些基金则是只在每日定期公告中进行公布,天软会在每个报告期中进行采集补充。
因此,对于每日公布的基金,我们可以通过拉表快速得到每日的基金总份额的数据表。
也可以通过基金总份额模型FundTotalShares(vEndT)进行获取每日的值,最后形成报表的方式,该种方式为通用方式,适合并非每日都公布份额数据的基金。
两种方式的差异:
1、相较拉表而言模型获取每日的效率较低。
2、拉表方式时间序列依赖表格中数据的时间序列,其采集可能包括了每个交易日以及每个定期报告日,而模型方式我们一般指定为市场交易日序列,所以数量上可能存在差异。
拉表方式,实现示例如下:
stockid:="OF510050";
begt:=20241201T;
endt:=20241231T;
data:=select ["StockID"],["StockName"],["变动日"],["总份额"] from infotable 324 of stockid
where ["变动日"]>=datetoint(begt) and ["变动日"]<=datetoint(endt) end;
return data;
返回结果:
通用方式:模型获取每日
begt := 20241201T;
endt := 20241231T;
stockid := "OF510050";
setsysparam(pn_cycle(),cy_day());
Tarr := markettradedayqk(begt,endt);
setsysparam(pn_stock(),stockid);
ret := array();
for i,vEndt in Tarr do
ret[i]:= array(
"StockID":stockid,
"StockName":StockName(stockid),
"日期":datetoint(vEndt),
"总份额":FundTotalShares(vEndT)
);
return ret;
返回结果:
