1 line
42 KiB
JSON
1 line
42 KiB
JSON
{"nodes": [{"id": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "label": "risk_control.py", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L1"}, {"id": "factors_strategy_risk_control_20260327_risk_control_stockinfo", "label": "StockInfo", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L18"}, {"id": "factors_strategy_risk_control_20260327_risk_control_portfolioinfo", "label": "PortfolioInfo", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L31"}, {"id": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol", "label": "SingleStockRiskControl", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L38"}, {"id": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_init", "label": ".__init__()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L41"}, {"id": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_check_stop_loss", "label": ".check_stop_loss()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L48"}, {"id": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_get_drawdown", "label": ".get_drawdown()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L60"}, {"id": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol", "label": "PortfolioDrawdownRiskControl", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L67"}, {"id": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_init", "label": ".__init__()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L75"}, {"id": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_calculate_total_drawdown", "label": ".calculate_total_drawdown()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L88"}, {"id": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "label": ".get_target_position_ratio()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L94"}, {"id": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_need_rebalance", "label": ".need_rebalance()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L109"}, {"id": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter", "label": "BlackSwanFilter", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L124"}, {"id": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_init", "label": ".__init__()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L127"}, {"id": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_stock", "label": ".filter_stock()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L134"}, {"id": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_universe", "label": ".filter_universe()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L159"}, {"id": "factors_strategy_risk_control_20260327_risk_control_riskcontroller", "label": "RiskController", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L169"}, {"id": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_init", "label": ".__init__()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L172"}, {"id": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_pre_trade_check", "label": ".pre_trade_check()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L177"}, {"id": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "label": ".post_trade_check()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L196"}, {"id": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "label": ".get_risk_report()", "file_type": "code", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L224"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_1", "label": "\u98ce\u63a7\u6a21\u5757 - \u91cf\u5316\u7b56\u7565\u98ce\u63a7\u7cfb\u7edf \u529f\u80fd\uff1a 1. \u5355\u796815%\u6b62\u635f\u89c4\u5219 2. \u6574\u4f53\u56de\u64a4\u5206\u7ea7\u98ce\u63a7\uff0810%/20%/25% \u5206\u7ea7\u964d\u4ed3\uff09 3. \u9ed1\u5929\u9e45\u8fc7\u6ee4\uff08ST\u3001\u8dcc\u505c\u3001\u8d22\u52a1", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L1"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_42", "label": "\u521d\u59cb\u5316 :param stop_loss_pct: \u6b62\u635f\u6bd4\u4f8b\uff0c\u9ed8\u8ba415%", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L42"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_49", "label": "\u68c0\u67e5\u662f\u5426\u89e6\u53d1\u6b62\u635f :return: True = \u9700\u8981\u6b62\u635f\uff0cFalse = \u6301\u6709", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L49"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_68", "label": "\u6574\u4f53\u56de\u64a4\u5206\u7ea7\u98ce\u63a7 10%\u56de\u64a4 \u2192 \u964d\u4ed350% 20%\u56de\u64a4 \u2192 \u964d\u4ed375% 25%\u56de\u64a4 \u2192 \u6e05\u4ed3\u4f11\u606f", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L68"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_78", "label": "\u521d\u59cb\u5316\u5206\u7ea7\u98ce\u63a7 :param drawdown_levels: \u56de\u64a4\u9608\u503c :param reduce_ratios: \u5bf9\u5e94\u964d\u4ed3\u6bd4", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L78"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_95", "label": "\u83b7\u53d6\u76ee\u6807\u4ed3\u4f4d\u6bd4\u4f8b :return: \u76ee\u6807\u4ed3\u4f4d\u5360\u5f53\u524d\u603b\u8d44\u91d1\u7684\u6bd4\u4f8b", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L95"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_110", "label": "\u68c0\u67e5\u662f\u5426\u9700\u8981\u964d\u4ed3 :return: (\u662f\u5426\u9700\u8981\u8c03\u6574, \u76ee\u6807\u4ed3\u4f4d\u6bd4\u4f8b)", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L110"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_125", "label": "\u9ed1\u5929\u9e45\u8fc7\u6ee4\uff1a\u6392\u9664ST\u3001\u8dcc\u505c\u3001\u8d22\u52a1\u9020\u5047\u3001\u4f4e\u6d41\u52a8\u6027\u7968", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L125"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_128", "label": "\u521d\u59cb\u5316\u8fc7\u6ee4\u5668 :param min_daily_volume: \u6700\u5c0f\u65e5\u6210\u4ea4\u989d\uff08\u4ebf\uff09\uff0c\u4f4e\u4e8e\u6b64\u6392\u9664", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L128"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_135", "label": "\u8fc7\u6ee4\u4e2a\u80a1 :return: (\u662f\u5426\u901a\u8fc7\u8fc7\u6ee4, \u4e0d\u901a\u8fc7\u539f\u56e0) True = \u53ef\u4ee5\u4e70\u5165\uff0cFalse = \u6392\u9664", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L135"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_178", "label": "\u4ea4\u6613\u524d\u68c0\u67e5\uff1a\u5f00\u4ed3\u524d\u8c03\u7528 :return: (\u662f\u5426\u5141\u8bb8\u5f00\u4ed3, \u539f\u56e0)", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L178"}, {"id": "factors_strategy_risk_control_20260327_risk_control_rationale_197", "label": "\u6536\u76d8\u540e\u68c0\u67e5\uff1a\u6b62\u635f\u68c0\u67e5 + \u964d\u4ed3\u68c0\u67e5 :return: \u98ce\u63a7\u7ed3\u679c\uff0c\u5305\u542b\u9700\u8981\u6b62\u635f\u7684\u7968\u548c\u9700\u8981\u964d\u4ed3\u7684\u4fe1\u606f", "file_type": "rationale", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L197"}], "edges": [{"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "dataclasses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L12", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L13", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "pandas", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L14", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "factors_strategy_risk_control_20260327_risk_control_stockinfo", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L18", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "factors_strategy_risk_control_20260327_risk_control_portfolioinfo", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L31", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L38", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L41", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_check_stop_loss", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L48", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_get_drawdown", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L60", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L67", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L75", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_calculate_total_drawdown", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L88", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L94", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_need_rebalance", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L109", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L124", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L127", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_stock", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L134", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_universe", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L159", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "factors_strategy_risk_control_20260327_risk_control_riskcontroller", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L169", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller", "target": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L172", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller", "target": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_pre_trade_check", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L177", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller", "target": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L196", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller", "target": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "relation": "method", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L224", "weight": 1.0}, {"source": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "target": "pprint", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L256", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_calculate_total_drawdown", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L99", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_need_rebalance", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L114", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_universe", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_stock", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L163", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_init", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L173", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_init", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L174", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_init", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L175", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_pre_trade_check", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_stock", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L183", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_pre_trade_check", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L188", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_check_stop_loss", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L204", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_get_drawdown", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L208", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_need_rebalance", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L212", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_calculate_total_drawdown", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L213", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "target": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L226", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_1", "target": "users_chufeng_openclaw_sanguo_projects_sanguo_quant_live_guanyu_risk_research_factors_strategy_risk_control_20260327_risk_control_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L1", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_42", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_init", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L42", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_49", "target": "factors_strategy_risk_control_20260327_risk_control_singlestockriskcontrol_check_stop_loss", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L49", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_68", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L68", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_78", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_init", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L78", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_95", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L95", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_110", "target": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_need_rebalance", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L110", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_125", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L125", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_128", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_init", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L128", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_135", "target": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_stock", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L135", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_178", "target": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_pre_trade_check", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L178", "weight": 1.0}, {"source": "factors_strategy_risk_control_20260327_risk_control_rationale_197", "target": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L197", "weight": 1.0}], "raw_calls": [{"caller_nid": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "callee": "reversed", "is_member_call": false, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L102"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "callee": "list", "is_member_call": false, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L102"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_get_target_position_ratio", "callee": "zip", "is_member_call": false, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L102"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_need_rebalance", "callee": "sum", "is_member_call": false, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L115"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_portfoliodrawdownriskcontrol_need_rebalance", "callee": "values", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L115"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_blackswanfilter_filter_universe", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L165"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_pre_trade_check", "callee": "sum", "is_member_call": false, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L189"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_pre_trade_check", "callee": "values", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L189"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L205"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "callee": "len", "is_member_call": false, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L216"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "callee": "sum", "is_member_call": false, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L221"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_post_trade_check", "callee": "values", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L221"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L229"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L230"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L231"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L232"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L233"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L234"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L235"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L238"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L240"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L242"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L244"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L246"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L248"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "append", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L250"}, {"caller_nid": "factors_strategy_risk_control_20260327_risk_control_riskcontroller_get_risk_report", "callee": "join", "is_member_call": true, "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_quant_live/guanyu-risk/research/factors-strategy-risk-control-20260327/risk_control.py", "source_location": "L251"}]} |