A: 天软中提供了ETF的场内的时点收盘和场外的时点净值数据,有关该数据的披露准则、数据处理及提取方法,可参考ETF基金时点净值说明文档FAQ:
2025-04-27-应用专题-数据提取专题04:ETF基金常见数据说明及提取
要点说明:
1、ETF时点净值由盘口接收,存放于交易明细数据表中,通过交易代码获取。
深交所:以“市盈率2”字段公布时点净值
上交所:2015-05-04开始:以“市盈率2”字段公布时点净值
2015-05-04之前:以SH+(6位二级市场代码+1)公布的“收盘价”作为时点净值
2、天软封装取指定时点的时点净值,模型为:FundIPOV(),支持交易代码与一级市场代码获取。
3、通过一级市场基金代码获取二级市场交易代码,可通过spec(base(302033),FundID)方式。
ETF时点净值提取范例:
范例01:取指定高频截面的时点净值
SetSysParam(PN_Stock(),"OF510050");
SetSysParam(PN_Cycle(),cy_1s());
SetSysParam(PN_Date(),20241226.101002T);
return FundIPOV(); //2.7498
范例02:函数+NDay方式-取指定时间区间内5秒线的时点净值序列
BegT:=IntToDate(20140430);
EndT:=BegT+10/24;
FundID:='OF510050';
JYCode:=spec(base(302033),FundID);
SetSysParam(PN_Stock(),JYCode);
SetSysParam(PN_Cycle(),cy_5s());
SetSysParam(PN_Date(),endt);
days:=tradedays(begt,endt);
return nday(days,'时间',datetimetostr(sp_time()),
'时点净值-交易所公布',FundIPOV());
返回结果(部分结果截图):
范例03:取指定日交易明细的时点净值序列
上证ETF2015-05-04开始以交易代码的“市盈率2”字段公布时点净值
EndT:=20241225T;
FundID:='OF510050';
JYCode:=spec(base(302033),FundID);
return select datetimetostr(["date"]) as "时间",
["syl2"] as "时点净值"
from tradetable datekey EndT to Endt+16/24 of JYCode end;
返回结果(部分结果截图):
范例04:Markettable方式-取一段时间内1分钟线的时点净值序列
上证ETF2015-05-04之前以SH+(6位二级市场代码+1)公布的“收盘价”作为时点净值
BegT:=20150429.09T;
EndT:=20150429.16T;
FundID:='OF510050';
JYCode:=spec(base(302033),FundID);
JYCode1:=leftstr(JYCode,2)$(strtoint(RightStr(JYCode,6))+1);
setsysparam(pn_cycle(),cy_1m());
return select datetimetostr(["date"]) as "时间",
["close"] as "时点净值"
from Markettable datekey BegT to EndT of JYCode1 end;
返回结果(部分结果截图):
范例05:Markettable方式-取上证ETF历史连续的时点净值序列
上证ETF2015-05-04之前以SH+(6位二级市场代码+1)公布的“收盘价”作为时点净值,2015-05-04开始以交易代码的“市盈率2”字段公布时点净值
BegT:=20150429.09T;
EndT:=20150506.16T;
st:=20150504t;
FundID:='OF510050';
JYCode:=spec(base(302033),FundID);
JYCode1:=leftstr(JYCode,2)$(strtoint(RightStr(JYCode,6))+1);
setsysparam(pn_cycle(),cy_1m());
t1:= select JYCode as "StockID",datetimetostr(["date"]) as "时间",
["close"] as "时点净值"
from Markettable datekey BegT to st of JYCode1 end;
t2:= select ["StockID"],datetimetostr(["date"]) as "时间",
["syl2"] as "时点净值"
from Markettable datekey st to EndT of JYCode end;
返回结果(部分结果截图):
