In [1]:
#!/Tsan/bin/python
# -*- coding: utf-8 -*-
In [2]:
# Libraries to use
from __future__ import division
import numpy as np
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import seaborn as sns
from datetime import datetime
import statsmodels
import cvxopt as cv
from cvxopt import solvers
In [3]:
# Import My own library for factor testing
from SingleFactorTest import factorFilterFunctions as ff
from BarraModel import barraRiskModel as brm
#from config import *
In [4]:
# basic stocl pool
ZZ500Weight = 'LZ_GPA_INDEX_CSI500WEIGHT.csv'
HS300Weight = 'LZ_GPA_INDEX_HS300WEIGHT.csv'
In [5]:
# Files to use
filenamePrice='Own_Factor_AdjustedPriceForward-1d.csv'
filenameST='LZ_GPA_SLCIND_ST_FLAG.csv'
filenameTradeday='LZ_GPA_SLCIND_TRADEDAYCOUNT.csv'
filenameStopFlag='LZ_GPA_SLCIND_STOP_FLAG.csv'
filenameIndu='LZ_GPA_INDU_ZX.csv'
filenameFCAP='LZ_GPA_VAL_A_FCAP.csv'
filenameAdjustFactor='LZ_GPA_CMFTR_CUM_FACTOR.csv'
filenameBENCH = 'LZ_GPA_INDXQUOTE_CLOSE.csv'
In [6]:
# Factors
# Value factor
filenamePE='LZ_GPA_VAL_PE.csv' # 市盈率
filenamePB='LZ_GPA_VAL_PB.csv' # 市净率
filenamePS = 'LZ_GPA_VAL_PS.csv' # 市销率
filenamePCF = 'LZ_GPA_VAL_PC.csv' # 市现率
filenameADJPB ='Own_Factor_AdjustedPB-1d.csv' # 市值调整市净率
# Growth factor
filenameYOYGR = 'LZ_GPA_FIN_IND_QFA_YOYGR.csv' # 单季度.营业总收入同比增长率(%)
filenameYOYNETPROFIT = 'LZ_GPA_FIN_IND_QFA_YOYNETPROFIT.csv' # 单季度.归属母公司股东的净利润同比增长率(%)
filenameYOYOCF = 'LZ_GPA_FIN_IND_YOYOCF.csv' # 同比增长率-经营活动产生的现金流量净额(%)
filenameYOYROE = 'LZ_GPA_FIN_IND_YOYROE.csv' # 同比增长率-净资产收益率(摊薄)(%)
filenameYOYBPS = 'LZ_GPA_FIN_IND_YOYBPS.csv' # 相对年初增长率-每股净资产(%)
# Financial factor
filenameCAPITALIZEDTODA = 'LZ_GPA_FIN_IND_CAPITALIZEDTODA.csv' # 资本支出/折旧和摊销
filenameCASHRATIO = 'LZ_GPA_FIN_IND_CASHRATIO.csv' # 保守速动比率
filenameCASHTOLIQDEBT = 'LZ_GPA_FIN_IND_CASHTOLIQDEBT.csv' # 货币资金/流动负债
filenameOCFTODEBT = 'LZ_GPA_FIN_IND_OCFTODEBT.csv' # 经营活动产生的现金流量净额/负债合计
filenamePROFITTOOP = 'LZ_GPA_FIN_IND_PROFITTOOP.csv' # 利润总额/营业收入
filenamePROFITTOOPTTM ='LZ_GPA_FIN_DERI_COMBO_EBTTOOR_TTM.csv' # # 利润总额/营业收入(TTM)
# Momentum factor
filenameTRUEMOM = 'LZ_GPA_USR_MOM.csv' # 真动量
filenameMOM1M = 'LZ_GPA_DERI_Momentum_1M.csv' # 一月反转
filenameMOM3M = 'LZ_GPA_TURNOVER_TurnoverAvg_3M.csv' # 三月反转
filenamePVO = 'LZ_GPA_DERI_PVO.csv' # 一年偏度
filenameABNORMALVOLUME = 'LZ_GPA_DERI_NormalizedAbormalVolume.csv' # 归一化异常交易量
filenameSKEW = 'LZ_GPA_DERI_TSKEW.csv'# 偏度
filenameMACD = 'LZ_GPA_DERI_MACD.csv' # MACD
# Liquidity factor
filenameTURNOVER1M = 'LZ_GPA_TURNOVER_TurnoverAvg_1M.csv' # 一月换手率均值
filenameAMOUNTAVG1M = 'LZ_GPA_DERI_AmountAvg_1M.csv' # 日均成交量
filenameILLIQ = 'LZ_GPA_DERI_ILLIQ.csv' # 非流动性因子
filenameVOLUME = 'LZ_GPA_QUOTE_TVOLUME.csv' # 成交量
filenameOWNILLIQ ='Own_Factor_ILLQ-1d.csv' # 非流动性因子(自算)
filenameADJTURNOVER = 'LZ_GPA_DERI_adjustedTurnOver_20.csv' #市值调整换手率
filenameDDA = 'Own_Factor_DDA-1d.csv' # 股票每日成交额(前复权)
# Volatility factor
filenameRV1Y = 'LZ_GPA_DERI_RealizedVolatility_1Y.csv' # 一年收益波动
filenameOwnVol = 'Own_Factor_Volatility_90d.csv' # 90天收益波动率
filenameAbove20 = 'Own_Factor_Above20MA_20d.csv' # 高于20天MA的价格平均
filenameADJTOV20 = 'Own_Factor_ADJ_Turnover_Volatility_20D.csv'# 20天换手率波动率(市值调整)
In [7]:
filenameLMAO = 'Own_Factor_LMAO.csv' # 市值对数
In [8]:
filenameAroon = 'Aroon_Allstocks.csv'
filenameDDA20 = 'Own_Factor_DDA-20d.csv' # DDA二十天均值 2012-2016 Cum return 2.2(group0), - 0.6(group9) monotonicity: Perfect
filenameIDIVOL = 'Own_Factor_Idiosyncratic_Volatility.csv' # 特异常波动率
filenamePPO ='LZ_GPA_DERI_PPO.csv' #
In [9]:
# some useful parameters
startTime = datetime.strptime('20120101', '%Y%m%d')
endTime = datetime.strptime('20161231', '%Y%m%d')
facNum = 5 # factor Num
path = ff.data_path # path
timeStampNum = 2500 # Number of time period
thresholdNum = 0.05 # thresholdNum to filter stocks by Nan's amount
HS300Index ='000300.SH' # HS300 index code
ZZ500Index = '000905.SH' # ZZ500 index code
In [10]:
stockPool = pd.read_csv(path+ZZ500Weight,infer_datetime_format=True,parse_dates=[0],index_col=0).loc[startTime:endTime]
#stockPool = stockPool.iloc[-1].dropna(how='any').index.tolist() # get today's ZX500 stock pool
stockPool1 = pd.read_csv(path+HS300Weight,infer_datetime_format=True,parse_dates=[0],index_col=0).loc[startTime:endTime]
stockPool = stockPool.dropna(how = 'all',axis =1).columns.tolist() # stock pool
stockPool1 = stockPool1.dropna(how = 'all',axis =1).columns.tolist()
stockPool = list((set(stockPool1)|set(stockPool)))
In [11]:
filename7factor = {'PB':filenamePB,'YOYGR':filenameYOYGR,'OCFTODEBT':filenameOCFTODEBT,'MOM_1M':filenameMOM1M,
'VOLATILITY':filenameOwnVol,'DDA20':filenameDDA20,'OWNILLIQ':filenameOWNILLIQ,
'IDIVOL':filenameIDIVOL,'ADJTOV20':filenameADJTOV20,'LMAO':filenameLMAO}
In [12]:
def PreProcess(filename,start,end ):
df = pd.read_csv(path+filename, infer_datetime_format=True, parse_dates=[0], index_col=0).loc[start:end]
return df
In [13]:
def newToFilter(data, threshold=0.2, length=None):
if length:
#print 1
df = data.loc[:, data.isnull().sum() < (len(data) * threshold)].iloc[-length:]
else:
#print 2
df = data.loc[:, data.isnull().sum() < (len(data) * threshold)]
stkList = df.iloc[0].dropna().index.tolist()
df = df[stkList].fillna(method='ffill')
return df
In [ ]:
filename7factor
In [14]:
filename7factor.values()[:4]
Out[14]:
['LZ_GPA_VAL_PB.csv',
'Own_Factor_LMAO.csv',
'Own_Factor_ILLQ-1d.csv',
'LZ_GPA_FIN_IND_OCFTODEBT.csv']
In [15]:
filename7factor.keys()
Out[15]:
['PB',
'LMAO',
'OWNILLIQ',
'OCFTODEBT',
'MOM_1M',
'IDIVOL',
'VOLATILITY',
'ADJTOV20',
'DDA20',
'YOYGR']
In [16]:
factorList = [PreProcess(i,startTime,endTime) for i in filename7factor.values()]
In [81]:
factorNameList = [i.index.name for i in factorList]
In [83]:
toUseNameDict = dict(zip(factorNameList,filename7factor.keys()))
In [84]:
toUseNameDict
Out[84]:
{'LZ_GPA_DERI_Momentum_1M-f': 'MOM_1M',
'LZ_GPA_FIN_IND_OCFTODEBT-d': 'OCFTODEBT',
'LZ_GPA_FIN_IND_QFA_YOYGR-d': 'YOYGR',
'LZ_GPA_VAL_PB-d': 'PB',
'Own_Factor_ADJ_Turnover_Volatility_20D': 'ADJTOV20',
'Own_Factor_DDA-20d': 'DDA20',
'Own_Factor_ILLQ-1d': 'OWNILLIQ',
'Own_Factor_LMAO': 'LMAO',
'Own_Factor_Volatility_90d': 'VOLATILITY',
'idiosyncratic volatility': 'IDIVOL'}
In [17]:
factorList = [newToFilter(i[stockPool], threshold=0.2, length=None) for i in factorList]
In [18]:
stkList = map(lambda x: x.columns.tolist(), factorList) # get the stk List of each data
stkList = reduce(lambda x, y: list(set(x) & set(y)), stkList) # Calc intersections of all data's columns
factorList = map(lambda x: x[stkList], factorList)
In [19]:
#%timeit ff.adjBoxplot(factorList[0])
In [20]:
factorListNor = [ ff.adjBoxplot(i) for i in factorList]
In [21]:
factorListNor[0]
Out[21]:
002344.SZ
300024.SZ
300039.SZ
600059.SH
600501.SH
000713.SZ
002233.SZ
600360.SH
600565.SH
600636.SH
...
600122.SH
601908.SH
000837.SZ
600282.SH
600739.SH
600406.SH
600866.SH
600227.SH
300134.SZ
002195.SZ
LZ_GPA_VAL_PB-d
2012-01-04
1.260804
0.853994
0.545979
-0.052680
-0.151373
0.303183
-0.264694
-0.694107
-0.498245
0.972395
...
-0.965805
-0.275564
-0.360340
-0.949195
-0.631935
4.545753
-0.628735
-0.979519
-0.452785
1.140371
2012-01-05
1.307592
0.898254
0.592392
-0.059159
-0.169566
0.207315
-0.306544
-0.709280
-0.462721
0.999199
...
-0.986921
-0.331959
-0.404299
-0.962552
-0.613066
4.359528
-0.653389
-1.002325
-0.486100
1.089913
2012-01-06
1.314157
0.995628
0.596897
-0.042213
-0.156721
0.081552
-0.254270
-0.704047
-0.418329
1.035368
...
-0.990153
-0.318896
-0.378922
-0.966154
-0.582610
4.313835
-0.682209
-1.003898
-0.506566
1.159243
2012-01-09
1.289860
1.098600
0.610544
-0.046624
-0.147963
0.066454
-0.223012
-0.699595
-0.442475
1.094138
...
-0.988530
-0.304009
-0.329504
-0.970844
-0.578126
4.527740
-0.676916
-1.000959
-0.497500
1.048248
2012-01-10
1.279887
1.048587
0.576716
-0.051096
-0.145716
0.161812
-0.192642
-0.700476
-0.465181
1.109038
...
-0.996068
-0.286084
-0.313082
-0.972912
-0.601194
4.460619
-0.651501
-1.006109
-0.485468
1.109499
2012-01-11
1.310881
1.000491
0.528993
-0.072447
-0.143458
0.188453
-0.224520
-0.702616
-0.478669
1.098151
...
-0.995393
-0.299744
-0.325834
-0.966206
-0.610235
4.435787
-0.660893
-1.002600
-0.488110
1.362096
2012-01-12
1.271949
0.978893
0.488108
-0.076580
-0.132221
0.153610
-0.212848
-0.693699
-0.475650
1.146518
...
-0.991270
-0.263673
-0.329248
-0.958407
-0.606750
4.643805
-0.655568
-0.987457
-0.482373
1.295279
2012-01-13
1.313726
0.881163
0.386719
-0.073091
-0.144004
0.182291
-0.223076
-0.696278
-0.469786
1.166049
...
-0.980702
-0.223025
-0.336682
-0.943398
-0.588060
4.815623
-0.667389
-0.964590
-0.529462
1.179801
2012-01-16
1.304309
0.909028
0.406899
-0.077744
-0.151983
0.232740
-0.220667
-0.703110
-0.472310
1.226221
...
-0.991707
-0.248823
-0.346049
-0.954092
-0.570415
4.526510
-0.692277
-0.988352
-0.559746
1.210988
2012-01-17
1.303490
0.943775
0.373382
-0.072577
-0.160079
0.235676
-0.183686
-0.705397
-0.481499
1.318809
...
-0.997649
-0.244434
-0.321183
-0.958147
-0.565802
4.467340
-0.692911
-0.994974
-0.556149
1.280723
2012-01-18
1.343681
0.917392
0.237544
-0.078948
-0.099424
0.222872
-0.136184
-0.695916
-0.463747
1.371896
...
-0.993545
-0.264522
-0.319608
-0.954796
-0.563440
4.571426
-0.694626
-0.983656
-0.569782
1.232540
2012-01-19
1.336945
0.993555
0.260630
-0.071170
-0.104000
0.204189
-0.141358
-0.695957
-0.464586
1.390960
...
-0.994173
-0.232138
-0.293107
-0.962421
-0.552455
4.429029
-0.705445
-0.995790
-0.668788
1.234844
2012-01-20
1.297751
1.054266
0.279561
-0.048747
-0.111339
0.247292
-0.126317
-0.689911
-0.463717
1.308682
...
-0.993834
-0.243514
-0.258597
-0.956310
-0.541971
4.617662
-0.689544
-0.988106
-0.645135
1.182604
2012-01-30
1.257225
1.046146
0.272346
-0.032653
-0.105173
0.239880
-0.170105
-0.683916
-0.468726
1.299810
...
-0.993605
-0.245788
-0.287687
-0.955447
-0.543196
4.590475
-0.691137
-0.989547
-0.642543
1.185917
2012-01-31
1.186032
1.067184
0.208718
-0.040947
-0.087886
0.227265
-0.171608
-0.674513
-0.451529
1.235976
...
-0.978317
-0.303771
-0.269060
-0.954382
-0.539863
4.775788
-0.690211
-0.978576
-0.640267
1.156398
2012-02-01
1.225909
1.110423
0.236829
-0.054105
-0.102603
0.251040
-0.207893
-0.666931
-0.436963
1.212120
...
-0.986868
-0.317462
-0.294850
-0.961087
-0.550758
4.624307
-0.687323
-0.982853
-0.638561
1.175192
2012-02-02
1.209297
1.115534
0.303141
-0.069942
-0.105674
0.235567
-0.200111
-0.665454
-0.438669
1.228123
...
-0.990567
-0.315708
-0.290037
-0.965052
-0.557481
3.809057
-0.687339
-0.984966
-0.630967
1.192028
2012-02-03
1.230791
1.077796
0.290315
-0.078080
-0.109845
0.205710
-0.222634
-0.645352
-0.451180
1.257339
...
-0.994002
-0.302431
-0.286932
-0.972877
-0.575837
3.999378
-0.649393
-0.983926
-0.614917
1.213246
2012-02-06
1.259119
1.049297
0.352696
-0.081181
-0.120513
0.220467
-0.200350
-0.659173
-0.465880
1.250956
...
-0.986737
-0.257487
-0.292074
-0.981584
-0.575408
4.160406
-0.659939
-0.983370
-0.587039
1.209023
2012-02-07
1.230301
1.029177
0.329936
-0.097109
-0.125323
0.212894
-0.220222
-0.663288
-0.452367
1.187750
...
-0.986607
-0.260223
-0.307366
-0.964413
-0.595175
4.122471
-0.666349
-0.976862
-0.584971
1.160403
2012-02-08
1.187232
1.026501
0.314158
-0.094965
-0.125139
0.183109
-0.206244
-0.653726
-0.457990
1.200100
...
-0.977061
-0.247068
-0.309289
-0.963256
-0.586081
4.083194
-0.657030
-0.969764
-0.574051
1.200149
2012-02-09
1.179811
1.005832
0.292905
-0.078583
-0.137361
0.171233
-0.205158
-0.649248
-0.448748
1.239079
...
-0.977009
-0.261484
-0.299918
-0.965244
-0.598609
4.094267
-0.635522
-0.964166
-0.578265
1.092895
2012-02-10
1.195636
0.988363
0.268568
-0.089614
-0.134215
0.193236
-0.199744
-0.654530
-0.447600
1.208674
...
-0.984873
-0.249590
-0.302131
-0.964337
-0.595421
4.063445
-0.646835
-0.909296
-0.576894
1.085751
2012-02-13
1.164702
0.974978
0.344175
-0.074317
-0.132185
0.158409
-0.227795
-0.623458
-0.455936
1.185503
...
-0.978484
-0.263751
-0.271280
-0.966804
-0.599423
3.996559
-0.635717
-0.915935
-0.559606
1.085646
2012-02-14
1.207921
1.011790
0.416470
-0.077248
-0.118203
0.150656
-0.210277
-0.644036
-0.445105
1.228841
...
-0.998291
-0.283053
-0.234389
-0.987193
-0.614376
4.024971
-0.650322
-0.937546
-0.582849
1.096449
2012-02-15
1.201026
0.994352
0.415742
-0.097937
-0.107587
0.132208
-0.215967
-0.624612
-0.456150
1.304606
...
-0.990486
-0.272364
-0.242153
-0.983794
-0.594789
3.920329
-0.623157
-0.944806
-0.572822
1.099095
2012-02-16
1.236466
1.040317
0.367288
-0.093838
-0.110479
0.162130
-0.225884
-0.636791
-0.438083
1.280481
...
-0.998711
-0.236863
-0.219877
-0.997332
-0.609614
3.943551
-0.636250
-0.956369
-0.585391
1.113824
2012-02-17
1.230570
1.027095
0.337686
-0.104269
-0.084449
0.135987
-0.239951
-0.650254
-0.431593
1.250636
...
-1.001589
-0.218849
-0.224174
-0.996905
-0.590991
3.968876
-0.650056
-0.966238
-0.597795
1.057663
2012-02-20
1.209469
1.028013
0.265413
-0.092302
-0.093837
0.132117
-0.235893
-0.659488
-0.453333
1.241988
...
-1.008640
-0.238170
-0.222380
-1.003344
-0.608012
4.163153
-0.654588
-0.967756
-0.596528
1.065977
2012-02-21
1.185766
1.014540
0.264875
-0.043117
-0.103864
0.118025
-0.240385
-0.657779
-0.446806
1.233933
...
-1.012714
-0.243077
-0.234658
-1.006057
-0.604375
4.167688
-0.656164
-0.959897
-0.587145
1.109747
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
2016-11-21
-0.361087
1.158182
0.219231
-0.565796
-0.021699
-0.321572
-0.581784
0.021840
-0.354721
-0.476265
...
-0.749942
-0.447654
-0.521488
-0.748698
-0.748332
0.380290
0.248501
-0.463277
0.068965
0.063587
2016-11-22
-0.365699
1.198680
0.229791
-0.572053
-0.019934
-0.317460
-0.600638
0.008907
-0.358269
-0.484028
...
-0.754213
-0.400836
-0.525607
-0.725592
-0.720248
0.363054
0.252081
-0.471035
0.053267
0.031819
2016-11-23
-0.390947
1.152441
0.208690
-0.563111
-0.000375
-0.325587
-0.597054
0.008896
-0.361224
-0.475604
...
-0.709053
-0.416521
-0.521991
-0.702741
-0.715654
0.354921
0.225752
-0.455116
0.054850
0.020835
2016-11-24
-0.383041
1.161141
0.203955
-0.550430
0.005406
-0.338683
-0.601020
0.040269
-0.364125
-0.477587
...
-0.724087
-0.445436
-0.542181
-0.695162
-0.678189
0.326179
0.204102
-0.447709
0.097862
-0.030301
2016-11-25
-0.393290
1.150048
0.194777
-0.554099
-0.008747
-0.347560
-0.603383
0.005539
-0.370999
-0.475274
...
-0.716631
-0.449465
-0.535828
-0.683967
-0.678618
0.311722
0.176937
-0.456178
0.107337
-0.023321
2016-11-28
-0.413637
1.162505
0.211835
-0.560749
-0.025942
-0.349246
-0.604223
-0.018107
-0.340464
-0.482255
...
-0.727284
-0.449130
-0.540087
-0.689713
-0.691426
0.337301
0.166612
-0.466731
0.102949
-0.037640
2016-11-29
-0.405675
1.200512
0.209497
-0.553648
0.036291
-0.359850
-0.625147
-0.043976
-0.348762
-0.478133
...
-0.725822
-0.466861
-0.548601
-0.707883
-0.698858
0.343729
0.157631
-0.470249
0.092798
-0.046407
2016-11-30
-0.432521
1.245857
0.264766
-0.551771
0.032239
-0.354005
-0.632094
-0.029837
-0.359681
-0.472370
...
-0.720232
-0.478636
-0.550260
-0.711201
-0.688309
0.343504
0.159377
-0.480111
0.103383
-0.014134
2016-12-01
-0.432863
1.227047
0.253768
-0.560766
0.026699
-0.354468
-0.630713
-0.030115
-0.371179
-0.479752
...
-0.727813
-0.478977
-0.554015
-0.707596
-0.696159
0.338951
0.168179
-0.483589
0.090079
-0.022220
2016-12-02
-0.436019
1.228620
0.227128
-0.567935
0.002099
-0.356223
-0.628684
-0.042357
-0.356409
-0.464478
...
-0.714619
-0.484939
-0.528166
-0.707736
-0.681770
0.374370
0.152763
-0.468347
0.070958
-0.030824
2016-12-05
-0.453735
1.221026
0.196846
-0.550574
0.007717
-0.346552
-0.616453
-0.044774
-0.347836
-0.451607
...
-0.698253
-0.476441
-0.521779
-0.698143
-0.731743
0.400611
0.159211
-0.456743
0.062189
-0.010917
2016-12-06
-0.455036
1.187792
0.192042
-0.558332
-0.017567
-0.339855
-0.606428
-0.017825
-0.355752
-0.452902
...
-0.700340
-0.475497
-0.531579
-0.697985
-0.740120
0.429397
0.180008
-0.458054
0.092463
0.005653
2016-12-07
-0.435340
1.171261
0.196879
-0.560554
-0.026840
-0.337236
-0.590756
-0.031425
-0.362817
-0.461649
...
-0.706327
-0.475913
-0.532170
-0.684203
-0.742934
0.418377
0.188473
-0.462886
0.075195
0.003727
2016-12-08
-0.435722
1.140519
0.175184
-0.550227
-0.052030
-0.336334
-0.595253
-0.032245
-0.336155
-0.454106
...
-0.683977
-0.477266
-0.522794
-0.682397
-0.737369
0.385414
0.169978
-0.452778
0.064126
-0.003449
2016-12-09
-0.432694
1.138872
0.169764
-0.547292
-0.048041
-0.337285
-0.607556
-0.041465
-0.332470
-0.451848
...
-0.693981
-0.488718
-0.526881
-0.673785
-0.732648
0.381963
0.174903
-0.456879
0.067276
-0.000822
2016-12-12
-0.435601
1.033690
0.131067
-0.545481
-0.043354
-0.351530
-0.613307
-0.084057
-0.312469
-0.408843
...
-0.644592
-0.486817
-0.519818
-0.656383
-0.732715
0.431686
0.152532
-0.439762
-0.021123
-0.040945
2016-12-13
-0.441303
1.026492
0.139673
-0.543547
-0.019361
-0.341948
-0.600226
-0.096600
-0.320277
-0.418076
...
-0.681688
-0.504242
-0.535323
-0.660313
-0.740811
0.389726
0.160603
-0.415372
-0.038439
-0.037031
2016-12-14
-0.434605
0.962636
0.126431
-0.529548
0.013601
-0.358300
-0.592795
-0.100159
-0.329932
-0.405378
...
-0.686987
-0.488587
-0.524862
-0.652287
-0.724835
0.482127
0.166461
-0.400262
-0.032582
-0.055513
2016-12-15
-0.412088
1.017528
0.130916
-0.537571
0.024560
-0.354669
-0.601414
-0.075553
-0.291188
-0.413820
...
-0.690844
-0.493181
-0.525337
-0.652011
-0.736425
0.494374
0.193748
-0.404834
0.003159
-0.043686
2016-12-16
-0.408067
1.029297
0.137454
-0.529692
0.032518
-0.311369
-0.595626
-0.079795
-0.267855
-0.418095
...
-0.682475
-0.487790
-0.523389
-0.656617
-0.725309
0.460819
0.208724
-0.391450
0.008594
-0.019842
2016-12-19
-0.419845
0.984353
0.116970
-0.528122
0.034939
-0.298463
-0.590460
-0.102452
-0.267719
-0.416303
...
-0.664380
-0.485229
-0.508889
-0.639338
-0.723388
0.460289
0.207927
-0.373658
-0.012239
-0.038273
2016-12-20
-0.410865
1.000019
0.128951
-0.534268
0.025294
-0.318420
-0.602575
-0.071579
-0.276500
-0.414078
...
-0.659170
-0.489206
-0.513665
-0.641103
-0.727870
0.423996
0.228216
-0.372337
0.004691
-0.025517
2016-12-21
-0.418494
1.026513
0.137612
-0.542960
0.050941
-0.315240
-0.617311
-0.071447
-0.285937
-0.426366
...
-0.664291
-0.504217
-0.523461
-0.647052
-0.740830
0.451820
0.231426
-0.390211
0.007861
-0.024322
2016-12-22
-0.420476
1.015799
0.130877
-0.539428
0.024624
-0.325248
-0.577818
-0.090872
-0.262988
-0.425279
...
-0.666896
-0.504168
-0.520397
-0.614824
-0.739854
0.510987
0.229270
-0.398206
-0.013584
-0.048808
2016-12-23
-0.435855
1.013608
0.133864
-0.523596
0.033616
-0.341063
-0.592259
-0.078101
-0.248126
-0.416481
...
-0.671240
-0.503962
-0.527456
-0.609814
-0.744506
0.558352
0.228620
-0.369159
-0.017826
-0.046887
2016-12-26
-0.549703
1.024180
0.148204
-0.518756
0.044484
-0.334760
-0.591604
-0.081668
-0.253547
-0.422275
...
-0.688159
-0.502363
-0.528771
-0.633542
-0.753167
0.549618
0.250199
-0.347927
-0.023862
-0.020786
2016-12-27
-0.551680
1.014731
0.149212
-0.514309
0.048778
-0.323650
-0.590746
-0.072000
-0.225665
-0.423707
...
-0.693893
-0.510128
-0.529717
-0.640436
-0.758538
0.557918
0.274509
-0.339698
-0.010519
-0.029468
2016-12-28
-0.543882
0.980552
0.135144
-0.512427
0.056098
-0.317974
-0.592142
-0.066374
-0.236251
-0.417580
...
-0.685279
-0.501682
-0.527820
-0.633747
-0.753356
0.534647
0.296358
-0.338646
-0.040013
-0.032911
2016-12-29
-0.526468
0.996494
0.153062
-0.510048
0.059654
-0.311850
-0.583453
-0.085328
-0.260761
-0.418730
...
-0.675928
-0.486575
-0.529379
-0.608606
-0.741646
0.537031
0.277444
-0.339503
-0.034276
-0.029313
2016-12-30
-0.533275
0.995941
0.142285
-0.505414
0.037435
-0.300864
-0.601409
-0.098092
-0.255923
-0.415532
...
-0.664652
-0.461732
-0.511453
-0.604039
-0.739863
0.533342
0.293632
-0.348658
-0.046223
-0.048779
1214 rows × 896 columns
In [ ]:
In [22]:
# daily return
PriceDF = pd.read_csv(path+filenamePrice,infer_datetime_format=True,parse_dates=[0],index_col=0)[stkList].loc[startTime:endTime]
PriceDF = newToFilter(PriceDF, threshold=0.2, length=None)
returnDF = PriceDF.pct_change()[1:]
benchmarkData = pd.read_csv(path+filenameBENCH,infer_datetime_format=True,parse_dates=[0],index_col=0)[ZZ500Index].loc[startTime:endTime]
returnOfBench = benchmarkData.pct_change()[1:]
activeReturnDF = returnDF .apply(lambda x: x - returnOfBench )
activeReturnDF.head().iloc[:,2].values
Out[22]:
array([ 0.00309076, -0.0027402 , 0.00772788, -0.01769505, -0.01813368])
In [23]:
returnDF
Out[23]:
002344.SZ
300024.SZ
300039.SZ
600059.SH
600501.SH
000713.SZ
002233.SZ
600360.SH
600565.SH
600636.SH
...
600122.SH
601908.SH
000837.SZ
600282.SH
600739.SH
600406.SH
600866.SH
600227.SH
300134.SZ
002195.SZ
LZ_GPA_DERI_AdjustedPriceForward_20-d
2012-01-05
-0.044705
-0.040231
-0.033832
-0.049603
-0.055557
-0.100074
-0.071032
-0.038362
0.000000
-0.048410
...
-0.029555
-0.081740
-0.072221
-0.018382
-0.005748
-0.007800
-0.050967
-0.031249
-0.062620
-0.076971
2012-01-06
0.000000
0.037725
0.001546
0.013570
0.012313
-0.069194
0.045400
0.015959
0.045752
0.012333
...
0.012690
0.015096
0.026946
0.011236
0.039637
0.006918
-0.022222
0.016129
-0.012397
0.024017
2012-01-09
0.033498
0.083670
0.048329
0.038106
0.047298
0.031859
0.065143
0.044500
0.018748
0.065482
...
0.040099
0.052820
0.083090
0.029630
0.044480
0.008744
0.045455
0.042328
0.048815
0.000000
2012-01-10
0.035271
0.019702
0.023541
0.037698
0.042580
0.100343
0.064378
0.042607
0.021473
0.044783
...
0.033735
0.056016
0.055182
0.043165
0.019012
0.021362
0.072464
0.038071
0.053856
0.063191
2012-01-11
0.016574
-0.013053
-0.017730
-0.011472
0.003713
0.018706
-0.021169
-0.004806
-0.012012
0.001368
...
-0.006991
-0.009225
-0.008928
0.003448
-0.010448
0.009094
-0.011824
-0.002445
-0.002523
0.099879
2012-01-12
-0.008605
-0.004233
-0.017073
-0.003869
0.006166
-0.019128
0.006179
0.000000
-0.003039
0.022769
...
-0.014086
0.025139
-0.006436
-0.006873
-0.004525
-0.014418
-0.003419
0.004901
-0.000633
-0.017828
2012-01-13
-0.014162
-0.066950
-0.079404
-0.032039
-0.042893
-0.016381
-0.042989
-0.045895
-0.033537
-0.021816
...
-0.035714
-0.005448
-0.042747
-0.027682
-0.021970
-0.032307
-0.054889
-0.014634
-0.081646
-0.068065
2012-01-16
-0.054680
-0.038157
-0.034501
-0.040120
-0.040974
-0.014275
-0.032086
-0.022783
-0.028393
-0.030041
...
-0.007408
-0.052055
-0.037889
-0.010676
-0.003873
-0.099213
-0.043557
-0.029705
-0.051688
-0.040170
2012-01-17
0.051470
0.066905
0.035734
0.058515
0.049399
0.055511
0.083978
0.056993
0.048701
0.086344
...
0.054727
0.059248
0.077357
0.057554
0.062985
0.021678
0.058824
0.053571
0.061773
0.077995
2012-01-18
-0.010723
-0.034407
-0.091645
-0.028627
0.016540
-0.031250
0.008155
-0.014704
-0.009285
-0.006479
...
-0.018869
-0.039109
-0.023498
-0.020408
-0.022677
-0.070499
-0.026882
-0.007263
-0.037645
-0.040587
2012-01-19
0.000943
0.034484
0.019584
0.014228
0.006258
-0.003147
0.006067
0.017412
0.012500
0.009565
...
0.026444
0.035021
0.032085
0.013889
0.025450
0.064433
0.005525
0.007316
-0.081081
0.004289
2012-01-20
0.006592
0.043332
0.027357
0.030060
0.009950
0.041041
0.025126
0.014671
0.012345
-0.007752
...
0.000000
0.005487
0.040156
0.010274
0.020438
0.017294
0.025641
0.012107
0.034055
0.001223
2012-01-30
-0.018709
-0.007986
-0.009632
0.003890
-0.002463
-0.009855
-0.036275
-0.002410
-0.012195
-0.007813
...
-0.011709
-0.008640
-0.028643
-0.010169
-0.009299
-0.005780
-0.010714
-0.014354
-0.005987
-0.003658
2012-01-31
-0.016206
0.016639
-0.029748
-0.002907
0.013581
-0.002297
0.000000
0.002416
0.012345
-0.013124
...
0.004738
-0.043578
0.014103
-0.017123
-0.001444
-0.008550
-0.007220
-0.002427
-0.004519
-0.001836
2012-02-01
0.000000
0.002111
0.004126
-0.018464
-0.019489
0.001535
-0.034588
0.004818
0.006096
-0.022606
...
-0.009434
-0.018705
-0.027813
-0.006969
-0.015908
-0.004829
0.000000
-0.002433
-0.002268
-0.007360
2012-02-02
0.013082
0.021076
0.056371
0.008911
0.017392
0.010727
0.025290
0.021583
0.018183
0.024943
...
0.014287
0.021016
0.023407
0.014035
0.013225
0.006586
0.020000
0.017072
0.028051
0.025327
2012-02-03
0.022956
0.001031
0.008894
0.010795
0.013430
-0.000758
0.000000
0.039906
0.005951
0.025664
...
0.014084
0.027286
0.019060
0.006920
-0.000725
0.050275
0.060606
0.021583
0.034660
0.022891
2012-02-06
0.014492
-0.006185
0.038569
0.003884
-0.001205
0.013657
0.022611
-0.006771
-0.005916
0.002157
...
0.023148
0.041473
0.002494
-0.003436
0.007983
0.032459
-0.003361
0.011737
0.036351
0.002943
2012-02-07
-0.018433
-0.016599
-0.023873
-0.026113
-0.019301
-0.017216
-0.031156
-0.029546
-0.008929
-0.030564
...
-0.038462
-0.019686
-0.029851
-0.010345
-0.042476
-0.010797
-0.032040
-0.027841
-0.021320
-0.025836
2012-02-08
0.015493
0.030065
0.021195
0.029792
0.028291
0.012186
0.038382
0.035128
0.021021
0.035968
...
0.035296
0.037882
0.025641
0.020906
0.034586
0.026004
0.034843
0.031025
0.036542
0.027726
2012-02-09
0.003236
-0.002050
-0.005321
0.017357
-0.002393
-0.000752
0.006993
0.011313
0.014705
0.020146
...
0.006817
-0.004838
0.013750
0.003413
-0.006541
0.007822
0.030303
0.016203
0.002034
0.017597
2012-02-10
0.007834
-0.004618
-0.010165
-0.003791
0.005996
0.015813
0.007937
0.000000
0.005798
-0.008824
...
-0.004514
0.013257
0.002466
0.010204
0.008778
-0.004347
-0.006536
0.100229
0.006766
-0.000577
2012-02-13
0.000915
0.006702
0.052432
0.019981
0.010727
-0.009637
-0.011811
0.040269
0.000000
0.003815
...
0.011338
-0.002181
0.033210
-0.003367
0.002175
0.001871
0.018092
-0.008282
0.024194
0.012113
2012-02-14
0.007309
0.006655
0.032871
-0.002799
0.009435
-0.007485
0.013944
-0.012904
0.014408
0.007179
...
-0.008969
-0.013110
0.029761
-0.010135
-0.007235
-0.007781
-0.006462
-0.012526
-0.015748
-0.003989
2012-02-15
0.011338
0.007122
0.013924
0.000936
0.022195
0.003771
0.010806
0.037037
0.005683
0.041090
...
0.031674
0.023471
0.009250
0.023891
0.036443
-0.005646
0.045528
0.006343
0.026000
0.014875
2012-02-16
0.004036
0.009596
-0.001963
0.000000
-0.004571
0.012772
-0.008746
-0.008403
0.016947
-0.016915
...
0.002195
0.025530
0.014890
-0.006667
-0.011252
-0.007571
-0.009331
-0.004203
-0.009098
-0.002820
2012-02-17
-0.004020
-0.007005
-0.017199
-0.009346
0.014926
-0.017063
-0.012745
-0.016949
0.002780
-0.012290
...
-0.008753
0.010548
-0.005643
-0.003356
0.015648
0.002861
-0.017268
-0.018988
-0.015081
-0.022610
2012-02-20
-0.008969
-0.001007
-0.037500
0.008491
-0.005656
-0.002264
0.003972
-0.006465
-0.016622
-0.004562
...
-0.004416
-0.012944
0.002270
-0.003367
-0.014006
0.032013
-0.001597
0.004302
0.003994
0.001735
2012-02-21
0.002715
0.006051
0.010910
0.043966
0.004550
0.003026
0.007913
0.013014
0.016903
0.008333
...
0.004436
0.007616
0.002264
0.006757
0.014915
0.011978
0.009600
0.023554
0.020558
0.027714
2012-02-22
0.020307
0.047119
0.021068
0.006272
0.039638
0.016591
0.017664
0.010707
0.011080
0.021488
...
0.019868
0.041141
0.025989
0.010067
0.020294
0.013353
0.020602
0.008369
0.054580
0.030897
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
2016-11-21
-0.008527
-0.013761
0.005352
0.001959
0.017758
-0.001645
-0.006679
0.005894
-0.001395
0.000000
...
-0.001709
0.033289
0.007822
0.014981
0.011393
-0.017316
0.001393
0.000000
0.020254
0.019857
2016-11-22
0.003127
0.019027
0.011535
0.001955
0.007088
0.011532
-0.014409
-0.003906
0.004190
0.000000
...
0.005993
0.060567
0.004434
0.051661
0.059908
-0.005664
0.006954
0.000000
-0.005720
-0.017134
2016-11-23
-0.032736
-0.012033
-0.012281
-0.000976
0.013535
-0.013844
-0.008772
-0.000980
-0.009736
0.000000
...
0.055319
-0.024301
-0.006622
0.017544
-0.011594
-0.002532
-0.015193
0.008772
0.000677
-0.008716
2016-11-24
0.008864
-0.006300
-0.008881
0.020508
0.000000
-0.013212
0.000000
0.018646
-0.002809
0.000000
...
-0.014516
-0.029888
-0.021111
0.020690
0.068915
-0.023477
-0.019635
0.010145
0.025702
-0.041567
2016-11-25
-0.011182
0.008453
0.001792
-0.009569
-0.004808
-0.008368
-0.009833
-0.019268
-0.007042
0.000000
...
0.000000
-0.006418
0.003406
0.006757
-0.010517
0.000000
-0.010014
-0.011478
0.013518
0.010842
2016-11-28
-0.015347
-0.002096
0.008945
0.001932
-0.012882
0.003376
0.010924
-0.017682
0.036879
0.000000
...
0.000000
0.007752
0.004525
0.006711
-0.004159
0.012346
-0.008671
-0.004354
-0.020936
-0.010726
2016-11-29
0.003281
0.006300
-0.008865
0.004822
0.039695
-0.015980
-0.031434
-0.026000
-0.013680
0.000000
...
0.000000
-0.024359
-0.014640
-0.030000
-0.013921
-0.003851
-0.013120
-0.008746
-0.014033
-0.013344
2016-11-30
-0.034342
0.015025
0.031306
-0.004798
-0.007322
0.000000
-0.017241
0.006160
-0.016644
0.000000
...
0.000000
-0.019711
-0.009142
-0.013746
0.007529
-0.003866
-0.002954
-0.017647
0.003050
0.028740
2016-12-01
0.007621
-0.004934
-0.002602
-0.001929
0.001054
0.006838
0.012384
0.005102
-0.004231
0.000000
...
0.000000
0.008043
0.004613
0.017422
-0.000467
0.001294
0.010370
0.004491
-0.004392
-0.000822
2016-12-02
-0.020168
-0.010744
-0.029565
-0.027053
-0.031579
-0.017827
-0.016310
-0.023350
-0.001416
0.000000
...
0.000000
-0.023936
0.013778
-0.020548
0.001402
0.007752
-0.023460
0.000000
-0.026807
-0.020559
2016-12-05
-0.033448
0.001253
-0.021505
0.003972
-0.000543
-0.001729
-0.004145
-0.007277
-0.002837
0.000000
...
0.000000
-0.005450
-0.009061
-0.010490
-0.099860
0.014744
0.001502
-0.001490
-0.010112
0.010076
2016-12-06
0.000000
-0.014602
-0.003663
-0.007913
-0.019032
0.007792
0.016649
0.020942
-0.007112
0.000000
...
0.000000
0.002740
-0.010286
0.003534
-0.010368
0.015793
0.013493
0.000000
0.021486
0.012469
2016-12-07
0.032831
0.004234
0.013787
0.006979
0.003326
0.012887
0.031730
0.000000
0.002865
0.000000
...
0.000000
0.009563
0.009238
0.031690
0.004715
0.004353
0.016272
0.004478
-0.001724
0.009031
2016-12-08
-0.008591
-0.006745
-0.013599
0.001980
-0.020994
-0.005089
-0.018849
-0.002051
0.021429
0.000000
...
0.018822
-0.010825
0.001144
-0.013652
-0.009906
-0.016718
-0.011645
0.002972
-0.008290
-0.006509
2016-12-09
0.000867
-0.002122
-0.005515
0.000988
0.001129
-0.003410
-0.020222
-0.009250
0.001399
0.000000
...
-0.019277
-0.016416
-0.008000
0.010381
0.004739
-0.003778
0.001473
-0.007407
0.000348
0.000000
2016-12-12
-0.051948
-0.069758
-0.060998
-0.051333
-0.034949
-0.059880
-0.065015
-0.071577
-0.025140
0.000000
...
0.016380
-0.048679
-0.043779
-0.034247
-0.066038
-0.003793
-0.050000
-0.029851
-0.099930
-0.067977
2016-12-13
0.004566
-0.008230
0.006890
0.017690
0.022196
0.019108
0.037528
-0.006704
0.000000
0.000000
...
-0.037873
-0.008772
-0.006024
0.014184
0.010662
-0.026015
0.006192
0.040000
-0.010832
0.006151
2016-12-14
-0.008182
-0.011987
-0.004888
-0.004090
0.027429
-0.028571
-0.017021
-0.004499
-0.020057
0.000000
...
-0.045226
0.000000
-0.008484
-0.020979
-0.014436
0.065798
0.009231
0.002959
0.005084
-0.014847
2016-12-15
0.037580
0.022865
0.005894
0.002053
0.012236
0.012868
0.002165
0.025989
0.049708
0.000000
...
0.012281
0.005900
0.012225
0.017857
-0.000563
0.007335
0.021341
0.004425
0.033074
0.014184
2016-12-16
0.009717
0.011861
0.010742
0.015369
0.012088
0.052632
0.012959
0.002203
0.029248
0.000000
...
0.018198
0.011730
0.007246
-0.003509
0.024239
-0.012743
0.016418
0.020558
0.010169
0.025350
2016-12-19
-0.015748
-0.013526
-0.011594
-0.002018
0.004343
0.012931
0.002132
-0.017582
0.000000
0.000000
...
0.022979
0.000000
0.015588
0.021127
-0.006054
0.004302
0.002937
0.018705
-0.014169
-0.012788
2016-12-20
0.008000
0.000914
0.003910
-0.010111
-0.011892
-0.023830
-0.019149
0.022371
-0.012179
0.000000
...
0.008319
-0.007246
-0.008265
-0.003448
-0.007752
-0.026316
0.008785
-0.001412
0.009077
0.006045
2016-12-21
0.005291
0.004110
0.006816
0.008172
0.021882
0.013949
0.002169
0.004376
0.000000
0.000000
...
0.019802
-0.001460
0.005952
0.017301
0.010603
0.013199
0.001451
-0.007072
0.005247
0.004292
2016-12-22
-0.003509
-0.004093
-0.004836
0.003040
-0.019807
-0.011178
0.056277
-0.016340
0.021918
0.000000
...
-0.006472
-0.001462
0.002368
0.047619
-0.001104
0.034119
-0.001449
-0.009972
-0.016779
-0.019658
2016-12-23
-0.027289
-0.016895
-0.011662
0.012121
-0.006554
-0.026957
-0.027664
-0.002215
0.002681
0.000000
...
-0.013029
-0.008785
-0.017710
0.000000
-0.012714
0.010798
-0.014514
0.021583
-0.016306
-0.011334
2016-12-26
0.013575
0.000464
0.009833
0.014970
0.008796
0.011618
0.011591
-0.001110
-0.001337
0.000000
...
-0.013201
0.010340
0.007211
-0.022727
0.001120
-0.007122
0.013255
0.028169
-0.003470
0.022046
2016-12-27
0.000000
-0.006035
0.000000
0.007866
0.002725
0.012367
0.004167
0.007778
0.026774
0.000000
...
-0.005017
-0.007310
0.001193
-0.006645
-0.004474
0.002989
0.014535
0.009589
0.010058
-0.006903
2016-12-28
0.000000
-0.009341
-0.008763
-0.006829
0.005435
0.000873
-0.013485
0.003308
-0.013038
0.000000
...
-0.001681
0.001473
-0.007151
-0.003344
-0.009551
-0.008939
0.015759
-0.004071
-0.023363
-0.003475
2016-12-29
0.012500
-0.001886
0.006876
0.004912
0.002162
0.004359
0.002103
-0.015385
-0.022457
0.000000
...
0.018519
0.020588
-0.007203
0.040268
0.025525
0.000000
-0.012694
0.000000
-0.005490
-0.008718
2016-12-30
-0.001764
0.009920
-0.001951
0.000978
-0.016181
0.011285
-0.018888
-0.011161
0.002703
0.000000
...
0.009917
0.025937
0.025393
0.000000
-0.006637
0.000000
0.011429
-0.012262
0.000000
-0.004398
1213 rows × 896 columns
In [24]:
# set weight for WLS
weightdf = pd.read_csv(path+filenameFCAP,infer_datetime_format=True,parse_dates=[0],index_col=0)[stkList].loc[startTime:endTime]
weightdf = newToFilter(weightdf, threshold=0.2, length=None)
# the square root is the weight
weight = np.sqrt(weightdf)
weight
Out[24]:
002344.SZ
300024.SZ
300039.SZ
600059.SH
600501.SH
000713.SZ
002233.SZ
600360.SH
600565.SH
600636.SH
...
600122.SH
601908.SH
000837.SZ
600282.SH
600739.SH
600406.SH
600866.SH
600227.SH
300134.SZ
002195.SZ
LZ_GPA_VAL_A_FCAP-d
2012-01-04
574.155505
595.273736
525.024377
780.268345
399.585194
634.964954
639.330922
514.907060
469.382573
842.662942
...
628.192800
354.288018
501.019104
676.953174
1289.269776
1834.775229
544.524875
578.054772
352.022727
378.226706
2012-01-05
561.174702
583.176927
516.066956
760.670330
388.327007
602.355839
616.206172
504.933738
469.382573
822.012946
...
618.839531
339.499632
482.587723
670.702318
1285.559640
1827.605310
530.467120
568.950979
340.822534
363.379142
2012-01-06
561.174702
594.075140
516.465412
765.814063
390.710216
581.142989
630.038866
508.946520
480.000000
827.066352
...
622.753798
342.052628
489.046433
674.459784
1310.789708
1833.916319
524.539927
573.520939
338.703410
367.716712
2012-01-09
570.496268
618.429064
528.798302
780.268345
399.843240
590.327556
650.236390
520.147979
484.479102
853.716074
...
635.117363
350.970084
508.958585
684.378842
1339.624353
1841.917238
536.328813
585.533153
346.871734
367.716712
2012-01-10
580.470263
624.491435
534.986304
794.839725
408.267291
619.237301
670.840310
531.113246
489.652938
872.622798
...
645.741329
360.666051
522.812628
698.993562
1352.298471
1861.487006
555.421189
596.574977
356.089876
379.157155
2012-01-11
585.261021
620.401729
530.222765
790.267263
409.024511
625.002241
663.701699
529.834993
486.703195
873.219463
...
643.479531
358.998607
520.473410
700.197686
1345.215676
1869.931720
552.127684
595.845221
355.640268
397.641227
2012-01-12
582.737473
619.087317
525.676986
788.737219
410.283438
618.995930
665.749113
529.834993
485.962962
883.104536
...
638.931916
363.483150
518.796082
697.787360
1342.168751
1856.401738
551.183068
597.303841
355.527777
394.080853
2012-01-13
578.596478
598.004364
504.374819
775.999250
401.388036
613.905217
651.282067
517.534153
477.744702
873.418261
...
627.418686
362.491379
507.586727
688.061625
1327.343351
1826.167948
535.842788
592.917217
340.705151
380.432806
2012-01-16
562.555208
586.485018
495.597643
760.273217
393.078976
609.507909
640.748509
511.604222
470.914005
860.199061
...
674.819546
352.930588
497.877888
684.378842
1324.770480
1733.212720
524.042968
584.045137
331.783062
372.713416
2012-01-17
576.851085
605.786360
504.374819
782.201141
402.670839
626.196590
667.110565
525.981597
482.244751
896.566974
...
693.038809
363.235461
516.776103
703.797698
1365.854428
1751.898565
539.235766
599.485116
341.877171
386.975651
2012-01-18
573.750075
595.273736
480.708047
770.923477
405.987158
616.334610
669.825166
522.099761
480.000000
893.657609
...
686.469572
356.061792
510.668226
696.579069
1350.278606
1689.015885
531.938599
597.303841
335.380381
379.040974
2012-01-19
574.020394
605.450093
485.392452
776.388319
407.255475
615.364004
671.853920
526.625787
482.990683
897.921451
...
695.486275
362.243012
518.796082
701.399743
1367.352350
1742.580689
533.406019
599.485116
321.496501
379.853495
2012-01-20
575.909067
618.429064
491.987189
787.971082
409.276606
627.864862
680.241934
530.474505
485.962962
894.434365
...
695.486275
363.235461
529.109806
704.993617
1381.254619
1757.585105
540.201274
603.103043
326.925068
380.085325
2012-01-30
570.496268
615.954347
489.612113
789.502611
408.772260
624.763098
667.790250
529.834993
482.990683
890.933630
...
691.402351
361.662826
521.477217
701.399743
1374.817477
1752.498017
537.299545
619.444173
325.944781
379.389410
2012-01-31
565.854680
621.057892
482.274571
788.354243
411.538514
624.045116
667.790250
530.474505
485.962962
885.068302
...
693.038809
353.694784
525.141426
695.368679
1373.824470
1744.990066
535.356322
618.691963
325.207626
379.040974
2012-02-01
565.854680
621.713362
483.268806
781.042037
407.508664
624.523862
656.139859
531.751220
487.442304
875.007018
...
689.762011
350.371232
517.787078
692.941556
1362.853646
1740.771468
535.356322
617.938838
324.838421
377.644012
2012-02-02
569.543739
628.230452
496.703272
784.514210
411.036944
627.864862
664.384872
537.458910
491.853637
885.852589
...
694.671411
354.033897
523.811952
697.787360
1371.836301
1746.494238
540.683381
623.191600
329.363022
382.395896
2012-02-03
576.043736
628.554532
498.907180
788.737219
413.788058
627.626809
664.384872
548.077951
493.315315
897.147715
...
699.546358
358.831437
528.780245
700.197686
1371.338808
1789.858798
556.826728
629.880790
335.022387
386.747951
2012-02-06
580.202950
626.607534
508.436964
790.267263
413.538713
631.898043
671.853920
546.219004
491.853637
898.114782
...
707.596639
366.196668
529.439162
698.993562
1376.801342
1818.675354
555.890097
633.566490
341.057180
387.316949
2012-02-07
574.830585
621.385713
502.331428
779.881211
409.528546
626.435187
661.305039
538.089361
489.652938
884.283319
...
693.855590
362.574130
521.477217
695.368679
1347.243131
1808.830518
546.912106
624.684277
337.401838
382.280699
2012-02-08
579.266383
630.656998
507.627135
791.412855
415.280985
630.240447
673.876565
547.459003
494.772675
900.045798
...
705.993926
369.377855
528.120507
702.599744
1370.343281
1832.197290
556.358609
634.301060
343.511281
384.497282
2012-02-09
580.202950
630.010833
506.274543
798.251884
414.783940
630.003292
676.228672
550.546783
498.397432
909.066634
...
708.396635
368.483378
531.738939
703.797698
1365.854428
1839.349309
564.725374
639.419422
343.860437
387.865205
2012-02-10
582.471201
628.554532
503.694610
796.737173
416.025439
634.964954
678.906816
550.546783
499.839974
905.047160
...
706.795737
370.917781
532.394194
707.379389
1371.836301
1835.347612
562.876841
670.698182
345.021738
387.753412
2012-02-13
582.737473
630.656998
516.730879
804.657595
418.250851
631.898043
674.885615
561.522217
499.839974
906.771973
...
710.791222
370.513158
541.162483
706.187511
1373.327698
1837.063693
567.945830
667.915190
349.170445
390.094334
2012-02-14
584.863290
632.752477
525.154963
803.530886
420.219101
629.528713
679.574703
557.887731
503.428247
910.021035
...
707.596639
368.076079
549.156453
702.599744
1368.350053
1829.902740
566.107812
663.718822
346.410162
389.315591
2012-02-15
588.169496
636.686234
528.798302
803.906631
424.857152
630.714490
683.236410
568.125057
504.856415
928.529271
...
718.715561
372.370783
551.690061
710.943036
1393.060429
1824.729454
578.851385
665.820312
350.884596
392.200271
2012-02-16
589.355190
639.733748
528.279364
803.906631
423.884937
634.729564
680.241934
565.732941
509.116882
920.642732
...
719.503195
377.094153
555.782539
708.569263
1385.201069
1817.808837
576.144349
664.420058
349.284984
391.647175
2012-02-17
588.169496
637.489623
523.716717
800.141240
427.036542
629.291289
675.893158
560.918105
509.823499
914.967872
...
716.347464
379.077828
554.212085
707.379389
1395.996281
1820.407151
571.148127
658.082043
346.641025
387.193964
2012-02-20
585.526025
637.168389
513.803202
803.530886
425.827147
628.578480
677.234217
559.101851
505.568986
912.878251
...
714.764373
376.616516
554.840800
706.187511
1386.185926
1849.315668
570.691756
659.495754
347.332694
387.529730
2012-02-21
586.320318
639.093373
516.598163
821.005033
426.794937
629.528713
679.908400
562.728496
509.823499
916.674019
...
716.347464
378.047616
555.468804
708.569263
1396.484990
1860.358148
573.424534
667.217628
350.884596
392.862959
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
2016-11-21
1189.283040
1892.243947
833.365440
909.461500
863.842881
602.350800
888.376057
869.364089
1026.692281
768.517084
...
1158.069459
1155.146511
659.020804
1024.855559
1632.567999
1872.149159
629.073049
806.268248
1455.095136
1025.895512
2016-11-22
1191.141296
1910.161439
838.158114
910.350081
866.899077
605.814037
881.952429
867.664451
1028.840925
768.517084
...
1161.534518
1189.614168
660.480431
1050.994505
1680.758555
1866.839760
631.256579
806.268248
1450.927557
1017.068714
2016-11-23
1171.482605
1898.633983
832.995630
909.905899
872.746297
601.606084
878.075696
867.239021
1023.820409
768.517084
...
1193.229632
1175.070660
658.289776
1060.173671
1670.986620
1864.475175
626.442767
809.796791
1451.418481
1012.626463
2016-11-24
1176.663056
1892.643957
829.288466
919.188638
872.746297
597.618593
878.075696
875.286833
1022.381448
768.517084
...
1184.537434
1157.377244
651.304097
1071.084837
1727.605385
1842.458899
620.262067
813.894091
1469.952129
991.357301
2016-11-25
1170.065774
1900.626463
830.031224
914.780034
870.645822
595.112844
873.748042
866.813382
1018.775153
768.517084
...
1184.537434
1153.656960
652.412071
1074.697275
1718.497030
1842.458899
617.148505
809.209769
1479.854162
1032.221270
2016-11-28
1161.052362
1898.633983
833.735085
915.663453
865.019619
596.116408
878.507289
859.115825
1037.390996
768.517084
...
1184.537434
1246.817471
653.886451
1078.297611
1714.919722
1853.797214
614.467181
807.446142
1460.226901
1026.670505
2016-11-29
1162.955728
1904.605171
830.031224
917.868280
882.021226
591.334311
864.589462
847.873764
1030.270864
768.517084
...
1184.537434
1231.538254
649.082473
1061.999984
1702.941091
1850.224200
610.423112
803.907282
1449.945209
1019.797320
2016-11-30
1142.812290
1918.860211
842.923539
915.663453
878.786136
591.334311
857.103698
850.481276
1021.661207
768.517084
...
1184.537434
1219.340479
646.108425
1054.675758
1709.340141
1846.644272
609.520786
796.782409
1452.154557
1034.348248
2016-12-01
1147.158518
1914.120327
841.826220
914.780034
879.249020
593.352523
862.394512
852.648110
1019.497433
768.517084
...
1184.537434
1224.234173
647.597156
1063.823161
1708.940902
1847.838352
612.673113
798.569587
1448.962195
1033.923202
2016-12-02
1135.531611
1903.810095
829.288466
902.321359
865.254774
588.039944
855.332821
842.634535
1018.775153
768.517084
...
1184.537434
1209.493693
652.042956
1052.836741
1710.138338
1854.986690
605.443678
798.569587
1429.409157
1023.239684
2016-12-05
1116.379650
1905.002585
820.322922
904.111680
865.019619
587.531479
853.558269
839.563220
1017.329056
768.517084
...
1184.537434
1206.193567
649.082473
1047.300313
1622.505851
1868.611236
605.898045
797.974306
1422.164006
1028.381624
2016-12-06
1116.379650
1891.043412
818.819121
900.527477
856.748513
589.816121
860.634521
848.308906
1013.704787
768.517084
...
1184.537434
1207.844757
645.735706
1049.149035
1614.072811
1883.308735
609.972116
797.974306
1437.361425
1034.773119
2016-12-07
1134.557324
1895.042239
824.444233
903.664433
858.172078
593.604317
874.181772
848.308906
1015.156047
768.517084
...
1184.537434
1213.606230
648.711463
1065.643219
1617.873118
1887.403525
614.914881
799.758820
1436.121786
1039.435237
2016-12-08
1129.673283
1888.640051
818.819121
904.558707
849.115857
592.091947
865.903761
847.438399
1025.975067
768.517084
...
1195.632916
1207.019444
649.082473
1058.344207
1609.839725
1871.559970
611.324106
800.946287
1430.156561
1036.046686
2016-12-09
1130.162637
1886.634912
816.558226
905.005513
849.594907
591.081550
857.103698
843.510000
1026.692281
768.517084
...
1184.052664
1197.071312
646.480930
1063.823161
1613.650002
1868.020931
611.774106
797.974306
1430.405609
1036.046686
2016-12-12
1100.416295
1819.641964
791.262132
881.471340
834.616513
573.111330
828.772972
812.761712
1013.704787
768.517084
...
1193.710676
1167.571885
632.171484
1045.448321
1559.459167
1864.475175
596.283639
785.974008
1357.054409
1000.213300
2016-12-13
1102.925800
1812.138253
793.983258
889.233734
843.828359
578.561006
844.180677
810.032789
1013.704787
768.517084
...
1170.887988
1162.439676
630.264477
1052.836741
1567.750739
1840.062982
598.126870
801.539361
1349.684780
1003.284811
2016-12-14
1098.404564
1801.244376
792.040551
887.413397
855.322578
570.235953
836.965325
808.208389
1003.487199
768.517084
...
1144.104287
1162.439676
627.584931
1041.734461
1556.393242
1899.634937
600.881114
802.724195
1353.111385
995.808993
2016-12-15
1118.853351
1821.720842
794.371229
888.324032
860.539454
573.893024
837.870642
818.643170
1028.125209
768.517084
...
1151.108051
1165.863659
631.409372
1050.994505
1555.954759
1906.589084
607.259106
804.498173
1375.305720
1002.846600
2016-12-16
1124.276333
1832.492995
798.626474
895.124264
865.724893
588.801819
843.282134
819.544264
1043.052108
768.517084
...
1161.534518
1172.681634
633.692958
1049.149035
1574.699252
1894.402574
612.223774
812.725541
1382.281111
1015.477956
2016-12-19
1115.388634
1820.057929
793.983258
894.220554
867.602824
592.596499
844.180677
812.307528
1043.052108
768.517084
...
1174.804012
1172.681634
638.612714
1060.173671
1569.925453
1898.473436
613.122122
820.291356
1372.453730
1008.964239
2016-12-20
1119.841301
1820.889576
795.534008
889.688236
862.428676
585.493202
836.059028
821.343485
1036.681184
768.517084
...
1179.680762
1168.425062
635.968344
1058.344207
1563.828632
1873.326982
615.809303
819.711849
1378.668647
1012.009191
2016-12-21
1122.799936
1824.627293
798.240571
893.315930
871.813377
589.562709
836.965325
823.138773
1036.681184
768.517084
...
1191.303513
1167.571885
637.858299
1067.460174
1572.097159
1885.649704
616.256027
816.808150
1382.281111
1014.178559
2016-12-22
1120.828380
1820.889576
796.308250
894.672523
863.136068
586.258387
860.193961
816.386085
1047.980495
768.517084
...
1187.441903
1166.718085
638.612714
1092.580321
1571.228837
1917.548240
615.809303
812.725541
1370.635738
1004.160660
2016-12-23
1105.429607
1805.442108
791.651437
900.078448
860.303010
578.302662
848.212340
815.481502
1049.384354
768.517084
...
1179.680762
1161.582104
632.932678
1092.580321
1561.208420
1927.873134
611.324106
821.449142
1359.414733
998.453908
2016-12-26
1112.907232
1805.861344
795.534008
906.790536
864.078356
581.652182
853.114055
815.028834
1048.682660
768.517084
...
1171.868221
1167.571885
635.210788
1080.093278
1562.082312
1920.996038
615.362254
832.938500
1357.054409
1009.399795
2016-12-27
1112.907232
1800.403655
795.534008
910.350081
865.254774
585.237919
854.889528
818.192251
1062.628520
768.517084
...
1168.925056
1163.296617
635.589679
1076.498948
1558.583803
1923.864482
619.818230
836.922512
1363.861979
1005.910070
2016-12-28
1112.907232
1791.974752
792.040551
907.236243
867.602824
585.493202
849.105666
819.544264
1055.678619
768.517084
...
1167.942353
1164.152927
633.312932
1074.697275
1551.123272
1915.246261
624.683093
835.217405
1347.836077
1004.160660
2016-12-29
1126.732697
1796.615542
796.695089
909.461500
868.540266
587.531479
855.332821
813.215642
1043.757588
768.517084
...
1178.707026
1176.075799
633.312932
1096.121919
1570.794496
1915.246261
620.705587
835.217405
1350.740046
1005.473003
2016-12-30
1118.853351
1799.141837
793.983258
909.905899
861.484583
590.069424
841.932522
808.664875
1045.167120
768.517084
...
1184.537434
1191.229870
638.989588
1096.121919
1565.573004
1915.246261
624.242399
830.081069
1344.131042
997.573049
1214 rows × 896 columns
In [25]:
factorDictNor = dict(zip(filename7factor.keys(),factorListNor))
In [26]:
spRdf,facRdf,facPdf,Rsqdf = brm.multiFactorReg(activeReturnDF, factorDictNor, WLS = True, weightdf = weight)
In [27]:
spRdf
Out[27]:
002344.SZ
300024.SZ
300039.SZ
600059.SH
600501.SH
000713.SZ
002233.SZ
600360.SH
600565.SH
600636.SH
...
600122.SH
601908.SH
000837.SZ
600282.SH
600739.SH
600406.SH
600866.SH
600227.SH
300134.SZ
002195.SZ
LZ_GPA_DERI_AdjustedPriceForward_20-d
2012-01-05
-0.009226
0.007680
0.016317
-0.013925
-0.005659
-0.068776
-0.027313
-0.006677
0.036304
-0.010021
...
0.003251
-0.014662
-0.026897
0.001223
0.008543
0.012346
-0.013822
-0.001175
-0.007533
-0.029023
2012-01-06
-0.007063
0.038404
0.002303
0.002138
0.005989
-0.075779
0.025970
0.005484
0.035895
-0.008315
...
0.004857
0.015574
0.024927
0.003443
0.015762
0.015032
-0.021864
0.007519
-0.016356
0.018537
2012-01-09
0.003356
0.040599
0.018253
-0.007155
-0.001839
-0.022790
0.015877
0.003991
-0.021393
0.014817
...
-0.003179
-0.000268
0.039023
-0.002495
0.000013
-0.011650
0.001402
0.004030
-0.001434
-0.043701
2012-01-10
0.006614
-0.025448
-0.013231
-0.005706
-0.003586
0.048764
0.026982
0.005398
-0.015609
0.002567
...
-0.005755
0.006862
0.013609
0.012510
-0.015338
-0.015134
0.026469
0.002609
0.003438
0.018272
2012-01-11
0.013469
-0.021891
-0.018925
-0.007129
0.001575
0.007917
-0.023999
0.001618
-0.009624
0.001828
...
-0.000723
-0.018482
-0.009761
0.012696
-0.000893
-0.003972
-0.009970
0.006385
-0.007783
0.083374
2012-01-12
-0.008770
-0.003792
-0.008215
-0.005682
0.006497
-0.023321
0.003129
-0.000388
-0.003301
0.020145
...
-0.015040
0.027772
-0.006111
-0.007954
-0.007216
-0.022338
-0.004437
0.004749
0.000945
-0.014246
2012-01-13
0.008628
-0.024613
-0.029414
0.007277
0.003738
0.018567
-0.013880
-0.008932
0.000186
0.013531
...
0.000554
0.042882
-0.004101
-0.000551
0.004060
-0.034230
-0.017958
0.017530
-0.024053
-0.029248
2012-01-16
-0.025887
0.005634
0.010525
-0.007777
-0.008236
0.031064
-0.002595
-0.004096
0.000200
0.003905
...
0.015217
-0.007787
-0.007859
0.004915
0.026962
-0.056430
-0.017083
-0.013373
-0.007230
-0.001952
2012-01-17
0.001190
0.012383
-0.002313
-0.001269
-0.011542
-0.003854
0.000256
-0.003044
0.001208
0.005974
...
-0.005697
-0.002432
0.017362
0.008104
-0.007566
-0.003947
0.007875
-0.002786
0.009138
0.025253
2012-01-18
0.006405
-0.001156
-0.039641
-0.005844
0.029470
-0.009729
0.014262
-0.003434
0.007020
-0.002071
...
-0.008567
-0.000277
-0.009178
-0.012675
-0.021088
-0.033299
-0.008602
-0.001523
0.007295
-0.000028
2012-01-19
-0.013438
0.026224
0.012225
0.003921
-0.003549
-0.006598
-0.005689
0.006762
-0.001724
-0.003005
...
0.014124
0.029773
0.020182
-0.000476
0.006023
0.057847
-0.000941
-0.006605
-0.074506
0.004410
2012-01-20
-0.008781
0.026781
-0.002112
0.013955
0.000281
0.031297
0.024663
0.003653
-0.003225
-0.014782
...
-0.009746
-0.007190
0.031975
-0.001411
0.011829
-0.004495
0.013726
0.002182
0.017172
-0.013589
2012-01-30
-0.016685
-0.006976
-0.010920
0.013953
0.003813
-0.008539
-0.030185
0.009060
-0.007821
0.000483
...
0.000839
-0.012509
-0.021420
0.002891
0.007423
-0.007682
-0.002555
-0.001667
-0.014959
-0.012768
2012-01-31
-0.013208
0.015503
-0.019859
-0.000847
0.012095
-0.004838
-0.011351
0.003093
0.014811
-0.021893
...
0.004276
-0.043252
0.009917
-0.014386
-0.006659
-0.011803
-0.006732
-0.001314
-0.001546
-0.004235
2012-02-01
0.002871
0.008482
-0.000279
-0.007747
-0.013200
0.013607
-0.020086
0.012636
0.010889
-0.008012
...
0.004260
-0.012847
-0.016401
0.002437
0.006468
-0.007340
0.008541
0.002583
-0.000774
-0.004314
2012-02-02
0.001909
0.002868
0.044229
-0.007282
-0.001413
-0.011431
-0.003619
0.004627
0.002914
-0.002257
...
-0.004438
-0.001879
0.002310
0.001754
-0.012371
-0.002591
0.002728
0.001058
0.001842
0.002231
2012-02-03
0.010141
-0.019132
-0.014547
-0.004325
-0.009262
-0.019625
-0.018384
0.023423
-0.007427
0.017279
...
0.001396
0.005728
0.001073
-0.002434
-0.002897
0.039359
0.042764
0.004496
0.013100
0.004969
2012-02-06
0.007141
-0.015230
0.023226
-0.001268
-0.009976
0.008629
0.008946
-0.016287
-0.014622
-0.010583
...
0.019548
0.028896
-0.004414
-0.006386
0.003232
0.021160
-0.011286
0.001879
0.022012
-0.014249
2012-02-07
-0.005731
-0.003736
-0.005737
-0.004550
-0.000150
0.002245
-0.010882
-0.010118
0.010497
-0.015101
...
-0.015606
-0.005168
-0.011084
0.009695
-0.021630
-0.010729
-0.011492
-0.010937
-0.003837
-0.012034
2012-02-08
-0.005754
-0.003340
0.006535
0.006517
0.001498
-0.015794
0.004806
0.008641
-0.004695
-0.003805
...
0.008563
0.004669
-0.005607
-0.000513
-0.001315
0.002984
0.008581
0.008167
0.014438
-0.002846
2012-02-09
0.003271
-0.007768
-0.018560
0.011998
-0.014885
-0.008081
-0.002201
0.001980
0.007072
0.021244
...
0.002470
-0.012897
0.007611
-0.000840
-0.005664
0.008083
0.020590
0.001484
-0.009142
0.015257
2012-02-10
0.008995
-0.012975
-0.013409
-0.005925
-0.004649
0.014956
0.000698
-0.010207
-0.002987
-0.005961
...
-0.006197
0.006591
-0.005883
0.006639
0.012972
-0.003410
-0.012960
0.079543
0.009364
-0.001095
2012-02-13
-0.006678
-0.002317
0.039987
0.013876
0.003240
-0.020581
-0.023505
0.027212
-0.001254
-0.007226
...
0.004529
-0.018866
0.020335
-0.006477
0.005159
-0.002040
0.007301
-0.020679
0.000982
-0.013307
2012-02-14
0.008635
0.008418
0.033021
-0.001501
0.006020
-0.007562
0.014394
-0.018132
0.012437
0.007926
...
-0.008031
-0.014224
0.027115
-0.011346
-0.002696
-0.004848
-0.009371
-0.022627
-0.014222
-0.003916
2012-02-15
0.001613
-0.010070
0.004635
-0.012672
0.003106
-0.012933
-0.002813
0.016809
-0.005342
0.030226
...
0.014575
0.005526
-0.011388
0.011791
0.028691
-0.008439
0.026243
-0.013140
0.013560
-0.001530
2012-02-16
0.003995
0.006925
0.001509
0.001390
-0.007845
0.016614
-0.001366
-0.013326
0.013269
-0.008153
...
0.000616
0.025333
0.009807
-0.008968
-0.003920
0.001203
-0.012043
-0.009877
0.002783
0.005260
2012-02-17
-0.000221
-0.004839
-0.010694
-0.003667
0.017829
-0.011944
-0.007653
-0.014001
-0.000068
-0.006764
...
-0.003779
0.010114
-0.005133
0.001996
0.016006
0.005358
-0.011587
-0.022170
-0.007628
-0.011725
2012-02-20
-0.002240
-0.003927
-0.045285
0.008776
-0.014420
-0.000845
-0.001655
-0.014456
-0.022576
-0.004214
...
-0.003747
-0.011645
-0.002299
-0.001583
-0.012980
0.037781
-0.007630
-0.007712
0.007913
0.005438
2012-02-21
-0.004008
-0.008257
0.000628
0.031217
-0.006128
-0.005571
-0.003954
-0.000714
0.009426
-0.003576
...
-0.005828
-0.004716
-0.014273
0.002323
0.005685
-0.001024
-0.004875
0.010047
0.008187
0.015077
2012-02-22
0.006797
0.024109
0.004267
-0.013034
0.019390
0.003808
0.003169
-0.011867
-0.007630
0.011693
...
-0.000642
0.016026
-0.000049
-0.003732
0.005993
-0.000031
-0.002988
-0.014820
0.028587
0.012100
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
2016-11-21
-0.021367
-0.010175
0.003120
0.000873
0.011782
-0.007538
-0.019942
0.004240
-0.001695
-0.002585
...
-0.002627
0.024215
0.011764
0.008328
0.007405
-0.013895
-0.009098
0.001591
0.022985
0.012995
2016-11-22
-0.015298
0.017221
0.004415
-0.003393
-0.002559
0.000262
-0.029611
-0.011596
-0.004124
-0.000322
...
-0.003450
0.041958
0.000285
0.038361
0.046262
-0.009427
-0.008082
-0.005158
-0.012134
-0.025022
2016-11-23
-0.033565
-0.003323
-0.008062
0.007541
0.017056
-0.009865
-0.008818
0.008540
-0.002092
0.009203
...
0.056952
-0.029634
0.007937
0.015934
-0.009789
0.005033
-0.013579
0.016073
0.005284
-0.004958
2016-11-24
0.000219
0.000839
-0.005191
0.024987
0.000132
-0.009799
-0.006284
0.023240
0.007885
0.004310
...
-0.015915
-0.034203
-0.005887
0.008822
0.062475
-0.012520
-0.020645
0.016001
0.022418
-0.035910
2016-11-25
-0.021086
0.003421
0.003393
-0.010200
-0.010636
-0.007090
-0.014654
-0.017888
-0.002273
0.002498
...
-0.003277
-0.013606
0.014766
-0.004719
-0.017941
0.000826
-0.013009
-0.009159
0.005353
0.009880
2016-11-28
-0.023766
-0.004072
0.006189
0.000080
-0.018069
0.001343
0.002784
-0.014206
0.034907
0.002596
...
-0.001643
0.000889
0.005644
-0.006268
-0.011759
0.012198
-0.013572
-0.005286
-0.021128
-0.009508
2016-11-29
0.015996
0.006070
-0.000639
0.013607
0.049158
0.001203
-0.017569
-0.004971
-0.001649
0.005608
...
0.007636
-0.009878
0.006261
-0.022275
-0.004134
0.001868
0.004250
0.003576
-0.003023
-0.001931
2016-11-30
-0.021693
0.014170
0.034941
-0.000753
-0.003518
0.003051
-0.006052
0.017413
-0.011724
0.003028
...
0.007704
-0.008693
-0.000430
-0.004461
0.019758
-0.000262
0.002099
-0.012869
0.008885
0.035654
2016-12-01
-0.003100
-0.004905
-0.006028
-0.005811
-0.009580
-0.001829
0.000432
0.003780
-0.009201
-0.001777
...
-0.008652
0.002246
0.003351
0.003412
-0.013200
-0.003270
0.007804
0.001246
-0.005740
-0.001583
2016-12-02
-0.001643
0.003087
-0.013277
-0.012083
-0.014615
0.001989
-0.000370
0.001916
0.013783
0.015839
...
0.010430
-0.006919
0.035722
-0.014820
0.014954
0.015853
-0.003118
0.015278
-0.007157
-0.001842
2016-12-05
-0.028814
0.001378
-0.015625
0.007656
-0.000827
0.002346
-0.001364
0.003543
0.007461
0.000974
...
0.003306
-0.002167
0.002775
-0.011185
-0.082682
0.014048
0.007398
0.006376
-0.002244
0.015830
2016-12-06
-0.000086
-0.010215
-0.010498
-0.007121
-0.021626
0.002166
0.011168
0.018236
-0.006431
-0.006798
...
-0.000050
0.003021
-0.013774
0.002111
-0.007913
0.018075
0.008136
-0.001855
0.021571
0.010397
2016-12-07
0.024536
0.004871
0.010881
-0.000756
-0.010404
0.000130
0.007700
-0.005335
-0.000108
-0.001113
...
-0.016978
-0.003645
-0.005782
0.009372
-0.010042
-0.007833
0.004075
-0.002819
-0.008188
0.000556
2016-12-08
0.001051
0.001671
-0.008128
0.010694
-0.015294
0.000564
-0.019076
0.006515
0.026545
0.007350
...
0.017051
-0.005452
0.007383
-0.013213
-0.004948
-0.015647
-0.003847
0.008549
-0.001935
-0.003701
2016-12-09
0.006163
0.003392
-0.000162
0.000729
0.000099
-0.002011
-0.022071
-0.003625
0.004071
0.001282
...
-0.021732
-0.014100
-0.007629
0.003846
0.004307
-0.002189
0.002993
-0.006240
0.004354
0.002690
2016-12-12
0.003080
-0.029881
-0.007357
-0.012187
0.007448
-0.001360
-0.014228
-0.008551
0.014715
0.025690
...
0.033909
-0.007971
0.007816
-0.012314
-0.009762
0.013465
0.005547
0.013747
-0.047285
-0.027482
2016-12-13
0.009032
-0.002315
0.005527
0.011540
0.013606
0.013740
0.033505
-0.003814
-0.003095
-0.009214
...
-0.052504
-0.006611
-0.012468
-0.001986
0.010328
-0.031135
0.002085
0.030696
-0.005402
0.000245
2016-12-14
0.000316
0.006178
0.002007
0.001524
0.027489
-0.019439
-0.014572
0.003349
-0.009519
0.003356
...
-0.042258
0.007247
-0.005057
-0.022890
-0.003607
0.073114
0.013021
0.005443
0.016163
-0.007194
2016-12-15
0.031174
0.024105
0.003261
-0.005485
-0.000101
0.000610
-0.006271
0.018925
0.038019
-0.000858
...
-0.000763
-0.000003
0.000689
0.006607
-0.006747
-0.001548
0.013190
-0.006219
0.029825
0.009444
2016-12-16
0.001981
0.009873
0.004746
0.009063
0.001478
0.038963
0.004111
-0.006296
0.022730
-0.006040
...
0.017429
0.006431
-0.001445
-0.007819
0.022706
-0.017686
0.006757
0.010531
0.002622
0.022019
2016-12-19
-0.009668
0.001342
-0.008479
-0.004878
-0.005095
0.006311
0.001352
-0.013226
-0.007369
-0.005200
...
0.013358
0.001449
0.011142
0.005165
-0.000703
0.003897
0.001050
0.006929
-0.009303
-0.009403
2016-12-20
0.009731
0.000238
0.005106
-0.007982
-0.010546
-0.023246
-0.013676
0.022513
-0.007911
-0.000328
...
0.020334
-0.004208
-0.007018
0.003857
0.003060
-0.021710
0.006418
0.000143
0.011128
0.010938
2016-12-21
-0.003216
-0.003478
0.000625
0.000561
0.013801
0.005191
-0.005191
-0.002995
-0.007197
-0.008735
...
0.016204
-0.009478
-0.000973
0.011570
0.004334
0.005135
-0.005593
-0.014803
-0.002710
-0.000217
2016-12-22
-0.001946
-0.001213
0.001356
0.001715
-0.021310
-0.005892
0.055692
-0.012966
0.022110
-0.000356
...
-0.004675
0.003328
0.002769
0.041150
0.005071
0.030665
-0.002697
-0.012067
-0.013164
-0.015452
2016-12-23
-0.012509
-0.010634
-0.003797
0.020071
0.003514
-0.012609
-0.012721
0.014314
0.006794
-0.001321
...
-0.002491
0.005793
-0.005010
0.006294
0.011506
0.011020
-0.007481
0.027657
-0.001592
-0.003888
2016-12-26
0.012990
0.002928
0.006491
0.011878
0.002088
0.005295
0.009212
-0.000396
-0.008212
-0.004640
...
-0.013221
0.013787
0.003692
-0.023143
0.009576
-0.015290
0.007414
0.021195
-0.000824
0.020451
2016-12-27
-0.000460
0.004094
-0.000891
0.009199
0.000424
0.009639
-0.001100
0.005902
0.027961
-0.002027
...
-0.002864
-0.004617
-0.002188
-0.007374
0.000274
0.004919
0.010783
0.006429
0.012005
-0.006362
2016-12-28
0.002115
-0.004673
-0.001979
-0.006811
0.006947
0.002374
-0.010454
0.005383
-0.013298
0.003890
...
0.000843
0.004684
-0.006055
-0.002861
-0.002070
-0.008987
0.014241
-0.006421
-0.018751
-0.000847
2016-12-29
0.014111
0.003009
0.012806
0.007317
0.004783
0.007730
0.004343
-0.011688
-0.020863
0.003935
...
0.020879
0.023057
-0.004145
0.040264
0.030519
0.000152
-0.010980
-0.000209
-0.001491
-0.004788
2016-12-30
-0.004664
0.008200
-0.004031
-0.004530
-0.020287
0.007424
-0.020114
-0.011097
-0.000447
-0.009724
...
0.011109
0.020472
0.022869
-0.004890
0.001871
-0.003202
0.003416
-0.019680
-0.000211
-0.007181
1213 rows × 896 columns
In [28]:
facRdf.describe()
Out[28]:
OCFTODEBT
YOYGR
OWNILLIQ
PB
MOM_1M
IDIVOL
VOLATILITY
ADJTOV20
DDA20
LMAO
count
1213.000000
1213.000000
1213.000000
1213.000000
1213.000000
1213.000000
1213.000000
1213.000000
1213.000000
1213.000000
mean
-0.000055
-0.000048
0.000133
-0.000047
0.005030
0.000804
0.000235
-0.001232
-0.001095
0.001059
std
0.001009
0.001067
0.001973
0.002441
0.004168
0.002790
0.004622
0.002102
0.003127
0.003155
min
-0.004729
-0.004173
-0.008659
-0.011168
-0.011099
-0.017220
-0.036592
-0.009011
-0.023596
-0.016576
25%
-0.000679
-0.000759
-0.000988
-0.001380
0.002612
-0.000578
-0.001764
-0.002469
-0.002757
-0.000468
50%
-0.000087
-0.000038
0.000253
-0.000063
0.004460
0.000972
0.000331
-0.001126
-0.000915
0.000854
75%
0.000545
0.000603
0.001328
0.001244
0.006959
0.002418
0.002322
0.000182
0.000697
0.002462
max
0.006206
0.004979
0.012873
0.012233
0.027178
0.021376
0.041812
0.005873
0.011319
0.033595
In [29]:
facPdf.describe()
Out[29]:
OCFTODEBT
YOYGR
OWNILLIQ
PB
MOM_1M
IDIVOL
VOLATILITY
ADJTOV20
DDA20
LMAO
count
1.213000e+03
1.213000e+03
1.213000e+03
1.213000e+03
1.213000e+03
1.213000e+03
1.213000e+03
1.213000e+03
1.213000e+03
1.213000e+03
mean
3.895309e-01
3.708092e-01
2.476814e-01
2.278012e-01
4.298095e-02
1.973727e-01
1.854545e-01
2.477450e-01
2.886036e-01
2.559220e-01
std
3.074595e-01
3.102959e-01
2.995277e-01
2.899320e-01
1.567776e-01
2.801702e-01
2.824165e-01
2.915795e-01
3.092338e-01
3.013253e-01
min
9.672660e-08
1.974388e-07
7.948037e-24
1.833418e-26
1.389795e-90
9.296564e-38
2.107253e-93
3.923049e-19
1.259952e-13
9.262465e-30
25%
1.010098e-01
7.980842e-02
5.349956e-03
2.372292e-03
7.884507e-17
4.972404e-04
2.503751e-05
6.446085e-03
1.438397e-02
5.639044e-03
50%
3.358035e-01
3.068744e-01
9.857306e-02
7.789999e-02
6.003944e-09
3.190406e-02
1.582879e-02
1.045327e-01
1.581875e-01
1.077712e-01
75%
6.536558e-01
6.325001e-01
4.491502e-01
3.748651e-01
2.123031e-04
3.141957e-01
2.870895e-01
4.336321e-01
5.173211e-01
4.652266e-01
max
9.982631e-01
9.987096e-01
9.957474e-01
9.976553e-01
9.911794e-01
9.984274e-01
9.984889e-01
9.996448e-01
9.999076e-01
9.938044e-01
In [30]:
Rsqdf
Out[30]:
R-Square
LZ_GPA_DERI_AdjustedPriceForward_20-d
2012-01-05
0.359875
2012-01-06
0.091608
2012-01-09
0.237580
2012-01-10
0.149149
2012-01-11
0.135889
2012-01-12
0.074262
2012-01-13
0.365547
2012-01-16
0.227957
2012-01-17
0.306839
2012-01-18
0.370858
2012-01-19
0.039399
2012-01-20
0.103278
2012-01-30
0.163955
2012-01-31
0.070599
2012-02-01
0.121581
2012-02-02
0.171896
2012-02-03
0.132512
2012-02-06
0.073560
2012-02-07
0.105585
2012-02-08
0.264937
2012-02-09
0.087079
2012-02-10
0.120929
2012-02-13
0.120236
2012-02-14
0.052747
2012-02-15
0.095659
2012-02-16
0.060414
2012-02-17
0.058430
2012-02-20
0.109528
2012-02-21
0.107730
2012-02-22
0.149457
...
...
2016-11-21
0.105124
2016-11-22
0.111635
2016-11-23
0.118873
2016-11-24
0.178203
2016-11-25
0.141986
2016-11-28
0.087476
2016-11-29
0.187768
2016-11-30
0.079251
2016-12-01
0.142593
2016-12-02
0.148548
2016-12-05
0.120643
2016-12-06
0.044909
2016-12-07
0.285670
2016-12-08
0.106688
2016-12-09
0.091470
2016-12-12
0.445581
2016-12-13
0.211691
2016-12-14
0.117294
2016-12-15
0.173735
2016-12-16
0.054752
2016-12-19
0.235527
2016-12-20
0.112562
2016-12-21
0.026911
2016-12-22
0.059937
2016-12-23
0.161361
2016-12-26
0.090286
2016-12-27
0.074076
2016-12-28
0.033900
2016-12-29
0.005999
2016-12-30
0.143169
1213 rows × 1 columns
In [31]:
olsresult = brm.multiFactorReg(returnDF,factorDictNor,WLS = False)
In [32]:
#correlationDF = ff.showCorrelation(factorListNor[4],factorListNor[3],MOM1Mresi.index,filterdic = None).astype(float)
#correlationDF.describe()
In [33]:
baseList = [factorListNor[4]] # choose idiosyncratic volatility as base factor to commit orthogonalize
orthoList = factorListNor[:4]+factorListNor[5:]
for i in orthoList:
print i.index.name
print len(baseList)
orthogolizedDF = brm.orthoFactor(i, baseList, WLS =False, weightdf = None)
baseList.append(orthogolizedDF)
LZ_GPA_VAL_PB-d
1
Own_Factor_LMAO
2
Own_Factor_ILLQ-1d
3
LZ_GPA_FIN_IND_OCFTODEBT-d
4
idiosyncratic volatility
5
Own_Factor_Volatility_90d
6
Own_Factor_ADJ_Turnover_Volatility_20D
7
Own_Factor_DDA-20d
8
LZ_GPA_FIN_IND_QFA_YOYGR-d
9
In [65]:
baseList[4]
Out[65]:
002344.SZ
300024.SZ
300039.SZ
600059.SH
600501.SH
000713.SZ
002233.SZ
600360.SH
600565.SH
600636.SH
...
600122.SH
601908.SH
000837.SZ
600282.SH
600739.SH
600406.SH
600866.SH
600227.SH
300134.SZ
002195.SZ
LZ_GPA_FIN_IND_OCFTODEBT-d
2012-01-04
-0.558808
-1.467101
2.116249
-0.039734
-0.361128
-0.669250
1.743051
0.924260
0.092957
2.212273
...
-0.142846
-0.287732
-0.712050
-0.092812
0.115117
-1.028304
0.423991
0.285355
2.124718
2.366725
2012-01-05
-0.592508
-1.455350
2.145725
-0.037751
-0.346348
-0.696483
1.726717
0.916144
0.085062
2.198664
...
-0.136186
-0.272429
-0.692556
-0.102959
0.100671
-1.072460
0.439418
0.280055
2.137090
2.308372
2012-01-06
-0.612187
-1.475342
2.115703
-0.027716
-0.327359
-0.653273
1.723392
0.916442
0.073698
2.218723
...
-0.112999
-0.243697
-0.687006
-0.100728
0.082214
-1.067837
0.473767
0.286640
2.169978
2.262670
2012-01-09
-0.621351
-1.513476
2.105069
-0.016893
-0.333940
-0.654969
1.693589
0.916014
0.083862
2.194305
...
-0.119592
-0.255596
-0.717982
-0.100048
0.073159
-1.084335
0.475023
0.281363
2.166884
2.297277
2012-01-10
-0.630593
-1.490605
2.077052
0.001705
-0.327492
-0.681425
1.663538
0.912613
0.093987
2.191339
...
-0.122260
-0.277960
-0.739911
-0.111480
0.079820
-1.067670
0.461722
0.279428
2.161672
2.282335
2012-01-11
-0.612149
-1.488342
2.184054
-0.016365
-0.324757
-0.701705
1.653597
0.908956
0.079461
2.170556
...
-0.136664
-0.281102
-0.742826
-0.127924
0.078110
-1.065679
0.446893
0.269836
2.171615
2.182721
2012-01-12
-0.600052
-1.501324
2.123595
-0.015976
-0.341141
-0.672914
1.687383
0.923594
0.075073
2.191376
...
-0.125703
-0.294181
-0.738252
-0.102927
0.100460
-1.027726
0.439942
0.276260
2.169983
2.173795
2012-01-13
-0.604141
-1.488007
2.129637
-0.026925
-0.349137
-0.686597
1.711076
0.917043
0.084525
2.180285
...
-0.137823
-0.298042
-0.724979
-0.103012
0.106509
-1.067887
0.425174
0.274765
2.144265
2.231377
2012-01-16
-0.586689
-1.489541
2.131253
-0.047849
-0.361721
-0.720693
1.702494
0.906473
0.048999
2.157265
...
-0.172827
-0.323138
-0.728487
-0.113591
0.100174
-1.069840
0.410464
0.269378
2.133502
2.308533
2012-01-17
-0.594264
-1.512758
2.150312
-0.062021
-0.369320
-0.710073
1.706639
0.899605
0.034616
2.211149
...
-0.167706
-0.331782
-0.727099
-0.110145
0.108198
-1.066274
0.398428
0.275381
2.100731
2.340549
2012-01-18
-0.600259
-1.519672
2.095617
-0.068413
-0.357432
-0.703375
1.731659
0.902887
0.047400
2.227024
...
-0.165524
-0.334010
-0.720350
-0.104195
0.112597
-1.073457
0.399236
0.284121
2.085080
2.361512
2012-01-19
-0.605344
-1.530737
2.117938
-0.071255
-0.376961
-0.717195
1.695157
0.879085
0.028549
2.268643
...
-0.166607
-0.357893
-0.730995
-0.113386
0.107091
-1.076454
0.391705
0.273179
2.076174
2.402810
2012-01-20
-0.609475
-1.527062
2.089467
-0.063968
-0.368633
-0.716792
1.677905
0.883685
0.019570
2.267936
...
-0.168457
-0.360869
-0.733089
-0.114149
0.104386
-1.088714
0.389687
0.264399
2.093644
2.417949
2012-01-30
-0.628875
-1.529098
2.109483
-0.056021
-0.342904
-0.705644
1.702180
0.891874
0.022181
2.288506
...
-0.158330
-0.333981
-0.721876
-0.113929
0.110892
-1.074208
0.395765
0.263354
2.103700
2.428829
2012-01-31
-0.614845
-1.528489
2.088506
-0.053111
-0.332288
-0.713188
1.711255
0.895289
0.029051
2.318431
...
-0.173914
-0.339646
-0.715076
-0.115053
0.123515
-1.081714
0.399977
0.266183
2.110780
2.453260
2012-02-01
-0.648308
-1.523340
2.165384
-0.062719
-0.355163
-0.726979
1.689528
0.891325
0.025712
2.309589
...
-0.173795
-0.365278
-0.732129
-0.118186
0.140768
-1.090634
0.395351
0.269989
2.101004
2.445269
2012-02-02
-0.649808
-1.512911
2.130300
-0.077721
-0.345413
-0.755904
1.687654
0.913055
0.059053
2.269845
...
-0.167319
-0.349999
-0.717120
-0.117423
0.165950
0.012430
0.397698
0.276895
2.070138
2.375558
2012-02-03
-0.651153
-1.478182
2.204842
-0.079228
-0.355797
-0.754143
1.672437
0.904637
0.042105
2.262105
...
-0.171287
-0.370329
-0.725360
-0.126365
0.149352
-0.004992
0.397570
0.265032
2.054561
2.345274
2012-02-06
-0.658427
-1.493731
2.238955
-0.051431
-0.369685
-0.723659
1.659371
0.888755
0.043304
2.221331
...
-0.177399
-0.370504
-0.750475
-0.118768
0.113525
0.009150
0.391665
0.255943
2.114931
2.342208
2012-02-07
-0.674453
-1.454804
2.181033
-0.071092
-0.363109
-0.733964
1.662366
0.897780
0.067080
2.250960
...
-0.182143
-0.351593
-0.758874
-0.112781
0.132600
0.008999
0.393023
0.264643
2.081906
2.333424
2012-02-08
-0.620347
-1.465644
2.121319
-0.068856
-0.354073
-0.732433
1.670525
0.896793
0.072249
2.229748
...
-0.172900
-0.332933
-0.730373
-0.109666
0.127317
0.023786
0.397645
0.265667
2.071864
2.286674
2012-02-09
-0.615776
-1.471444
2.167212
-0.074414
-0.357801
-0.764419
1.672735
0.899591
0.074400
2.222482
...
-0.179580
-0.337356
-0.721744
-0.113726
0.118649
-0.010252
0.373203
0.265448
2.057948
2.306791
2012-02-10
-0.638576
-1.469897
2.085650
-0.079162
-0.356638
-0.737597
1.716239
0.912096
0.040176
2.269928
...
-0.192170
-0.287585
-0.676245
-0.131266
0.112517
-0.050676
0.375691
0.352964
2.022175
2.349474
2012-02-13
-0.628430
-1.512949
2.068514
-0.069371
-0.363152
-0.662766
1.674843
0.923298
0.034895
2.264762
...
-0.177195
-0.280570
-0.693670
-0.127502
0.086254
-0.046484
0.410477
0.322748
2.060203
2.340541
2012-02-14
-0.657277
-1.574621
2.101447
-0.074268
-0.368353
-0.663346
1.650606
0.910111
0.038714
2.302081
...
-0.188441
-0.322054
-0.681273
-0.141364
0.075608
-0.062038
0.397293
0.327096
1.995398
2.399521
2012-02-15
-0.656413
-1.546389
2.043030
-0.090404
-0.359322
-0.731154
1.615685
0.957084
0.043542
2.343285
...
-0.177836
-0.338710
-0.692225
-0.164379
0.110906
-0.054665
0.389225
0.360482
1.946209
2.408764
2012-02-16
-0.688983
-1.526701
2.076697
-0.075442
-0.363615
-0.748723
1.630486
0.974120
0.086224
2.353392
...
-0.165543
-0.298931
-0.641476
-0.193779
0.111770
-0.068220
0.406017
0.384215
1.910328
2.284585
2012-02-17
-0.692994
-1.549397
1.980575
-0.104006
-0.333759
-0.757435
1.584920
0.981150
0.124288
2.312880
...
-0.139998
-0.304538
-0.584756
-0.210312
0.168652
-0.092961
0.378615
0.399176
1.816747
2.193292
2012-02-20
-0.837414
-1.461691
2.028392
-0.086667
-0.343573
-0.823098
1.603976
0.985675
0.044418
2.287561
...
-0.147997
-0.462137
-0.545518
-0.252094
0.130373
-0.010174
0.412616
0.352728
1.900774
2.231611
2012-02-21
-0.809636
-1.479380
2.100705
-0.003864
-0.350667
-0.880697
1.592523
0.960145
0.042442
2.269716
...
-0.201598
-0.428954
-0.551928
-0.280126
0.096416
0.093387
0.434906
0.378267
1.946688
2.264397
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
2016-11-21
-0.527801
-1.423100
2.905099
-1.399173
-0.799430
-0.073442
1.366875
-0.096117
-0.754596
2.436519
...
-0.268719
-0.529728
-0.365826
-0.116203
-0.266878
-1.080613
-0.147393
-0.184360
-0.136767
0.842318
2016-11-22
-0.481448
-1.426134
2.901633
-1.390526
-0.813766
-0.014964
1.347709
-0.096227
-0.746555
2.423345
...
-0.262028
-0.503986
-0.364331
-0.123573
-0.255216
-1.052523
-0.121596
-0.195622
-0.113842
0.851867
2016-11-23
-0.512512
-1.442078
2.886870
-1.368368
-0.793865
-0.036488
1.331488
-0.054098
-0.751845
2.409493
...
-0.268228
-0.510970
-0.343318
-0.089308
-0.220056
-1.074072
-0.100913
-0.196484
-0.105188
0.876325
2016-11-24
-0.570565
-1.446438
2.854207
-1.350776
-0.745547
0.091469
1.322245
-0.101241
-0.748234
2.444092
...
-0.292125
-0.573038
-0.362794
-0.108357
-0.239102
-1.068085
-0.165037
-0.201069
-0.023914
0.835758
2016-11-25
-0.537552
-1.440612
2.824055
-1.390697
-0.652231
0.103477
1.345539
-0.104634
-0.793895
2.443437
...
-0.314695
-0.564995
-0.392732
-0.094648
-0.225071
-1.101206
-0.102583
-0.218929
0.032178
0.790053
2016-11-28
-0.639399
-1.446849
2.841889
-1.350287
-0.678116
0.099486
1.332490
-0.128435
-0.793843
2.460058
...
-0.316524
-0.587154
-0.360264
-0.122106
-0.236277
-1.033130
-0.141674
-0.191960
-0.021395
0.766718
2016-11-29
-0.614571
-1.453324
2.840217
-1.358457
-0.705755
0.119666
1.286265
-0.150138
-0.812219
2.501117
...
-0.317432
-0.593042
-0.394569
-0.113707
-0.222792
-1.035263
-0.154679
-0.205688
-0.059828
0.753887
2016-11-30
-0.595952
-1.444042
2.864911
-1.375729
-0.655817
0.179675
1.259906
-0.186049
-0.833192
2.514534
...
-0.315925
-0.612251
-0.438871
-0.089115
-0.208505
-1.046125
-0.097409
-0.226664
-0.074507
0.757180
2016-12-01
-0.577353
-1.452018
2.890644
-1.352377
-0.653587
0.172908
1.211000
-0.175452
-0.835792
2.503419
...
-0.310594
-0.587871
-0.427692
-0.077228
-0.199215
-1.036731
-0.094295
-0.263867
-0.064617
0.753245
2016-12-02
-0.623236
-1.438219
2.865956
-1.367956
-0.753531
0.093864
1.192653
-0.163969
-0.792437
2.571233
...
-0.298812
-0.607161
-0.381763
-0.103827
-0.220285
-1.004849
-0.109355
-0.175614
-0.088363
0.775700
2016-12-05
-0.594684
-1.437661
2.853242
-1.385560
-0.687927
0.093905
1.218638
-0.145930
-0.797379
2.598310
...
-0.306985
-0.595127
-0.378297
-0.127453
-0.238309
-1.022480
-0.123622
-0.189770
-0.008360
0.772129
2016-12-06
-0.610316
-1.434510
2.858004
-1.387314
-0.748090
0.116640
1.193396
-0.163288
-0.783378
2.597475
...
-0.333113
-0.578411
-0.376043
-0.166702
-0.228674
-1.042519
-0.153705
-0.160277
0.037074
0.764366
2016-12-07
-0.607507
-1.461838
2.817944
-1.404465
-0.710473
0.073071
1.264229
-0.169692
-0.819727
2.621188
...
-0.309323
-0.577207
-0.389385
-0.136251
-0.240720
-1.021223
-0.176480
-0.203769
0.027132
0.774934
2016-12-08
-0.589832
-1.455790
2.795404
-1.391668
-0.767579
0.086414
1.249882
-0.125218
-0.792791
2.630365
...
-0.312852
-0.587945
-0.361981
-0.155433
-0.235744
-1.041400
-0.184446
-0.162074
-0.004075
0.776574
2016-12-09
-0.591824
-1.453051
2.788156
-1.368870
-0.720345
0.138372
1.223686
-0.138893
-0.803204
2.608679
...
-0.308663
-0.599950
-0.380999
-0.155838
-0.240234
-1.035122
-0.160052
-0.207731
0.043305
0.787394
2016-12-12
-0.547768
-1.435957
2.822285
-1.381862
-0.754163
0.109011
1.209452
-0.094896
-0.793665
2.624398
...
-0.355371
-0.614436
-0.392487
-0.192777
-0.213199
-1.040936
-0.124066
-0.193033
0.003874
0.782778
2016-12-13
-0.515603
-1.402375
2.835724
-1.403219
-0.800452
0.066176
1.201304
-0.034197
-0.773157
2.614849
...
-0.336007
-0.567485
-0.357550
-0.223320
-0.202998
-1.033070
-0.088238
-0.272640
0.037042
0.803631
2016-12-14
-0.507572
-1.377460
2.875478
-1.372299
-0.931140
0.108968
1.201349
-0.011126
-0.756576
2.608661
...
-0.290523
-0.566670
-0.324381
-0.201406
-0.195570
-1.052631
-0.059417
-0.258214
0.021598
0.830346
2016-12-15
-0.584186
-1.437684
2.868869
-1.369071
-0.831128
0.078216
1.241683
-0.104753
-0.815916
2.640949
...
-0.324596
-0.584976
-0.385250
-0.203028
-0.213400
-1.044582
-0.071709
-0.264122
-0.029072
0.814114
2016-12-16
-0.569720
-1.438179
2.855105
-1.384744
-0.836643
0.029612
1.269124
-0.081078
-0.840922
2.648591
...
-0.352829
-0.581975
-0.354863
-0.190525
-0.232623
-1.036130
-0.093815
-0.270951
-0.051525
0.793017
2016-12-19
-0.555241
-1.450968
2.850991
-1.341863
-0.859633
0.061278
1.329667
-0.073501
-0.831233
2.605708
...
-0.400146
-0.545906
-0.383410
-0.208458
-0.218078
-1.034935
-0.075397
-0.300291
0.020906
0.811224
2016-12-20
-0.551322
-1.436742
2.843266
-1.356036
-0.784761
0.068335
1.375520
-0.105151
-0.826867
2.586653
...
-0.418864
-0.548074
-0.370023
-0.203173
-0.201730
-1.029622
-0.084856
-0.241426
0.003839
0.831493
2016-12-21
-0.558252
-1.433773
2.836360
-1.400875
-0.759915
0.106801
1.383135
-0.135582
-0.827519
2.585671
...
-0.415065
-0.521358
-0.384258
-0.195672
-0.172128
-1.044040
-0.074656
-0.248566
0.014811
0.821691
2016-12-22
-0.557396
-1.431089
2.778907
-1.419603
-0.810766
0.152838
1.289643
-0.087185
-0.816726
2.575595
...
-0.357709
-0.496238
-0.347595
-0.198618
-0.178750
-1.054322
-0.003308
-0.208354
0.033781
0.815229
2016-12-23
-0.579460
-1.456907
2.789511
-1.401713
-0.809437
0.166706
1.294796
-0.040178
-0.819733
2.581029
...
-0.352018
-0.480468
-0.379306
-0.190012
-0.135569
-1.085374
-0.006556
-0.203149
-0.024181
0.804293
2016-12-26
-0.609297
-1.393802
2.742459
-1.441182
-0.880022
0.098357
1.252187
-0.035487
-0.821572
2.575838
...
-0.325528
-0.515711
-0.391271
-0.157609
-0.135558
-1.088016
-0.038796
-0.211564
-0.014997
0.769717
2016-12-27
-0.597420
-1.434068
2.777105
-1.401944
-0.866567
0.123348
1.283414
-0.048391
-0.851703
2.578010
...
-0.331711
-0.484872
-0.405351
-0.162284
-0.120432
-1.093277
-0.102393
-0.267458
0.005136
0.745643
2016-12-28
-0.588831
-1.441727
2.743306
-1.359425
-0.809993
0.126383
1.246600
-0.053149
-0.814817
2.590625
...
-0.307215
-0.505484
-0.421976
-0.145220
-0.178032
-1.044533
-0.118908
-0.212469
-0.134733
0.739858
2016-12-29
-0.587620
-1.391120
2.817492
-1.347574
-0.762882
0.143530
1.285469
-0.036380
-0.812995
2.584803
...
-0.332713
-0.586251
-0.434143
-0.192261
-0.192427
-1.060659
-0.164204
-0.227607
-0.046941
0.778192
2016-12-30
-0.533518
-1.368787
2.848992
-1.362043
-0.871931
0.163145
1.287647
-0.073950
-0.828818
2.541232
...
-0.349016
-0.640769
-0.481799
-0.186159
-0.171849
-1.065081
-0.216628
-0.205765
0.040450
0.798943
1214 rows × 896 columns
In [78]:
filename7factor.keys()
Out[78]:
['PB',
'LMAO',
'OWNILLIQ',
'OCFTODEBT',
'MOM_1M',
'IDIVOL',
'VOLATILITY',
'ADJTOV20',
'DDA20',
'YOYGR']
In [85]:
baseListName = [toUseNameDict[i.index.name] for i in baseList]
In [86]:
baseListName
Out[86]:
['MOM_1M',
'PB',
'LMAO',
'OWNILLIQ',
'OCFTODEBT',
'IDIVOL',
'VOLATILITY',
'ADJTOV20',
'DDA20',
'YOYGR']
In [87]:
secDic = dict(zip(baseListName,baseList))
In [89]:
#for i in range(7):
sd = brm.multiFactorReg(returnDF ,{baseList[4].index.name:baseList[4]},WLS = True, weightdf = weight)
sd[3].describe()
Out[89]:
R-Square
count
1213.000000
mean
0.000607
std
0.002536
min
-0.001117
25%
-0.000927
50%
-0.000367
75%
0.001097
max
0.022541
In [90]:
result = brm.multiFactorReg(returnDF ,secDic,WLS = True, weightdf = weight)
In [91]:
result[3].describe()
Out[91]:
R-Square
count
1213.000000
mean
0.146087
std
0.075850
min
-0.000935
25%
0.090528
50%
0.135257
75%
0.191963
max
0.421844
In [122]:
baseDate = datetime.strptime('20161230', '%Y%m%d')
In [132]:
factorReturn = result[1]
specificReturn = result[0]
compara = 1/0.94 - 1
factorCov = factorReturn.loc[:baseDate].ewm(ignore_na=True, min_periods=0, com=compara).cov(pairwise = True).iloc[-1]
In [142]:
factorCov
Out[142]:
OCFTODEBT
YOYGR
OWNILLIQ
PB
MOM_1M
IDIVOL
VOLATILITY
ADJTOV20
DDA20
LMAO
OCFTODEBT
3.867860e-07
3.427259e-07
6.732383e-07
4.695824e-07
1.469851e-07
-2.022746e-06
-5.024461e-07
-1.371894e-06
-1.573042e-06
-1.135455e-06
YOYGR
3.427259e-07
3.197047e-07
6.273763e-07
4.364218e-07
1.489391e-07
-1.909824e-06
-4.744795e-07
-1.279002e-06
-1.478403e-06
-1.067356e-06
OWNILLIQ
6.732383e-07
6.273763e-07
1.237241e-06
8.596097e-07
2.994755e-07
-3.760477e-06
-9.282367e-07
-2.522795e-06
-2.912429e-06
-2.119702e-06
PB
4.695824e-07
4.364218e-07
8.596097e-07
5.976550e-07
2.061421e-07
-2.611242e-06
-6.454996e-07
-1.752012e-06
-2.022295e-06
-1.469067e-06
MOM_1M
1.469851e-07
1.489391e-07
2.994755e-07
2.061421e-07
8.742651e-08
-9.230027e-07
-2.217591e-07
-6.114547e-07
-7.110135e-07
-5.348987e-07
IDIVOL
-2.022746e-06
-1.909824e-06
-3.760477e-06
-2.611242e-06
-9.230027e-07
1.147340e-05
2.837716e-06
7.671095e-06
8.876210e-06
6.445268e-06
VOLATILITY
-5.024461e-07
-4.744795e-07
-9.282367e-07
-6.454996e-07
-2.217591e-07
2.837716e-06
7.079388e-07
1.893674e-06
2.194495e-06
1.576375e-06
ADJTOV20
-1.371894e-06
-1.279002e-06
-2.522795e-06
-1.752012e-06
-6.114547e-07
7.671095e-06
1.893674e-06
5.147210e-06
5.942578e-06
4.325156e-06
DDA20
-1.573042e-06
-1.478403e-06
-2.912429e-06
-2.022295e-06
-7.110135e-07
8.876210e-06
2.194495e-06
5.942578e-06
6.870956e-06
4.991837e-06
LMAO
-1.135455e-06
-1.067356e-06
-2.119702e-06
-1.469067e-06
-5.348987e-07
6.445268e-06
1.576375e-06
4.325156e-06
4.991837e-06
3.674919e-06
In [94]:
specificReturn
Out[94]:
002344.SZ
300024.SZ
300039.SZ
600059.SH
600501.SH
000713.SZ
002233.SZ
600360.SH
600565.SH
600636.SH
...
600122.SH
601908.SH
000837.SZ
600282.SH
600739.SH
600406.SH
600866.SH
600227.SH
300134.SZ
002195.SZ
LZ_GPA_DERI_AdjustedPriceForward_20-d
2012-01-05
-0.037224
-0.019818
-0.009698
-0.054578
-0.019886
-0.102905
-0.066143
-0.030264
0.016382
-0.056433
...
-0.028931
-0.028128
-0.048888
-0.032830
-0.055513
-0.055842
-0.038409
-0.029246
-0.017399
-0.039831
2012-01-06
-0.003832
0.041683
0.005316
0.006875
0.007620
-0.072032
0.030591
0.008241
0.038290
-0.002927
...
0.008594
0.017164
0.027541
0.007395
0.023291
0.022933
-0.019081
0.010798
-0.015289
0.019855
2012-01-09
0.034066
0.072406
0.047580
0.037144
0.013856
0.013094
0.061227
0.030117
0.000906
0.067417
...
0.032212
0.012182
0.064887
0.034423
0.073090
0.062036
0.027795
0.035112
0.009227
-0.032123
2012-01-10
0.037478
0.006142
0.016599
0.038947
0.012276
0.086534
0.073578
0.031845
0.006853
0.056805
...
0.029974
0.019594
0.040285
0.050021
0.059436
0.059857
0.054275
0.034133
0.014724
0.029892
2012-01-11
0.013771
-0.021584
-0.018649
-0.006695
0.001730
0.008290
-0.023546
0.001877
-0.009406
0.002357
...
-0.000374
-0.018361
-0.009502
0.013065
-0.000164
-0.003239
-0.009697
0.006695
-0.007673
0.083537
2012-01-12
-0.008978
-0.004005
-0.008408
-0.005979
0.006388
-0.023574
0.002822
-0.000567
-0.003452
0.019771
...
-0.015280
0.027684
-0.006289
-0.008206
-0.007715
-0.022837
-0.004625
0.004536
0.000872
-0.014363
2012-01-13
-0.016850
-0.049337
-0.052148
-0.028530
-0.009126
-0.011467
-0.050563
-0.030209
-0.017602
-0.031673
...
-0.028210
0.032060
-0.024968
-0.031070
-0.056184
-0.094560
-0.040186
-0.008516
-0.032397
-0.042294
2012-01-16
-0.049580
-0.017532
-0.011754
-0.041859
-0.020608
0.002087
-0.037915
-0.024708
-0.017345
-0.039308
...
-0.015048
-0.018409
-0.027658
-0.024587
-0.030593
-0.112807
-0.038233
-0.038296
-0.015131
-0.013023
2012-01-17
0.042023
0.053636
0.035547
0.058731
0.010051
0.047009
0.061889
0.032655
0.032301
0.082175
...
0.046551
0.016325
0.052172
0.059400
0.093455
0.094851
0.045020
0.040338
0.023672
0.044488
2012-01-18
-0.008587
-0.016229
-0.052859
-0.027694
0.021495
-0.027958
-0.007828
-0.016458
-0.004337
-0.030019
...
-0.027582
-0.006412
-0.021819
-0.031379
-0.057986
-0.069052
-0.022071
-0.017325
0.002282
-0.006381
2012-01-19
-0.006044
0.033853
0.019061
0.014909
0.000494
0.002542
0.005411
0.013370
0.003993
0.011129
...
0.023696
0.033044
0.026586
0.008901
0.024762
0.075836
0.005771
0.001294
-0.071303
0.007627
2012-01-20
0.001155
0.037141
0.007330
0.028864
0.005629
0.043712
0.039693
0.012536
0.004484
0.004199
...
0.003085
-0.002770
0.040700
0.011171
0.037176
0.019687
0.022837
0.012837
0.021631
-0.009341
2012-01-30
-0.021805
-0.012305
-0.015607
0.006347
0.001108
-0.014879
-0.037733
0.004546
-0.011750
-0.009135
...
-0.005663
-0.014704
-0.025834
-0.003518
-0.005461
-0.020006
-0.007196
-0.007305
-0.017175
-0.014914
2012-01-31
-0.012746
0.015990
-0.019447
-0.000157
0.012348
-0.004261
-0.010690
0.003507
0.015168
-0.021029
...
0.004872
-0.043060
0.010318
-0.013806
-0.005500
-0.010689
-0.006313
-0.000801
-0.001356
-0.004042
2012-02-01
-0.003339
0.001952
-0.005947
-0.016890
-0.016572
0.005763
-0.028694
0.007114
0.005909
-0.019493
...
-0.003611
-0.015372
-0.021698
-0.005307
-0.009086
-0.022750
0.002777
-0.004373
-0.003195
-0.006885
2012-02-02
0.015592
0.017129
0.056764
0.012874
0.006015
0.006039
0.015608
0.016771
0.013801
0.023270
...
0.012945
0.003637
0.014103
0.018876
0.022086
0.031701
0.015471
0.016436
0.007337
0.007989
2012-02-03
0.022135
-0.007186
-0.003869
0.013020
-0.002928
-0.004739
-0.002031
0.034113
0.001962
0.039473
...
0.016416
0.010691
0.011308
0.012368
0.026901
0.069309
0.054008
0.017862
0.018162
0.010222
2012-02-06
0.013539
-0.009021
0.028921
0.007824
-0.006603
0.016479
0.017606
-0.010654
-0.009726
0.001094
...
0.027615
0.031663
0.001028
0.001417
0.018845
0.036982
-0.005372
0.008911
0.024846
-0.011408
2012-02-07
-0.017858
-0.015338
-0.016515
-0.021608
-0.006490
-0.012381
-0.026935
-0.020664
0.001355
-0.036890
...
-0.030668
-0.010399
-0.021333
-0.004903
-0.050808
-0.040285
-0.022573
-0.024112
-0.009346
-0.017487
2012-02-08
0.013370
0.015779
0.024079
0.034185
0.011670
0.007554
0.030669
0.025832
0.010092
0.031335
...
0.032887
0.013004
0.010763
0.023125
0.046026
0.050951
0.026510
0.029609
0.023274
0.005822
2012-02-09
0.008322
-0.002652
-0.013985
0.019433
-0.012218
-0.001829
0.004663
0.006531
0.010963
0.030653
...
0.008969
-0.010757
0.011958
0.005449
0.006876
0.021102
0.025508
0.007209
-0.006817
0.017529
2012-02-10
0.012791
-0.009126
-0.009899
-0.000388
-0.002661
0.019595
0.005820
-0.006799
0.000001
0.001051
...
-0.001303
0.008173
-0.002663
0.011392
0.022351
0.006302
-0.009301
0.083976
0.011190
0.000606
2012-02-13
-0.000255
0.004410
0.046165
0.023389
0.006626
-0.012968
-0.014712
0.033145
0.003809
0.004750
...
0.012891
-0.016250
0.025936
0.001622
0.021127
0.014709
0.013465
-0.012874
0.004059
-0.010403
2012-02-14
0.009599
0.009437
0.033950
-0.000094
0.006521
-0.006457
0.015692
-0.017244
0.013190
0.009707
...
-0.006786
-0.013815
0.027969
-0.010135
-0.000352
-0.002378
-0.008454
-0.021457
-0.013746
-0.003490
2012-02-15
0.012473
0.001237
0.015177
0.003117
0.008780
-0.000466
0.011752
0.026839
0.003073
0.050328
...
0.028660
0.010209
-0.001640
0.025585
0.055243
0.019202
0.036798
-0.000071
0.018925
0.002857
2012-02-16
0.003802
0.006727
0.001327
0.001116
-0.007946
0.016390
-0.001617
-0.013502
0.013120
-0.008499
...
0.000368
0.025248
0.009637
-0.009210
-0.004381
0.000725
-0.012227
-0.010105
0.002685
0.005179
2012-02-17
-0.002618
-0.007325
-0.012996
-0.007103
0.016555
-0.014701
-0.010787
-0.016195
-0.001919
-0.011119
...
-0.006866
0.009041
-0.007250
-0.001039
0.010200
-0.000665
-0.013879
-0.025020
-0.008812
-0.012728
2012-02-20
-0.000332
-0.002035
-0.043632
0.011416
-0.013445
0.001273
0.000730
-0.012756
-0.021138
-0.000855
...
-0.001356
-0.010785
-0.000649
0.000758
-0.008504
0.042417
-0.005877
-0.005493
0.008741
0.006196
2012-02-21
0.004950
0.000720
0.008327
0.044102
-0.001556
0.004601
0.007453
0.007384
0.016301
0.012407
...
0.005610
-0.000627
-0.006541
0.013495
0.027145
0.020924
0.003432
0.020683
0.012225
0.018783
2012-02-22
0.021025
0.038936
0.016051
0.007399
0.026629
0.019764
0.020769
0.000859
0.003076
0.036710
...
0.017545
0.022639
0.012361
0.013884
0.040036
0.034923
0.010139
0.001947
0.035241
0.018117
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
2016-11-21
-0.019986
-0.008101
0.003908
0.001862
0.012666
-0.007200
-0.019021
0.005126
-0.000555
-0.001850
...
-0.001335
0.025505
0.012243
0.009461
0.009238
-0.011881
-0.008681
0.002348
0.024609
0.014156
2016-11-22
-0.007877
0.028457
0.008682
0.001877
0.002194
0.002073
-0.024750
-0.006913
0.001948
0.003595
...
0.003472
0.049186
0.002799
0.044671
0.056455
0.001309
-0.005814
-0.001139
-0.003450
-0.018893
2016-11-23
-0.037946
-0.010052
-0.010603
0.004392
0.014131
-0.010940
-0.011725
0.005722
-0.005685
0.006828
...
0.052519
-0.033908
0.006422
0.012077
-0.015869
-0.001378
-0.014918
0.013619
0.000061
-0.008627
2016-11-24
-0.000969
-0.000986
-0.005874
0.024117
-0.000649
-0.010083
-0.007064
0.022455
0.006911
0.003673
...
-0.017106
-0.035326
-0.006271
0.007766
0.060764
-0.014255
-0.020979
0.015326
0.020979
-0.036869
2016-11-25
-0.016786
0.010116
0.005910
-0.007031
-0.007809
-0.006087
-0.011839
-0.015093
0.001275
0.004844
...
0.001070
-0.009514
0.016181
-0.000847
-0.011697
0.007180
-0.011826
-0.006716
0.010633
0.013591
2016-11-28
-0.021213
-0.000057
0.007710
0.001973
-0.016402
0.001991
0.004476
-0.012568
0.037102
0.004010
...
0.000958
0.003555
0.006509
-0.003952
-0.008013
0.016002
-0.012881
-0.003835
-0.017992
-0.007305
2016-11-29
0.008886
-0.005063
-0.004854
0.008315
0.044253
-0.000376
-0.022182
-0.009418
-0.007680
0.001583
...
0.000438
-0.017124
0.003872
-0.028547
-0.014476
-0.008623
0.002328
-0.000443
-0.011687
-0.007976
2016-11-30
-0.026643
0.006194
0.031806
-0.004515
-0.006966
0.001958
-0.009332
0.014152
-0.015983
0.000174
...
0.002583
-0.013814
-0.002165
-0.008877
0.012352
-0.007701
0.000760
-0.015694
0.002697
0.031258
2016-12-01
0.002448
0.003948
-0.002691
-0.001668
-0.005771
-0.000577
0.004149
0.007409
-0.004400
0.001345
...
-0.002973
0.008013
0.005262
0.008404
-0.004975
0.005120
0.009331
0.004454
0.001130
0.003291
2016-12-02
-0.016394
-0.020371
-0.022057
-0.022953
-0.024795
-0.001447
-0.010231
-0.007663
0.001126
0.007613
...
-0.004634
-0.022172
0.030543
-0.027960
-0.006929
-0.006400
-0.007145
0.006859
-0.025329
-0.014659
2016-12-05
-0.033764
-0.006670
-0.018636
0.003896
-0.004276
0.001151
-0.004726
0.000277
0.003090
-0.001845
...
-0.001852
-0.007389
0.001017
-0.015663
-0.089943
0.006376
0.005970
0.003460
-0.008437
0.011413
2016-12-06
0.000607
-0.009088
-0.010074
-0.006594
-0.021142
0.002338
0.011646
0.018692
-0.005826
-0.006399
...
0.000670
0.003751
-0.013534
0.002746
-0.006899
0.019156
0.008341
-0.001448
0.022440
0.011019
2016-12-07
0.034176
0.020348
0.016726
0.006469
-0.003779
0.002556
0.014293
0.000969
0.008160
0.004238
...
-0.007104
0.006431
-0.002520
0.018106
0.003926
0.007019
0.006974
0.002760
0.003750
0.009084
2016-12-08
-0.003290
-0.005307
-0.010783
0.007430
-0.018264
-0.000515
-0.022003
0.003711
0.022774
0.004918
...
0.012556
-0.009970
0.005886
-0.017161
-0.011238
-0.022339
-0.005145
0.006028
-0.007322
-0.007526
2016-12-09
0.004248
0.000289
-0.001344
-0.000712
-0.001206
-0.002479
-0.023379
-0.004873
0.002405
0.000201
...
-0.023708
-0.016107
-0.008300
0.002075
0.001499
-0.005152
0.002408
-0.007357
0.001958
0.000993
2016-12-12
-0.033855
-0.090143
-0.029533
-0.040030
-0.018372
-0.011709
-0.039260
-0.031922
-0.017977
0.004047
...
-0.006060
-0.047215
-0.005012
-0.047289
-0.064371
-0.045698
-0.005423
-0.008057
-0.093341
-0.059801
2016-12-13
0.013261
0.004534
0.008059
0.014762
0.016626
0.014985
0.036448
-0.001179
0.000628
-0.006746
...
-0.048056
-0.002153
-0.011028
0.002029
0.016609
-0.024442
0.003365
0.033298
-0.000162
0.003911
2016-12-14
-0.005239
-0.002859
-0.001326
-0.002740
0.023367
-0.021037
-0.018392
-0.000155
-0.014420
0.000053
...
-0.048004
0.001375
-0.006970
-0.028156
-0.011874
0.064028
0.011323
0.001969
0.009208
-0.012044
2016-12-15
0.037205
0.033771
0.006816
-0.000965
0.004283
0.002342
-0.002225
0.022764
0.043353
0.002626
...
0.005386
0.006257
0.002790
0.012225
0.002050
0.008090
0.015078
-0.002522
0.037332
0.014626
2016-12-16
0.007580
0.018842
0.008055
0.013275
0.005532
0.040619
0.007852
-0.002761
0.027744
-0.002850
...
0.023178
0.012240
0.000488
-0.002655
0.030916
-0.008763
0.008528
0.013990
0.009595
0.026872
2016-12-19
-0.009348
0.001855
-0.008287
-0.004636
-0.004861
0.006399
0.001566
-0.013024
-0.007078
-0.005012
...
0.013695
0.001782
0.011258
0.005467
-0.000234
0.004412
0.001154
0.007133
-0.008908
-0.009126
2016-12-20
0.006804
-0.004414
0.003360
-0.010172
-0.012620
-0.024098
-0.015600
0.020632
-0.010552
-0.002021
...
0.017251
-0.007242
-0.008064
0.001122
-0.001184
-0.026374
0.005463
-0.001702
0.007507
0.008398
2016-12-21
0.003644
0.007380
0.004710
0.005693
0.018688
0.007197
-0.000714
0.001409
-0.001031
-0.004833
...
0.023427
-0.002378
0.001463
0.018008
0.014279
0.016101
-0.003395
-0.010548
0.005754
0.005687
2016-12-22
-0.002787
-0.002546
0.000853
0.001081
-0.021905
-0.006136
0.055116
-0.013502
0.021339
-0.000838
...
-0.005560
0.002456
0.002465
0.040340
0.003860
0.029297
-0.002967
-0.012587
-0.014196
-0.016177
2016-12-23
-0.021112
-0.024298
-0.008947
0.013443
-0.002623
-0.015069
-0.018596
0.008763
-0.001237
-0.006343
...
-0.011582
-0.003149
-0.008129
-0.002114
-0.000864
-0.003197
-0.010240
0.022157
-0.012200
-0.011310
2016-12-26
0.014858
0.005862
0.007607
0.013318
0.003423
0.005841
0.010481
0.000784
-0.006488
-0.003567
...
-0.011265
0.015721
0.004362
-0.021358
0.012214
-0.012221
0.008009
0.022388
0.001454
0.022068
2016-12-27
-0.001322
0.002742
-0.001407
0.008533
-0.000195
0.009406
-0.001684
0.005355
0.027149
-0.002522
...
-0.003769
-0.005504
-0.002497
-0.008191
-0.000932
0.003494
0.010500
0.005870
0.010950
-0.007107
2016-12-28
-0.000614
-0.008929
-0.003600
-0.008892
0.005003
0.001573
-0.012283
0.003652
-0.015854
0.002350
...
-0.002030
0.001870
-0.007008
-0.005437
-0.005866
-0.013506
0.013330
-0.008181
-0.022094
-0.003205
2016-12-29
0.011480
-0.001015
0.011263
0.005325
0.002941
0.007007
0.002594
-0.013311
-0.023279
0.002448
...
0.018108
0.020340
-0.005062
0.037743
0.026895
-0.004151
-0.011858
-0.001905
-0.004643
-0.007024
2016-12-30
-0.003027
0.010719
-0.003080
-0.003277
-0.019140
0.007858
-0.019054
-0.010086
0.001085
-0.008791
...
0.012872
0.022213
0.023470
-0.003306
0.004122
-0.000502
0.003988
-0.018617
0.001742
-0.005796
1213 rows × 896 columns
In [95]:
benchmarkWeight = pd.read_csv(path+ZZ500Weight,infer_datetime_format=True,parse_dates=[0],index_col=0)[stkList].loc[startTime:endTime].iloc[1:].fillna(0)
In [96]:
benchmarkWeight
Out[96]:
002344.SZ
300024.SZ
300039.SZ
600059.SH
600501.SH
000713.SZ
002233.SZ
600360.SH
600565.SH
600636.SH
...
600122.SH
601908.SH
000837.SZ
600282.SH
600739.SH
600406.SH
600866.SH
600227.SH
300134.SZ
002195.SZ
LZ_GPA_INDEX_CSI500WEIGHT-d
2012-01-05
0.0000
0.0
0.0000
0.2701
0.1272
0.1702
0.2268
0.1492
0.0000
0.3497
...
0.2588
0.0000
0.1413
0.0000
0.0
0.0
0.1763
0.2054
0.0000
0.0
2012-01-06
0.0000
0.0
0.0000
0.2666
0.1247
0.1590
0.2188
0.1490
0.0000
0.3455
...
0.2608
0.0000
0.1361
0.0000
0.0
0.0
0.1737
0.2066
0.0000
0.0
2012-01-09
0.0000
0.0
0.0000
0.2690
0.1257
0.1474
0.2278
0.1507
0.0000
0.3483
...
0.2630
0.0000
0.1392
0.0000
0.0
0.0
0.1691
0.2090
0.0000
0.0
2012-01-10
0.0000
0.0
0.0000
0.2684
0.1265
0.1461
0.2331
0.1513
0.0000
0.3566
...
0.2629
0.0000
0.1449
0.0000
0.0
0.0
0.1699
0.2094
0.0000
0.0
2012-01-11
0.0000
0.0
0.0000
0.2675
0.1267
0.1544
0.2383
0.1515
0.0000
0.3578
...
0.2610
0.0000
0.1468
0.0000
0.0
0.0
0.1750
0.2087
0.0000
0.0
2012-01-12
0.0000
0.0
0.0000
0.2643
0.1271
0.1573
0.2332
0.1507
0.0000
0.3582
...
0.2590
0.0000
0.1454
0.0000
0.0
0.0
0.1728
0.2082
0.0000
0.0
2012-01-13
0.0000
0.0
0.0000
0.2633
0.1279
0.1543
0.2347
0.1507
0.0000
0.3664
...
0.2555
0.0000
0.1446
0.0000
0.0
0.0
0.1723
0.2092
0.0000
0.0
2012-01-16
0.0000
0.0
0.0000
0.2637
0.1267
0.1570
0.2324
0.1488
0.0000
0.3708
...
0.2549
0.0000
0.1432
0.0000
0.0
0.0
0.1685
0.2133
0.0000
0.0
2012-01-17
0.0000
0.0
0.0000
0.2615
0.1255
0.1599
0.2323
0.1502
0.0000
0.3716
...
0.2613
0.0000
0.1423
0.0000
0.0
0.0
0.1665
0.2138
0.0000
0.0
2012-01-18
0.0000
0.0
0.0000
0.2622
0.1247
0.1599
0.2385
0.1504
0.0000
0.3823
...
0.2611
0.0000
0.1452
0.0000
0.0
0.0
0.1670
0.2134
0.0000
0.0
2012-01-19
0.0000
0.0
0.0000
0.2600
0.1294
0.1581
0.2455
0.1512
0.0000
0.3877
...
0.2615
0.0000
0.1447
0.0000
0.0
0.0
0.1658
0.2162
0.0000
0.0
2012-01-20
0.0000
0.0
0.0000
0.2610
0.1289
0.1560
0.2445
0.1523
0.0000
0.3875
...
0.2657
0.0000
0.1479
0.0000
0.0
0.0
0.1651
0.2156
0.0000
0.0
2012-01-30
0.0000
0.0
0.0000
0.2652
0.1285
0.1602
0.2472
0.1525
0.0000
0.3793
...
0.2621
0.0000
0.1517
0.0000
0.0
0.0
0.1670
0.2153
0.0000
0.0
2012-01-31
0.0000
0.0
0.0000
0.2681
0.1290
0.1597
0.2399
0.1532
0.0000
0.3790
...
0.2608
0.0000
0.1484
0.0000
0.0
0.0
0.1664
0.2137
0.0000
0.0
2012-02-01
0.0000
0.0
0.0000
0.2672
0.1307
0.1593
0.2398
0.1535
0.0000
0.3738
...
0.2619
0.0000
0.1504
0.0000
0.0
0.0
0.1651
0.2130
0.0000
0.0
2012-02-02
0.0000
0.0
0.0000
0.2645
0.1293
0.1609
0.2335
0.1555
0.0000
0.3685
...
0.2617
0.0000
0.1475
0.0000
0.0
0.0
0.1665
0.2143
0.0000
0.0
2012-02-03
0.0000
0.0
0.0000
0.2615
0.1289
0.1593
0.2346
0.1557
0.0000
0.3701
...
0.2601
0.0000
0.1479
0.0000
0.0
0.0
0.1664
0.2136
0.0000
0.0
2012-02-06
0.0000
0.0
0.0000
0.2600
0.1285
0.1566
0.2308
0.1593
0.0000
0.3734
...
0.2595
0.0000
0.1483
0.0000
0.0
0.0
0.1736
0.2147
0.0000
0.0
2012-02-07
0.0000
0.0
0.0000
0.2588
0.1272
0.1574
0.2340
0.1568
0.0000
0.3710
...
0.2632
0.0000
0.1474
0.0000
0.0
0.0
0.1716
0.2153
0.0000
0.0
2012-02-08
0.0000
0.0
0.0000
0.2562
0.1268
0.1573
0.2304
0.1547
0.0000
0.3656
...
0.2573
0.0000
0.1453
0.0000
0.0
0.0
0.1688
0.2128
0.0000
0.0
2012-02-09
0.0000
0.0
0.0000
0.2570
0.1271
0.1551
0.2331
0.1560
0.0000
0.3690
...
0.2595
0.0000
0.1452
0.0000
0.0
0.0
0.1702
0.2137
0.0000
0.0
2012-02-10
0.0000
0.0
0.0000
0.2597
0.1259
0.1539
0.2331
0.1567
0.0000
0.3738
...
0.2594
0.0000
0.1462
0.0000
0.0
0.0
0.1741
0.2157
0.0000
0.0
2012-02-13
0.0000
0.0
0.0000
0.2573
0.1260
0.1555
0.2337
0.1559
0.0000
0.3685
...
0.2569
0.0000
0.1458
0.0000
0.0
0.0
0.1721
0.2360
0.0000
0.0
2012-02-14
0.0000
0.0
0.0000
0.2601
0.1262
0.1526
0.2289
0.1607
0.0000
0.3666
...
0.2575
0.0000
0.1493
0.0000
0.0
0.0
0.1736
0.2320
0.0000
0.0
2012-02-15
0.0000
0.0
0.0000
0.2590
0.1272
0.1513
0.2317
0.1584
0.0000
0.3688
...
0.2548
0.0000
0.1535
0.0000
0.0
0.0
0.1723
0.2288
0.0000
0.0
2012-02-16
0.0000
0.0
0.0000
0.2554
0.1281
0.1496
0.2307
0.1618
0.0000
0.3782
...
0.2589
0.0000
0.1526
0.0000
0.0
0.0
0.1774
0.2268
0.0000
0.0
2012-02-17
0.0000
0.0
0.0000
0.2555
0.1275
0.1515
0.2288
0.1605
0.0000
0.3719
...
0.2596
0.0000
0.1549
0.0000
0.0
0.0
0.1758
0.2259
0.0000
0.0
2012-02-20
0.0000
0.0
0.0000
0.2539
0.1298
0.1494
0.2266
0.1583
0.0000
0.3685
...
0.2582
0.0000
0.1546
0.0000
0.0
0.0
0.1733
0.2223
0.0000
0.0
2012-02-21
0.0000
0.0
0.0000
0.2555
0.1288
0.1487
0.2270
0.1569
0.0000
0.3660
...
0.2564
0.0000
0.1546
0.0000
0.0
0.0
0.1727
0.2228
0.0000
0.0
2012-02-22
0.0000
0.0
0.0000
0.2635
0.1278
0.1474
0.2260
0.1570
0.0000
0.3646
...
0.2545
0.0000
0.1530
0.0000
0.0
0.0
0.1722
0.2253
0.0000
0.0
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
2016-11-21
0.1798
0.0
0.1389
0.1233
0.0000
0.0000
0.0934
0.0000
0.2512
0.0000
...
0.2679
0.1120
0.0000
0.1317
0.0
0.0
0.0000
0.0000
0.2782
0.0
2016-11-22
0.1780
0.0
0.1394
0.1234
0.0000
0.0000
0.0926
0.0000
0.2505
0.0000
...
0.2671
0.1156
0.0000
0.1334
0.0
0.0
0.0000
0.0000
0.2835
0.0
2016-11-23
0.1773
0.0
0.1400
0.1227
0.0000
0.0000
0.0906
0.0000
0.2497
0.0000
...
0.2667
0.1217
0.0000
0.1393
0.0
0.0
0.0000
0.0000
0.2798
0.0
2016-11-24
0.1722
0.0
0.1389
0.1231
0.0000
0.0000
0.0902
0.0000
0.2484
0.0000
...
0.2827
0.1192
0.0000
0.1424
0.0
0.0
0.0000
0.0000
0.2812
0.0
2016-11-25
0.1740
0.0
0.1378
0.1258
0.0000
0.0000
0.0903
0.0000
0.2480
0.0000
...
0.2790
0.1158
0.0000
0.1455
0.0
0.0
0.0000
0.0000
0.2888
0.0
2016-11-28
0.1713
0.0
0.1375
0.1240
0.0000
0.0000
0.0890
0.0000
0.2451
0.0000
...
0.2777
0.1146
0.0000
0.1458
0.0
0.0
0.0000
0.0000
0.2898
0.0
2016-11-29
0.1682
0.0
0.1383
0.1239
0.0000
0.0000
0.0897
0.0000
0.2535
0.0000
...
0.2770
0.1151
0.0000
0.1464
0.0
0.0
0.0000
0.0000
0.2830
0.0
2016-11-30
0.1700
0.0
0.1381
0.1255
0.0000
0.0000
0.0876
0.0000
0.2519
0.0000
...
0.2790
0.1132
0.0000
0.1431
0.0
0.0
0.0000
0.0000
0.2811
0.0
2016-12-01
0.1650
0.0
0.1432
0.1255
0.0000
0.0000
0.0865
0.0000
0.2490
0.0000
...
0.2805
0.1115
0.0000
0.1419
0.0
0.0
0.0000
0.0000
0.2835
0.0
2016-12-02
0.1653
0.0
0.1420
0.1245
0.0000
0.0000
0.0871
0.0000
0.2465
0.0000
...
0.2789
0.1118
0.0000
0.1435
0.0
0.0
0.0000
0.0000
0.2805
0.0
2016-12-05
0.1644
0.0
0.1399
0.1230
0.0000
0.0000
0.0870
0.0000
0.2499
0.0000
...
0.2831
0.1108
0.0000
0.1427
0.0
0.0
0.0000
0.0000
0.2772
0.0
2016-12-06
0.1598
0.0
0.1376
0.1242
0.0000
0.0000
0.0871
0.0000
0.2505
0.0000
...
0.2846
0.1108
0.0000
0.1420
0.0
0.0
0.0000
0.0000
0.2758
0.0
2016-12-07
0.1597
0.0
0.1370
0.1231
0.0000
0.0000
0.0885
0.0000
0.2486
0.0000
...
0.2844
0.1110
0.0000
0.1423
0.0
0.0
0.0000
0.0000
0.2816
0.0
2016-12-08
0.1632
0.0
0.1375
0.1227
0.0000
0.0000
0.0903
0.0000
0.2467
0.0000
...
0.2815
0.1109
0.0000
0.1454
0.0
0.0
0.0000
0.0000
0.2782
0.0
2016-12-09
0.1625
0.0
0.1362
0.1235
0.0000
0.0000
0.0890
0.0000
0.2531
0.0000
...
0.2880
0.1101
0.0000
0.1440
0.0
0.0
0.0000
0.0000
0.2771
0.0
2016-12-12
0.1578
0.0
0.1314
0.1199
0.0000
0.0000
0.0846
0.0000
0.2535
0.0000
...
0.2740
0.1051
0.0000
0.1411
0.0
0.0
0.0000
0.0000
0.2689
0.0
2016-12-13
0.1559
0.0
0.1286
0.1186
0.0000
0.0000
0.0824
0.0000
0.2576
0.0000
...
0.2903
0.1042
0.0000
0.1421
0.0
0.0
0.0000
0.0000
0.2523
0.0
2016-12-14
0.1559
0.0
0.1289
0.1201
0.0000
0.0000
0.0851
0.0000
0.2564
0.0000
...
0.2780
0.1028
0.0000
0.1434
0.0
0.0
0.0000
0.0000
0.2484
0.0
2016-12-15
0.1556
0.0
0.1290
0.1203
0.0000
0.0000
0.0842
0.0000
0.2528
0.0000
...
0.2671
0.1035
0.0000
0.1413
0.0
0.0
0.0000
0.0000
0.2512
0.0
2016-12-16
0.1604
0.0
0.1289
0.1198
0.0000
0.0000
0.0838
0.0000
0.2637
0.0000
...
0.2686
0.1034
0.0000
0.1429
0.0
0.0
0.0000
0.0000
0.2578
0.0
2016-12-19
0.1610
0.0
0.1295
0.1209
0.0000
0.0000
0.0844
0.0000
0.2697
0.0000
...
0.2719
0.1040
0.0000
0.1415
0.0
0.0
0.0000
0.0000
0.2588
0.0
2016-12-20
0.1584
0.0
0.1280
0.1206
0.0000
0.0000
0.0846
0.0000
0.2696
0.0000
...
0.2780
0.1039
0.0000
0.1444
0.0
0.0
0.0000
0.0000
0.2551
0.0
2016-12-21
0.1601
0.0
0.1289
0.1198
0.0000
0.0000
0.0832
0.0000
0.2671
0.0000
...
0.2811
0.1035
0.0000
0.1444
0.0
0.0
0.0000
0.0000
0.2582
0.0
2016-12-22
0.1598
0.0
0.1288
0.1199
0.0000
0.0000
0.0828
0.0000
0.2653
0.0000
...
0.2847
0.1026
0.0000
0.1458
0.0
0.0
0.0000
0.0000
0.2577
0.0
2016-12-23
0.1594
0.0
0.1283
0.1203
0.0000
0.0000
0.0875
0.0000
0.2713
0.0000
...
0.2831
0.1025
0.0000
0.1529
0.0
0.0
0.0000
0.0000
0.2536
0.0
2016-12-26
0.1434
0.0
0.1280
0.1230
0.0000
0.0000
0.0859
0.0000
0.2746
0.0000
...
0.2821
0.1026
0.0000
0.1544
0.0
0.0
0.0000
0.0000
0.2518
0.0
2016-12-27
0.1451
0.0
0.1291
0.1246
0.0000
0.0000
0.0868
0.0000
0.2738
0.0000
...
0.2779
0.1035
0.0000
0.1506
0.0
0.0
0.0000
0.0000
0.2505
0.0
2016-12-28
0.1453
0.0
0.1292
0.1257
0.0000
0.0000
0.0872
0.0000
0.2814
0.0000
...
0.2768
0.1029
0.0000
0.1497
0.0
0.0
0.0000
0.0000
0.2533
0.0
2016-12-29
0.1457
0.0
0.1285
0.1252
0.0000
0.0000
0.0863
0.0000
0.2786
0.0000
...
0.2771
0.1033
0.0000
0.1497
0.0
0.0
0.0000
0.0000
0.2481
0.0
2016-12-30
0.1479
0.0
0.1297
0.1262
0.0000
0.0000
0.0867
0.0000
0.2731
0.0000
...
0.2830
0.1057
0.0000
0.1561
0.0
0.0
0.0000
0.0000
0.2474
0.0
1213 rows × 896 columns
In [ ]:
In [113]:
riskExposureDF = pd.concat(map(lambda x: x.loc[baseDate], secDic.values()), axis=1)
riskExposureDF.columns = secDic.keys()
riskExposureDF.head()
Out[113]:
OCFTODEBT
YOYGR
OWNILLIQ
PB
MOM_1M
IDIVOL
VOLATILITY
ADJTOV20
DDA20
LMAO
002344.SZ
-0.533518
-0.423901
-0.346512
-0.533776
0.006471
-0.372335
0.704913
-0.137755
-0.119188
-0.212872
300024.SZ
-1.368787
-0.400260
-0.511388
1.072236
-0.985791
-0.566310
-0.603903
0.160879
-0.203172
0.945332
300039.SZ
2.848992
0.235734
0.013041
0.211676
-0.896589
-0.574328
-0.031449
0.399761
0.312352
-0.995383
600059.SH
-1.362043
-0.307219
-0.381602
-0.549090
0.564325
-0.979525
-0.400975
-0.171430
0.191574
-0.629969
600501.SH
-0.871931
0.180188
1.207533
0.027033
0.134395
0.026227
-0.586483
-0.384902
0.393204
-0.731978
In [143]:
spEwmMatrix = brm.calEWMcovariance(specificReturn.loc[:baseDate].iloc[-200:],decay=0.94)
tempo = spEwmMatrix .copy()
digVal = np.diag(spEwmMatrix)
a = np.fill_diagonal(tempo.values ,0)
finalSpMat = spEwmMatrix -tempo
In [144]:
finalSpMat
Out[144]:
002344.SZ
300024.SZ
300039.SZ
600059.SH
600501.SH
000713.SZ
002233.SZ
600360.SH
600565.SH
600636.SH
...
600122.SH
601908.SH
000837.SZ
600282.SH
600739.SH
600406.SH
600866.SH
600227.SH
300134.SZ
002195.SZ
002344.SZ
0.000306
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
300024.SZ
0.000000
0.000359
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
300039.SZ
0.000000
0.000000
0.000108
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600059.SH
0.000000
0.000000
0.000000
0.000113
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600501.SH
0.000000
0.000000
0.000000
0.000000
0.000187
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000713.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000146
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
002233.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000384
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600360.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000196
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600565.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000272
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600636.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000023
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000911.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000063.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
601018.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
002557.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600199.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
601558.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000685.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
002431.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600478.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000636.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600598.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000513.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
601601.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
601618.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
300085.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600797.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600640.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000926.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000960.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600522.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
600518.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600967.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600195.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600387.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000998.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600795.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
002327.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600362.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
002570.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000012.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600022.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
002437.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600276.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000627.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600073.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
002241.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600547.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
601727.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600269.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000002.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600122.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000305
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
601908.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00026
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
000837.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000133
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600282.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000361
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
600739.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000492
0.000000
0.000000
0.000000
0.000000
0.000000
600406.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000389
0.000000
0.000000
0.000000
0.000000
600866.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000099
0.000000
0.000000
0.000000
600227.SH
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000152
0.000000
0.000000
300134.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000413
0.000000
002195.SZ
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
...
0.000000
0.00000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000267
896 rows × 896 columns
In [145]:
adjFinalCov = brm.calFinlCov(factorCov,benchmarkWeight.loc[baseDate],returnOfBench,riskExposureDF,finalSpMat)
In [146]:
adjFinalCov
Out[146]:
OCFTODEBT
YOYGR
OWNILLIQ
PB
MOM_1M
IDIVOL
VOLATILITY
ADJTOV20
DDA20
LMAO
OCFTODEBT
3.879863e-07
3.438485e-07
6.754543e-07
4.711212e-07
1.475267e-07
-2.029487e-06
-5.041079e-07
-1.376414e-06
-1.578262e-06
-1.139260e-06
YOYGR
3.438485e-07
3.207547e-07
6.294490e-07
4.378611e-07
1.494457e-07
-1.916129e-06
-4.760338e-07
-1.283230e-06
-1.483285e-06
-1.070915e-06
OWNILLIQ
6.754543e-07
6.294490e-07
1.241332e-06
8.624507e-07
3.004754e-07
-3.772922e-06
-9.313048e-07
-2.531140e-06
-2.922066e-06
-2.126727e-06
PB
4.711212e-07
4.378611e-07
8.624507e-07
5.996278e-07
2.068364e-07
-2.619884e-06
-6.476301e-07
-1.757806e-06
-2.028987e-06
-1.473945e-06
MOM_1M
1.475267e-07
1.494457e-07
3.004754e-07
2.068364e-07
8.767089e-08
-9.260441e-07
-2.225090e-07
-6.134941e-07
-7.133687e-07
-5.366155e-07
IDIVOL
-2.029487e-06
-1.916129e-06
-3.772922e-06
-2.619884e-06
-9.260441e-07
1.151125e-05
2.847049e-06
7.696477e-06
8.905522e-06
6.466635e-06
VOLATILITY
-5.041079e-07
-4.760338e-07
-9.313048e-07
-6.476301e-07
-2.225090e-07
2.847049e-06
7.102396e-07
1.899932e-06
2.201721e-06
1.581643e-06
ADJTOV20
-1.376414e-06
-1.283230e-06
-2.531140e-06
-1.757806e-06
-6.134941e-07
7.696477e-06
1.899932e-06
5.164230e-06
5.962233e-06
4.339483e-06
DDA20
-1.578262e-06
-1.483285e-06
-2.922066e-06
-2.028987e-06
-7.133687e-07
8.905522e-06
2.201721e-06
5.962233e-06
6.893655e-06
5.008383e-06
LMAO
-1.139260e-06
-1.070915e-06
-2.126727e-06
-1.473945e-06
-5.366155e-07
6.466635e-06
1.581643e-06
4.339483e-06
5.008383e-06
3.686980e-06
In [148]:
stocks = pd.read_csv(path+ZZ500Weight,infer_datetime_format=True,parse_dates=[0],index_col=0)[stkList].loc[startTime:endTime].loc[baseDate].dropna()
optStkPool = stocks.index.tolist() # make sure the stock pool is ZZ500
riskExposureDFSlice = riskExposureDF.loc[optStkPool]
toOptCov = reduce(lambda x,y: x.dot(y),[riskExposureDFSlice,adjFinalCov,riskExposureDFSlice.T])
In [151]:
# Optimize
factorNum = riskExposureDFSlice.shape[1]
stkNum = toOptCov.shape[1]
P = cv.matrix(toOptCov.values)
q = cv.matrix(0.0, (stkNum, 1))
G = cv.matrix(np.concatenate((riskExposureDFSlice.T.values, np.diag(np.ones(stkNum)), - np.diag(np.ones(stkNum)))))
h = cv.matrix(reduce(lambda x,y : np.append(x,y),[0.01 * np.ones(factorNum),0.005 * np.ones(stkNum), np.zeros(stkNum)]))
A = cv.matrix(np.ones(stkNum)).T
b = cv.matrix(1.0).T
sol = solvers.qp(P, q, G, h, A, b)
print sol['x']
pcost dcost gap pres dres
0: 1.1804e-09 -1.9238e+00 8e+02 3e+01 5e+01
1: 2.1210e-05 -2.6383e+00 6e+01 2e+00 4e+00
2: 3.8276e-07 -1.8819e+00 4e+00 6e-02 1e-01
3: 3.6568e-07 -4.3178e-01 4e-01 3e-16 5e-15
4: 3.6565e-07 -4.3344e-03 4e-03 1e-16 1e-15
5: 3.6274e-07 -5.9839e-05 6e-05 2e-16 2e-17
6: 2.2874e-07 -9.7449e-06 1e-05 2e-16 2e-18
7: 3.0216e-08 -7.5285e-07 8e-07 2e-16 4e-20
8: 3.9154e-09 -1.0306e-07 1e-07 2e-16 1e-20
9: 1.0484e-09 -1.6245e-08 2e-08 7e-16 7e-21
Optimal solution found.
[ 3.58e-03]
[ 9.31e-04]
[ 3.55e-03]
[ 2.17e-03]
[ 2.41e-03]
[ 3.86e-03]
[ 3.32e-03]
[ 1.68e-03]
[ 2.11e-03]
[ 5.27e-04]
[ 9.87e-04]
[ 3.20e-03]
[ 3.53e-03]
[ 4.08e-03]
[ 3.19e-03]
[ 2.61e-03]
[ 3.58e-03]
[ 2.43e-03]
[ 2.46e-03]
[ 2.30e-03]
[ 7.41e-04]
[ 3.78e-03]
[ 1.69e-03]
[ 3.83e-03]
[ 1.53e-03]
[ 2.24e-03]
[ 1.24e-03]
[ 1.65e-03]
[ 1.74e-03]
[ 1.88e-03]
[ 1.85e-03]
[ 2.04e-03]
[ 3.67e-03]
[ 4.30e-03]
[ 3.08e-03]
[ 2.20e-03]
[ 1.45e-03]
[ 4.05e-03]
[ 3.11e-03]
[ 3.05e-03]
[ 1.72e-03]
[ 2.42e-03]
[ 3.49e-03]
[ 2.56e-03]
[ 3.92e-03]
[ 2.69e-03]
[ 4.07e-03]
[ 3.27e-03]
[ 3.49e-03]
[ 2.87e-03]
[ 1.14e-03]
[ 1.67e-03]
[ 1.04e-03]
[ 1.51e-03]
[ 1.24e-03]
[ 2.03e-03]
[ 3.76e-03]
[ 1.21e-03]
[ 2.21e-03]
[ 1.16e-03]
[ 1.40e-03]
[ 3.77e-03]
[ 3.90e-03]
[ 4.30e-03]
[ 1.90e-03]
[ 1.96e-03]
[ 2.36e-03]
[ 1.12e-03]
[ 1.65e-03]
[ 4.37e-03]
[ 8.32e-04]
[ 3.87e-03]
[ 9.82e-04]
[ 5.22e-04]
[ 6.32e-04]
[ 2.07e-03]
[ 3.85e-03]
[ 1.23e-03]
[ 8.42e-04]
[ 1.52e-03]
[ 3.90e-03]
[ 2.42e-03]
[ 6.10e-04]
[ 1.93e-03]
[ 4.19e-03]
[ 5.05e-04]
[ 3.84e-03]
[ 2.86e-03]
[ 3.02e-03]
[ 3.44e-03]
[ 3.53e-03]
[ 3.31e-03]
[ 4.02e-03]
[ 2.09e-03]
[ 1.82e-03]
[ 1.72e-03]
[ 3.28e-03]
[ 4.23e-03]
[ 9.11e-04]
[ 4.17e-03]
[ 8.67e-04]
[ 4.11e-03]
[ 3.95e-03]
[ 3.96e-03]
[ 2.71e-03]
[ 1.79e-03]
[ 3.07e-03]
[ 3.54e-03]
[ 3.75e-03]
[ 1.47e-03]
[ 1.11e-03]
[ 3.97e-03]
[ 3.14e-03]
[ 1.20e-03]
[ 3.18e-03]
[ 3.98e-03]
[ 3.26e-03]
[ 2.41e-03]
[ 3.01e-03]
[ 3.24e-03]
[ 3.00e-03]
[ 2.72e-03]
[ 3.62e-03]
[ 3.51e-03]
[ 4.05e-03]
[ 9.28e-04]
[ 2.50e-03]
[ 3.20e-03]
[ 3.25e-03]
[ 2.22e-03]
[ 2.09e-03]
[ 1.77e-03]
[ 8.69e-04]
[ 1.08e-03]
[ 3.92e-03]
[ 3.60e-03]
[ 1.15e-03]
[ 2.79e-03]
[ 1.90e-03]
[ 3.54e-03]
[ 1.17e-03]
[ 3.56e-03]
[ 3.93e-03]
[ 3.63e-03]
[ 3.91e-03]
[ 2.21e-03]
[ 1.92e-03]
[ 1.92e-03]
[ 4.36e-03]
[ 1.84e-03]
[ 3.79e-03]
[ 3.13e-03]
[ 1.71e-03]
[ 1.38e-03]
[ 9.25e-04]
[ 3.05e-03]
[ 2.10e-03]
[ 1.88e-03]
[ 6.14e-04]
[ 3.63e-03]
[ 3.19e-03]
[ 1.35e-03]
[ 5.97e-04]
[ 1.69e-03]
[ 2.00e-03]
[ 2.66e-03]
[ 1.08e-03]
[ 4.43e-04]
[ 1.93e-03]
[ 3.76e-03]
[ 3.81e-03]
[ 2.36e-03]
[ 1.95e-03]
[ 3.17e-03]
[ 3.94e-03]
[ 3.83e-03]
[ 4.08e-03]
[ 1.80e-03]
[ 2.76e-03]
[ 2.00e-03]
[ 2.16e-03]
[ 3.55e-03]
[ 5.97e-04]
[ 2.24e-03]
[ 1.17e-03]
[ 2.35e-03]
[ 1.62e-03]
[ 1.27e-03]
[ 1.18e-03]
[ 8.64e-04]
[ 3.70e-03]
[ 3.17e-03]
[ 4.02e-03]
[ 4.39e-03]
[ 2.56e-03]
[ 3.34e-03]
[ 3.68e-03]
[ 4.08e-03]
[ 4.21e-03]
[ 2.33e-03]
[ 2.82e-03]
[ 3.91e-03]
[ 1.40e-03]
[ 6.27e-04]
[ 4.01e-03]
[ 3.91e-03]
[ 2.58e-03]
[ 3.19e-03]
[ 2.52e-03]
[ 1.63e-03]
[ 2.24e-03]
[ 2.28e-03]
[ 3.10e-03]
[ 2.29e-03]
[ 2.40e-03]
[ 3.11e-03]
[ 3.68e-03]
[ 1.97e-03]
[ 3.98e-03]
[ 3.24e-03]
[ 2.42e-03]
[ 3.62e-03]
[ 3.38e-03]
[ 4.02e-03]
[ 3.79e-03]
[ 2.32e-03]
[ 3.61e-03]
[ 4.03e-03]
[ 2.41e-04]
[ 3.16e-03]
[ 9.42e-04]
[ 3.81e-03]
[ 3.89e-03]
[ 3.80e-03]
[ 3.47e-03]
[ 1.45e-03]
[ 3.75e-03]
[ 4.14e-03]
[ 1.63e-03]
[ 9.17e-04]
[ 2.96e-03]
[ 2.61e-03]
[ 2.20e-03]
[ 3.39e-03]
[ 3.36e-03]
[ 4.12e-03]
[ 1.09e-03]
[ 3.18e-03]
[ 4.04e-03]
[ 1.42e-03]
[ 2.77e-03]
[ 3.57e-03]
[ 3.42e-03]
[ 3.89e-03]
[ 3.60e-03]
[ 8.30e-04]
[ 3.57e-03]
[ 1.58e-03]
[ 3.21e-03]
[ 1.43e-03]
[ 3.66e-03]
[ 3.84e-03]
[ 1.69e-03]
[ 3.47e-03]
[ 1.61e-03]
[ 3.22e-03]
[ 3.44e-03]
[ 3.90e-03]
[ 3.72e-03]
[ 3.11e-03]
[ 3.60e-03]
[ 2.69e-03]
[ 3.30e-03]
[ 2.70e-03]
[ 3.29e-03]
[ 1.22e-03]
[ 2.05e-03]
[ 3.39e-03]
[ 1.80e-03]
[ 2.44e-03]
[ 3.57e-03]
[ 1.19e-03]
[ 2.30e-03]
[ 2.17e-03]
[ 2.97e-03]
[ 3.80e-03]
[ 2.93e-03]
[ 2.26e-03]
[ 5.94e-04]
[ 4.28e-03]
[ 3.62e-03]
[ 1.55e-03]
[ 3.07e-03]
[ 3.77e-03]
[ 1.46e-03]
[ 1.30e-03]
[ 2.62e-03]
[ 5.97e-04]
[ 1.43e-03]
[ 2.86e-03]
[ 4.32e-03]
[ 3.76e-03]
[ 1.01e-03]
[ 3.19e-03]
[ 3.90e-03]
[ 5.70e-04]
[ 3.25e-03]
[ 4.47e-03]
[ 3.18e-03]
[ 4.18e-03]
[ 2.12e-03]
[ 2.12e-03]
[ 2.80e-03]
[ 1.15e-03]
[ 3.05e-03]
[ 2.98e-03]
[ 3.76e-03]
[ 3.51e-03]
[ 1.36e-03]
[ 1.04e-03]
[ 2.04e-03]
[ 9.94e-04]
[ 3.94e-03]
[ 1.60e-03]
[ 3.23e-03]
[ 2.74e-03]
[ 4.18e-03]
[ 3.89e-03]
[ 2.77e-03]
[ 2.29e-03]
[ 3.15e-03]
[ 2.81e-03]
[ 3.60e-03]
[ 2.64e-03]
[ 3.93e-03]
[ 1.30e-03]
[ 2.60e-03]
[ 3.27e-03]
[ 9.90e-04]
[ 2.25e-03]
[ 1.88e-03]
[ 8.50e-04]
[ 4.39e-03]
[ 2.12e-03]
[ 3.42e-03]
[ 1.91e-03]
[ 6.51e-04]
[ 3.92e-03]
[ 2.72e-03]
[ 1.48e-03]
[ 1.92e-03]
[ 4.10e-03]
[ 1.97e-03]
[ 1.02e-03]
[ 2.53e-03]
[ 2.08e-03]
[ 3.59e-03]
[ 2.41e-03]
[ 1.71e-03]
[ 9.22e-04]
[ 4.18e-03]
[ 2.54e-03]
[ 2.91e-03]
[ 3.06e-03]
[ 3.57e-03]
[ 2.93e-04]
[ 7.45e-04]
[ 4.38e-03]
[ 3.17e-03]
[ 2.16e-03]
[ 1.77e-03]
[ 2.74e-03]
[ 1.52e-03]
[ 3.84e-03]
[ 3.72e-03]
[ 2.13e-03]
[ 2.53e-03]
[ 3.61e-03]
[ 3.28e-03]
[ 3.83e-03]
[ 3.56e-03]
In [155]:
list(sol['x'])
Out[155]:
[0.0035774984988443037,
0.0009308220341450753,
0.003548018050076839,
0.002169601054903463,
0.0024092914666079923,
0.0038588306081779717,
0.003323029994585457,
0.0016779922339773235,
0.0021108803687309896,
0.0005271064567172787,
0.0009867433896959203,
0.003201135240004641,
0.0035303513421140595,
0.004078433021782507,
0.0031869740449396154,
0.002611712869805227,
0.0035785479573754693,
0.002425271504719507,
0.002464330045135592,
0.0023036222320236355,
0.0007407804691231523,
0.003782096550753362,
0.0016939009163684524,
0.003827954309705712,
0.0015301557217077108,
0.002236751108238523,
0.001244076443383809,
0.0016522793690877313,
0.0017359459538637417,
0.0018834717933004248,
0.001850590373014356,
0.0020372338409934162,
0.0036665088767253787,
0.004299260896263385,
0.003081112588718347,
0.0021968850815412624,
0.001448043004999657,
0.0040537459556968854,
0.0031148202917606243,
0.0030467165745316927,
0.0017159345644011902,
0.0024163889099551115,
0.0034910443954585,
0.0025554430255025564,
0.003922270893050304,
0.0026875932979300346,
0.004074627440742311,
0.0032716619155167587,
0.0034882738133738597,
0.0028746627756777656,
0.0011418605145143636,
0.0016672058517830928,
0.0010385884283706166,
0.0015101585013064308,
0.0012437733019226712,
0.0020270616031051298,
0.003755410533271888,
0.001206725060412983,
0.0022146203109961633,
0.001160369984591362,
0.001398472032454265,
0.003772797628404606,
0.0038990412797930874,
0.004296433257344024,
0.001900616011077037,
0.0019633145344062105,
0.002358669901681747,
0.0011223122175010648,
0.0016490052393594806,
0.004374998732046593,
0.0008321328698205563,
0.0038694302841162207,
0.0009817922051875076,
0.0005224941179728317,
0.0006318311904907736,
0.002069136711207625,
0.0038496703258989514,
0.0012293522233833057,
0.0008418878457776948,
0.0015196265668175487,
0.003897999866401288,
0.0024150458220245094,
0.000610155097297847,
0.0019277635044186781,
0.0041900983571674915,
0.0005053312594256223,
0.0038432517076897282,
0.0028621685086047677,
0.0030221601849871396,
0.003439200565998596,
0.0035334424889863878,
0.003310652827981119,
0.00401879647916161,
0.002091241556397304,
0.0018239226513707925,
0.001716926702675974,
0.0032831040978050625,
0.004232008013932972,
0.000911386912079005,
0.004166113515135644,
0.0008669558855616725,
0.004107701051930854,
0.003951645262630287,
0.003962386662722436,
0.002712195920389262,
0.0017919208406640447,
0.003071029116424464,
0.003543554525381819,
0.0037522874062894326,
0.0014681353222630582,
0.0011143941068892363,
0.003968883945853476,
0.0031398216347354,
0.001197334078842284,
0.0031782058509672315,
0.003977623996921258,
0.0032624644777748736,
0.002411037284237819,
0.0030118628796739887,
0.0032363082566899868,
0.0030046517225563616,
0.002723168275827105,
0.003618273104792633,
0.0035132970419412125,
0.0040473350139195305,
0.000927671851672641,
0.002503047601809963,
0.003195574063810304,
0.0032496420233306842,
0.0022151374811968296,
0.0020865580203720977,
0.0017675877571477247,
0.0008692411992099402,
0.0010811170134867913,
0.0039235625316456175,
0.0036032562469790856,
0.0011535895151642058,
0.0027887412482450386,
0.0018977001810619061,
0.0035443067443291405,
0.001172976371567213,
0.003560863937670692,
0.003932081169526731,
0.0036291592170769596,
0.003906792859250366,
0.0022054059747917683,
0.0019200138194506442,
0.0019170809156393229,
0.004361626361972372,
0.0018411935838164302,
0.00379367463650769,
0.003131727265209547,
0.0017120042818099986,
0.001377950612469905,
0.0009250983570002027,
0.003047277855987298,
0.0021048661293667933,
0.0018770881533497644,
0.0006139551576528756,
0.003626190188249947,
0.0031864597336641234,
0.0013531402916572661,
0.000597438801022481,
0.001688961280307721,
0.001996923064514096,
0.0026592832201831813,
0.0010785574945110696,
0.0004430297971385726,
0.0019334498402707278,
0.0037584168522820493,
0.003813739442298325,
0.0023637624409159693,
0.001953414126537733,
0.003169032927810881,
0.003941433088357428,
0.0038327069562434026,
0.004079951466446969,
0.0017978261452493859,
0.0027591744936157118,
0.001996829937580914,
0.0021578835389703976,
0.0035460597815448825,
0.0005966043287739118,
0.0022391272772759184,
0.001171427497095778,
0.002353898473026033,
0.0016217755833801218,
0.0012662965788169502,
0.0011778278692866169,
0.0008640729615316553,
0.003700473481252227,
0.003169292517214361,
0.004019575686268028,
0.0043862518235686316,
0.002558068530195073,
0.003342869050539335,
0.0036783672243045308,
0.004077716227220983,
0.004207070307610244,
0.0023301943851728856,
0.002824000963921895,
0.0039119417600014085,
0.0014030362867306844,
0.0006266671221552475,
0.00401271573188127,
0.003907801718093392,
0.002576354174913736,
0.003191375107530101,
0.002518090172203906,
0.0016260209381145944,
0.0022352192284498733,
0.0022810499094342946,
0.0031003707629836774,
0.0022934014149919237,
0.0023992591641609556,
0.0031070969243372406,
0.003675738911329154,
0.0019716783927285174,
0.003977488451491847,
0.0032351336074776145,
0.0024176679368225545,
0.00361913833010193,
0.0033827933878592055,
0.004016996057005903,
0.003794110235562344,
0.0023226605692740214,
0.00360677187785016,
0.004033385647409505,
0.00024138630385479743,
0.0031579402510024676,
0.0009421864188299562,
0.0038090379510202165,
0.0038949255230998204,
0.0038010853738320444,
0.0034715563796311978,
0.0014491702385732769,
0.0037491984544414424,
0.004143353066469931,
0.001626019773902891,
0.0009166361733055882,
0.0029562250434511496,
0.002606228064667981,
0.0022019271671940973,
0.0033941761577704435,
0.00336456682489158,
0.004120502019864,
0.0010856418716053157,
0.003175503371864635,
0.004035560089903088,
0.001422043873474693,
0.0027699169223731035,
0.0035742972787972957,
0.0034169555806994787,
0.0038904279069407613,
0.0035962749163006035,
0.0008297347703591188,
0.0035651503135954114,
0.0015762160161036853,
0.003210617392671978,
0.0014301342612263364,
0.003663610405559904,
0.0038355383738563724,
0.0016945820510200127,
0.003471574368846939,
0.0016092562605132883,
0.0032220645157101527,
0.0034364662708680706,
0.003901872623457868,
0.003722251995663762,
0.0031112135708624036,
0.003595427439749794,
0.0026918791445543354,
0.0033042661268802335,
0.00270448212887479,
0.0032912521614327506,
0.0012210458032318138,
0.002045478056187735,
0.003386048920990824,
0.001801968118432262,
0.002443569082904182,
0.0035699823634505364,
0.0011938216760598176,
0.002298448344682382,
0.0021676357043388743,
0.0029723471149567184,
0.0038027772383736314,
0.002927596301627951,
0.002257210405780766,
0.000593976717379017,
0.004275391658238817,
0.0036231987844878777,
0.0015511410417422872,
0.0030650210822332795,
0.0037687348646409735,
0.0014597069707779219,
0.0012982408640435671,
0.002622262777956889,
0.0005966547436507677,
0.0014321705743548074,
0.0028581637764505553,
0.0043248601331211676,
0.00375966562760117,
0.001006052756573423,
0.0031906092115839982,
0.0038959963829344546,
0.0005698354977920199,
0.0032520394320240866,
0.004472506674767106,
0.003182684429506364,
0.004180244634889737,
0.002116407950563484,
0.002115186583491836,
0.002804787885844742,
0.0011496618630371898,
0.0030527331571948303,
0.0029844527227497137,
0.0037611714987937583,
0.003511106804084471,
0.0013589534799416415,
0.0010427098775062469,
0.002043380731442065,
0.0009939905308219588,
0.003937216005014956,
0.0015998331717072267,
0.0032282931956649583,
0.0027413607708067066,
0.004181372694033311,
0.003893858026206641,
0.0027737443114419368,
0.0022886117605919343,
0.003147065557787955,
0.002805164126072182,
0.0035985688675186085,
0.0026432448046033205,
0.003931127662781673,
0.0012979098608386364,
0.0025959040599208266,
0.0032732461566362973,
0.0009901105607156805,
0.002252703441749181,
0.0018840809828641358,
0.0008501468932134808,
0.004386780178900004,
0.0021240682638331006,
0.003417607299635323,
0.0019100158038406376,
0.0006511514591855553,
0.003921039897869283,
0.0027150679933327635,
0.0014779792923908814,
0.0019192589705263646,
0.004096753345223758,
0.001974941974535992,
0.001024867358306188,
0.002534627850235801,
0.002081038869853066,
0.0035855397288920557,
0.0024069804424918747,
0.0017117406015556597,
0.0009215659155589247,
0.004180205726930851,
0.0025374808752693452,
0.002905057923102153,
0.0030646988590426636,
0.003567253737889331,
0.00029331036443775674,
0.0007446749539788327,
0.004383749545225538,
0.0031734070213425354,
0.0021607144695887197,
0.0017695787087413108,
0.0027352991318953445,
0.001522902456867032,
0.0038449943141524584,
0.0037212291873873725,
0.002126249998516372,
0.002528826000975388,
0.003610174123215002,
0.0032810691434774627,
0.0038251056069374804,
0.003564899399392912]
In [150]:
len(sol['x'])
Out[150]:
381
Content source: kamiseko/factor-test
Similar notebooks: