quant_test / scripts /generate_report.py
lucky-loster's picture
Upload folder using huggingface_hub
590a501 verified
Raw
History Blame Contribute Delete
1.39 kB
#!/usr/bin/env python3
"""Generate research reports from GP outputs and qlib experiment artifacts."""
import argparse
import sys
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
if str(ROOT) not in sys.path:
sys.path.insert(0, str(ROOT))
from reports.analysis import generate_experiment_report, generate_gp_only_report
def main():
parser = argparse.ArgumentParser(description="Generate IC/backtest/GP analysis charts")
parser.add_argument("--run-id", type=str, default=None, help="GP mining run id")
parser.add_argument("--recorder-id", type=str, default=None, help="qlib Recorder id from mlruns")
parser.add_argument(
"--experiment-name",
type=str,
default=None,
help="qlib experiment name (e.g. ml_alpha_baseline, ml_alpha_gp)",
)
parser.add_argument("--output-dir", type=str, default=None, help="Custom report output directory")
args = parser.parse_args()
out_dir = Path(args.output_dir) if args.output_dir else None
if args.recorder_id and args.experiment_name:
generate_experiment_report(
recorder_id=args.recorder_id,
experiment_name=args.experiment_name,
output_dir=out_dir,
run_id=args.run_id,
)
else:
generate_gp_only_report(run_id=args.run_id, output_dir=out_dir)
if __name__ == "__main__":
main()