11import json
2+ from datetime import datetime
23from multiprocessing import cpu_count
34from multiprocessing .pool import ThreadPool
45from os import makedirs
56from os .path import join
6- from typing import Optional
7+ from typing import Dict , Optional
78
89from pandas import DataFrame , Timestamp
910
1011from .factor_risk_model import FactorRiskModel
12+ from .risk_model import RiskModel
1113from .rolling_risk_model import RollingRiskModel
1214
1315
@@ -20,11 +22,37 @@ class RollingFactorRiskModel(RollingRiskModel):
2022 returns.
2123 """
2224
23- def __init__ (self , ** kwargs ):
25+ def __init__ (
26+ self ,
27+ model : Optional [RiskModel ] = None ,
28+ window : Optional [int ] = None ,
29+ show_progress : Optional [bool ] = False ,
30+ values : Optional [Dict [datetime , RiskModel ]] = None ,
31+ ):
2432 """
2533 Constructor.
34+
35+ Parameters
36+ ----------
37+ model: Optional[RiskModel]
38+ Risk model object to fit in rolling basis.
39+
40+ window: Optional[int]
41+ Number of rolling windows to use from the returns.
42+ Must be provided in fitting the model.
43+
44+ show_progress: Optional[bool]
45+ Indicate to show progress bar in running.
46+
47+ values: Optional[Dict[datetime, RiskModel]]
48+ Rolling risk models values.
2649 """
27- super ().__init__ (** kwargs )
50+ super ().__init__ (
51+ model = model ,
52+ window = window ,
53+ show_progress = show_progress ,
54+ values = values ,
55+ )
2856
2957 def transform (
3058 self ,
0 commit comments