def get_factor_data(self, start_date: dt.date = None, end_date: dt.date = None, identifiers: List[str] = None, include_performance_curve: bool = None) -> List[Dict]: """ Retrieve factor data for existing risk model """ start_date = dt.datetime.strptime( GsRiskModelApi.get_risk_model_dates(self.model.id)[0], '%Y-%m-%d') if not start_date else start_date id_to_category_for_date_range = GsRiskModelApi.get_risk_model_data( model_id=self.model.id, start_date=start_date, end_date=end_date, assets=None, measures=[Measure.Factor_Id, Measure.Factor_Category], limit_factors=False, data_format=None).get('results') factor_id_to_category = _build_id_to_category( id_to_category_for_date_range) factor_data = GsRiskModelApi.get_risk_model_factor_data( self.model.id, start_date, end_date, identifiers, include_performance_curve) for factor in factor_data: factor['factorCategory'] = factor_id_to_category.get( factor.get('identifier'), factor.get('name')) return factor_data
def get_factor_data(self, start_date: dt.date = None, end_date: dt.date = None, identifiers: List[str] = None, include_performance_curve: bool = None) -> List[Dict]: """ Retrieve factor data for existing risk model """ return GsRiskModelApi.get_risk_model_factor_data( self.model.id, start_date, end_date, identifiers, include_performance_curve)