mirror of
https://github.com/NicolasBohn/NexQuant.git
synced 2026-07-29 00:17:44 +00:00
09325aed89
* fix a bug in kaggle conf * fix a ci error * refine logic for qlib_factor_from_report
85 lines
3.1 KiB
Python
85 lines
3.1 KiB
Python
from pydantic_settings import BaseSettings
|
|
|
|
from rdagent.components.workflow.conf import BasePropSetting
|
|
|
|
|
|
class ModelBasePropSetting(BasePropSetting):
|
|
class Config:
|
|
env_prefix = "QLIB_MODEL_"
|
|
"""Use `QLIB_MODEL_` as prefix for environment variables"""
|
|
protected_namespaces = ()
|
|
"""Add 'model_' to the protected namespaces"""
|
|
|
|
# 1) override base settings
|
|
scen: str = "rdagent.scenarios.qlib.experiment.model_experiment.QlibModelScenario"
|
|
"""Scenario class for Qlib Model"""
|
|
|
|
hypothesis_gen: str = "rdagent.scenarios.qlib.proposal.model_proposal.QlibModelHypothesisGen"
|
|
"""Hypothesis generation class"""
|
|
|
|
hypothesis2experiment: str = "rdagent.scenarios.qlib.proposal.model_proposal.QlibModelHypothesis2Experiment"
|
|
"""Hypothesis to experiment class"""
|
|
|
|
coder: str = "rdagent.scenarios.qlib.developer.model_coder.QlibModelCoSTEER"
|
|
"""Coder class"""
|
|
|
|
runner: str = "rdagent.scenarios.qlib.developer.model_runner.QlibModelRunner"
|
|
"""Runner class"""
|
|
|
|
summarizer: str = "rdagent.scenarios.qlib.developer.feedback.QlibModelHypothesisExperiment2Feedback"
|
|
"""Summarizer class"""
|
|
|
|
evolving_n: int = 10
|
|
"""Number of evolutions"""
|
|
|
|
|
|
class FactorBasePropSetting(BasePropSetting):
|
|
class Config:
|
|
env_prefix = "QLIB_FACTOR_"
|
|
"""Use `QLIB_FACTOR_` as prefix for environment variables"""
|
|
protected_namespaces = ()
|
|
"""Add 'factor_' to the protected namespaces"""
|
|
|
|
# 1) override base settings
|
|
scen: str = "rdagent.scenarios.qlib.experiment.factor_experiment.QlibFactorScenario"
|
|
"""Scenario class for Qlib Factor"""
|
|
|
|
hypothesis_gen: str = "rdagent.scenarios.qlib.proposal.factor_proposal.QlibFactorHypothesisGen"
|
|
"""Hypothesis generation class"""
|
|
|
|
hypothesis2experiment: str = "rdagent.scenarios.qlib.proposal.factor_proposal.QlibFactorHypothesis2Experiment"
|
|
"""Hypothesis to experiment class"""
|
|
|
|
coder: str = "rdagent.scenarios.qlib.developer.factor_coder.QlibFactorCoSTEER"
|
|
"""Coder class"""
|
|
|
|
runner: str = "rdagent.scenarios.qlib.developer.factor_runner.QlibFactorRunner"
|
|
"""Runner class"""
|
|
|
|
summarizer: str = "rdagent.scenarios.qlib.developer.feedback.QlibFactorHypothesisExperiment2Feedback"
|
|
"""Summarizer class"""
|
|
|
|
evolving_n: int = 10
|
|
"""Number of evolutions"""
|
|
|
|
|
|
class FactorFromReportPropSetting(FactorBasePropSetting):
|
|
# 1) override the scen attribute
|
|
scen: str = "rdagent.scenarios.qlib.experiment.factor_from_report_experiment.QlibFactorFromReportScenario"
|
|
"""Scenario class for Qlib Factor from Report"""
|
|
|
|
# 2) sub task specific:
|
|
report_result_json_file_path: str = "git_ignore_folder/report_list.json"
|
|
"""Path to the JSON file listing research reports for factor extraction"""
|
|
|
|
max_factors_per_exp: int = 10000
|
|
"""Maximum number of factors implemented per experiment"""
|
|
|
|
is_report_limit_enabled: bool = False
|
|
"""Limits report processing count if True; processes all if False"""
|
|
|
|
|
|
FACTOR_PROP_SETTING = FactorBasePropSetting()
|
|
FACTOR_FROM_REPORT_PROP_SETTING = FactorFromReportPropSetting()
|
|
MODEL_PROP_SETTING = ModelBasePropSetting()
|