知识库 > 金融建模 > 公用函数 > 金融工程 > CAPM

StocksBeta    

简述
组合Beta
定义
StocksBeta(BetaArr:Array,W:Array):Real
参数

BetaArr:一维数字数组
W:一维数字数组

返回:实数
  • 算法:在已知个股Beta的情况下,按给定的比例计算组合加权beta
    范例:

      oV := BackupSystemParameters2();
       //假设组合为申万采掘,先计算其下个股的区间beta
      stockArr := getbk('申万采掘');
      IndexId := 'SH000001';
      BegT := inttodate(20110101);
      EndT := inttodate(20110630);
      t := array();
      n := 0;
      for i:=0 to length(stockArr)-1 do
      begin
       stockid := stockArr[i];
       setsysparam(pn_stock(),stockid);
       if not IsStockGoMarket(begt) then continue;
       tmp := StockBetaAlpha2(IndexId,BegT,EndT);
       t[n]['代码'] := stockid;
       t[n]['名称'] := stockname(stockid);
       t[n]['beta'] := tmp['Beta'];
       n++;
      end
       //按总股本加权,计算组合beta
      t2 := pf_percent(t[:,'代码'],EndT,0);
      t := select [1].['beta'],[2].['比例(%)'] from t
         left join t2 with([1].['代码'] on [2].['代码'])
         end;
       return StocksBeta(t[:,'beta'],t[:,'比例(%)']);  //结果:1.0095

       
相关
FAQ/知识库链接