天软金融分析.NET函数大全 > 金融函数 > 专题函数 > 因子研究 > 因子研究01:Fama-French三四五因子 > 实时计算模型

Fama_French_MultiFactor    

简述
利用多因子框架,计算区间内Fama_French多因子,可参考文档《2021-01-29-应用专题-多因子框架01:天软多因子框架TSMultiFactor(更新版)》。
定义
Fama_French_MultiFactor(begt:Date;endt:Date;FactorArr:DBtable;RateType:integer;Groups:string;IndexID:string;Cycle:string):array;
参数
名称类型说明
BegTDate日期,区间开始日
EndTDate日期,区间截止日
FactorArrDBtable数据表,必须包含“因子名称”、“因子公式”、“因子方向”、“因子比例(%)”,在计算三四五因子时,一次只能计算一个,不同因子对应的因子公式如下:
计算因子 因子名称 因子公式 因子方向 因子比例(%)
SMB 流通市值(万) StockMarketValue(endt) 0 100
HML 市净率(%)倒数 1/StockPNA(endt) 1 100
MOM 过去11个月涨幅(%) StockZf2(220) 1 100
RMW 净资产增长率(%) NetEquityReturn(Rdate) 1 100
CMA 总资产增长率(%) TotalAssetGrowRatio(Rdate) 0 100
RateTypeinteger用户自定义,加权方式
取值 含义
0 总股本加权
1 流通股本加权
4 等权重
5 等股数
6 流通市值平方根加权
7 总市值平方根加权
31 自由流通股本加权
Groupsstring字符串,分组百分位,Groups:="0,50;50,100",表示分为两组,第一组是 0-50%,第二组 50%-100%
IndexIDstring字符串,指数代码,利用指数成分股计算三四五因子,默认为中证全指
Cyclestring调仓周期,默认为月线
注:关于参数的更多详细内容,请参考天软多因子框架文档。
返回arrayarray,返回区间内每天对应的因子及其因子收益率(%)
(1)多因子框架中的多空收益即为所求的因子,对应的输出字段为“第一组vs最后一组”;
(2)第一天的因子为零,即“第一组vs最后一组”为0,无实际含义,为多因子框架结构所致,因此若要计算2022-02-22~2022-02-28区间的因子,开始日需要往前推一个交易日,即开始日需设为2022-02-21,即真正有用的因子收益率数据从第二行开始。
(3)不支持提取一天的数据,即BegT与EndT不能设置为同一天,此时返回改天的数据都是0,无意义
  • 范例

    BegT:=20220221T;
      EndT:=20220228T;
      IndexID:="SH000985";
      Cycle:="日线";
     FactorArr:=array(("因子名称":"市净率(%)倒数","因子公式":"1/StockPNA(endt)",
               "因子方向":1,"因子比例(%)":100));
      RateType:=4; //等权
      Groups:="0,30;30,70;70,100";  //分3组
      Return Fama_French_MultiFactor(BegT,EndT,FactorArr,RateType,Groups,IndexID,Cycle);

相关