A:市场上基金的分类方式有许多种,通过基金基本信息表,用户可以根据需求对基金进行筛选,获取到符合需求的基金集合。
FAQ:
基本信息
若一般常见的分类方式,天软有提供相应分类的板块,用户也能直接得到。
FAQ:
Q:2021-04-05天软板块变更:如何获取某个分类板块的所有个券?
FAQ:
Q:天软公用市场板块说明
下面分别通过这两个数据介绍三种获取方式供需要的用户参考:
方式一:天软板块方式
根据天软已提供的板块分类,用户可以通过查询基金的标的指数分类,找到对应的标的板块名称,即可通过getbk("标的板块名")获取。
优点:速度快(已分类好);缺点:只能取最新的样本,不能取历史指定日的。
操作步骤如下:
第一步:在证券数据专家,或板块管理中,通过对市场板块的选择,找到对应的板块列表:
找基金分类:
找到基金分类下的主要标的指数分类:如中证指数沪深300基金板块
代码提取: return getbk("沪深300标的基金");
返回一个基金代码序列,是一维字符串数组。
方式二:先取指定标的集合,再筛选指定日
逻辑:通过getbkAll调用已存在的公用板块分类,补充已退市的成份。而后筛选出指定日还在运作的基金列表
优点:可以支持指定日,速度相对也较快。缺点:只能处理已有的板块,用户板块不支持。
Endt:=20240312T; //指定日
funds:=getbkAll("沪深300标的基金"); //所有沪深300基金,包括已退市
funds:=FundsOperateFunds(funds,Endt);//删除指定日未在运作的基金
return funds;
返回的是一维字符串数组:
方式三:对所有基金进行筛选
优点:可以获取指定日的,也可以自定义筛选出不在板块分类中的集合;
缺点:从所有基金中进行筛选,速度慢。
实现案例:
Endt:=20240312T; //指定日
Index:="SH000300"; //指定标的代码
funds:=getbk("上市基金;已退市基金"); //所有基金
funds:=FundsOperateFunds(funds,Endt);//删除指定日未在运作的基金
//取业绩基准
f:= select thisrow as 'fundid',
spec(base(302039),thisrow) as '基准代码'//取基金对应的相关分类数据
from funds end;
//取指定基准的基金集合
return select * from f where ['基准代码']=Index end;
返回是一个二维数组,部分结果截图如下: