FAQ > 金融建模 > 建模问题 > 天软因子

Q:如何提取全A股票一段时间的天软风格因子(类Barra)数据    

  • A:天软风格因子说明参考:FAQ:2024-10-22-量化数据-因子研究02:天软风格因子算法与计算说明(更新版)
    取数范例
    获取A股最近三年的风格因子数据导出到本地,每个日期下的因子表单独保存为一个csv文件
      //保存本地路径,需调整
      path:="C:\\Users\\86152\\Desktop\\风格因子\\";
      EndT:=20241018T; //指定日
      begt:=IncYear(endt,-3); //开始日,截止日向前推3年日期,可修改为自定义日期
      Factors:=array(); //因子表(有默认列表,一般不变)
      IndexID:="SH000300"; //市场指数
      RiskFreeRate:=0;  //每日无风险利率(%)
      //数据处理
      FillNaN:=0;  //不填充缺失数据
      FillMiss:=0;  //剔除缺失值
      Normalization:=2;  //极值处理:3倍标准差
      Standardization:=-1;  //标准化处理:自定义
      //不需要部分因子表可在此删除
      fnames:=array("标准因子表","因子处理过程","最终描述因子","最终合成因子");

      days:=MarketTradeDayQk(begt,endt);
      for i,day in days do
      begin
        StockArr:=GetAbkbyDate("A股",day);
        data:=TS_StyleFactor(day,StockArr,Factors,IndexID,RiskFreeRate,
                   FillNaN,FillMiss,Normalization,Standardization);
        strt:=datetostr(day);
        if istable(data) then
        begin
          for j,name in fnames do
          begin
            fname:=name+strt;//文件名称
            r:=data[name];
            if name<>"标准因子表" then
              r[:,"截止日"]::=datetostr(mcell); //表中的日期改为字符串格式
            ret:=rdo2 ExportFile(ftcsv(),"",path+fname+".csv",r);//导出数据
            if ret then
              echo fname+"数据导出成功";
            else
              echo fname+"数据导出失败";
          end
        end
      end
      return 1;

    结果:指定路径下导出相关文件

    相关函数说明
    导出数据:FAQ:ExportFile
    日期推移:FAQ:IncYear