股票AI操盘手:从学习、模拟到实盘,一站式平台。包含股票知识、策略实例、大模型、因子挖掘、传统策略、机器学习、深度学习、强化学习、图网络、高频交易、C++部署和聚宽实例代码等,可以方便学习、模拟及实盘交易
This report presents the forensic synthetic code analysis of charliedream1/ai_quant_trade, a Jupyter Notebook project with 6,123 GitHub stars. SynthScan v2.0 examined 95,371 lines of code across 794 source files, recording 904 pattern matches distributed across 13 syntactic categories. The overall adjusted score of 15.6 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 904 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | egs_data/宏观经济/fred/fred_demo.py | 34 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/宏观经济/fred/fred_demo.py | 36 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/宏观经济/fred/fred_demo.py | 90 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/宏观经济/fred/fred_demo.py | 92 | # ============================================================ | COMMENT |
| MEDIUM⚡ | egs_data/宏观经济/fred/fred_demo.py | 119 | # ============================================================ | COMMENT |
| MEDIUM⚡ | egs_data/宏观经济/fred/fred_demo.py | 121 | # ============================================================ | COMMENT |
| MEDIUM⚡ | egs_data/股票/yfinance/yfinance_data.py | 55 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/yfinance/yfinance_data.py | 57 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/yfinance/yfinance_data.py | 117 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/yfinance/yfinance_data.py | 119 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/yfinance/yfinance_data.py | 286 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/yfinance/yfinance_data.py | 288 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/baostock/get_stock_data.py | 53 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/baostock/get_stock_data.py | 55 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/baostock/get_stock_data.py | 117 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/baostock/get_stock_data.py | 119 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/baostock/get_stock_data.py | 154 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/baostock/get_stock_data.py | 156 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/baostock/get_stock_data.py | 179 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/baostock/get_stock_data.py | 181 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/stooq/stooq_demo.py | 167 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/stooq/stooq_demo.py | 169 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/pytdx/pytdx_demo.py | 45 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/pytdx/pytdx_demo.py | 47 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/pytdx/pytdx_demo.py | 258 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/pytdx/pytdx_demo.py | 260 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/tushare/tushare_demo.py | 48 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/tushare/tushare_demo.py | 50 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/tushare/tushare_demo.py | 148 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | egs_data/股票/tushare/tushare_demo.py | 151 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/tushare/tushare_demo.py | 231 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/tushare/tushare_demo.py | 233 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/akshare/akshare_demo.py | 142 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | egs_data/股票/akshare/akshare_demo.py | 144 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 47 | # =========================================================================== | COMMENT |
| MEDIUM⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 49 | # =========================================================================== | COMMENT |
| MEDIUM⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 95 | # =========================================================================== | COMMENT |
| MEDIUM⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 97 | # =========================================================================== | COMMENT |
| MEDIUM⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 404 | # =========================================================================== | COMMENT |
| MEDIUM⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 406 | # =========================================================================== | COMMENT |
| MEDIUM | …data/股票/data_loader_framework/data_loader_base_demo.py | 151 | # =========================================================================== | COMMENT |
| MEDIUM | …data/股票/data_loader_framework/data_loader_base_demo.py | 153 | # =========================================================================== | COMMENT |
| MEDIUM | …data/股票/data_loader_framework/data_loader_base_demo.py | 198 | # =========================================================================== | COMMENT |
| MEDIUM | …data/股票/data_loader_framework/data_loader_base_demo.py | 200 | # =========================================================================== | COMMENT |
| MEDIUM | …data/股票/data_loader_framework/data_loader_base_demo.py | 254 | # =========================================================================== | COMMENT |
| MEDIUM | …data/股票/data_loader_framework/data_loader_base_demo.py | 256 | # =========================================================================== | COMMENT |
| MEDIUM | egs_data/新闻/news_api/newsapi_demo.py | 34 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/news_api/newsapi_demo.py | 36 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/news_api/newsapi_demo.py | 113 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/news_api/newsapi_demo.py | 115 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/finnhub/finnhub_demo.py | 34 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/finnhub/finnhub_demo.py | 36 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/finnhub/finnhub_demo.py | 89 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/finnhub/finnhub_demo.py | 91 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/xueqiu/xueqiu_demo.py | 35 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/xueqiu/xueqiu_demo.py | 37 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/xueqiu/xueqiu_demo.py | 206 | # ============================================================ | COMMENT |
| MEDIUM | egs_data/新闻/xueqiu/xueqiu_demo.py | 208 | # ============================================================ | COMMENT |
| MEDIUM⚡ | egs_aide/看盘神器/v2/video_generator/generate_video.py | 189 | # ============================================================ | COMMENT |
| MEDIUM⚡ | egs_aide/看盘神器/v2/video_generator/generate_video.py | 191 | # ============================================================ | COMMENT |
| 126 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/log/log_util.py | 66 | except Exception as e: | CODE |
| LOW | egs_data/期货/futures/futures_demo.py | 82 | except Exception as e: | CODE |
| LOW⚡ | egs_data/宏观经济/fred/fred_demo.py | 127 | except Exception as e: | CODE |
| LOW | egs_data/宏观经济/world_bank/world_bank_demo.py | 89 | except Exception as e: | CODE |
| LOW | egs_data/基金/fund/fund_demo.py | 76 | except Exception as e: | CODE |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 136 | except Exception as e: | CODE |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 159 | except Exception as e: | CODE |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 180 | except Exception as e: | CODE |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 210 | except Exception as e: | CODE |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 234 | except Exception as e: | CODE |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 260 | except Exception as e: | CODE |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 322 | except Exception as e: | CODE |
| LOW | egs_data/股票/qlib/qlib_demo.py | 91 | except Exception as e: | CODE |
| LOW⚡ | egs_data/股票/baostock/get_stock_data.py | 150 | except Exception as e: | CODE |
| LOW | egs_data/股票/baostock/get_stock_data.py | 211 | except Exception as e: | CODE |
| LOW | egs_data/股票/baostock/get_stock_data.py | 246 | except Exception as e: | CODE |
| LOW | egs_data/股票/baostock/get_stock_data.py | 275 | except Exception as e: | CODE |
| LOW | egs_data/股票/baostock/get_stock_data.py | 298 | except Exception as e: | CODE |
| LOW | egs_data/股票/baostock/get_stock_data.py | 320 | except Exception as e: | CODE |
| LOW | egs_data/股票/stooq/stooq_demo.py | 116 | except Exception as e: | CODE |
| LOW | egs_data/股票/stooq/stooq_demo.py | 144 | except Exception: | CODE |
| LOW⚡ | egs_data/股票/stooq/stooq_demo.py | 163 | except Exception as e: | CODE |
| LOW | egs_data/股票/stooq/stooq_demo.py | 196 | except Exception: | CODE |
| LOW | egs_data/股票/stooq/stooq_demo.py | 272 | except Exception as e: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 41 | except Exception as e: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 56 | except Exception as e: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 72 | except Exception as e2: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 86 | except Exception as e: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 97 | except Exception as e2: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 109 | except Exception as e: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 123 | except Exception as e: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 140 | except Exception as e2: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 154 | except Exception as e: | CODE |
| LOW | egs_data/股票/efinance/efinance_demo.py | 166 | except Exception as e: | CODE |
| LOW | egs_data/股票/pytdx/pytdx_demo.py | 122 | except Exception as e: | CODE |
| LOW | egs_data/股票/pytdx/pytdx_demo.py | 135 | except Exception: | CODE |
| LOW | egs_data/股票/tushare/tushare_demo.py | 100 | except Exception as e: | CODE |
| LOW⚡ | egs_data/股票/tushare/tushare_demo.py | 227 | except Exception as e: | CODE |
| LOW | egs_data/股票/tushare/tushare_demo.py | 265 | except Exception as e: | CODE |
| LOW⚡ | egs_data/股票/akshare/akshare_demo.py | 138 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 41 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 60 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 72 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 85 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 98 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 111 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 124 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 164 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 187 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 219 | except Exception: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 221 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 247 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 295 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 304 | except Exception as e: | CODE |
| LOW | egs_data/股票/akshare/akshare_demo.py | 329 | except Exception as e: | CODE |
| MEDIUM | …data/股票/data_loader_framework/data_loader_base_demo.py | 266 | def is_available(self) -> bool: | CODE |
| LOW⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 104 | except Exception as exc: | CODE |
| LOW⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 399 | except Exception as exc: | CODE |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 243 | except Exception as exc: | CODE |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 282 | except Exception as exc: | CODE |
| 172 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | unit_test/test_momentum_rotation.py | 83 | def test_tushare_stock_list_skips_stock_basic_call(self): | CODE |
| LOW | unit_test/test_momentum_rotation.py | 101 | def test_normalize_tushare_numeric_trade_dates(self): | CODE |
| LOW | unit_test/test_momentum_rotation.py | 117 | def test_monthly_rebalance_uses_previous_day_scores(self): | CODE |
| LOW | unit_test/test_momentum_rotation.py | 145 | def test_top_n_positions_and_exposure_are_capped(self): | CODE |
| LOW | unit_test/test_momentum_rotation.py | 175 | def test_trailing_stop_exits_without_capping_winners(self): | CODE |
| LOW | unit_test/test_momentum_rotation.py | 205 | def test_transaction_costs_reduce_final_equity(self): | CODE |
| LOW | unit_test/test_momentum_rotation.py | 240 | def test_csv_fixture_smoke_outputs_reports_without_tushare_token(self): | CODE |
| LOW | unit_test/test_momentum_rotation.py | 259 | def test_cli_runs_from_strategy_directory(self): | CODE |
| LOW | tools/file_io/load_csv.py | 25 | def get_self_select_stock_lst(file_path: str) -> list: | CODE |
| LOW | docs/superpowers/plans/2026-06-20-excel-monitor-v2.md | 121 | def test_custom_watch_columns(): | CODE |
| LOW | docs/superpowers/plans/2026-06-20-excel-monitor-v2.md | 219 | def test_clean_stock_code_removes_postfix(): | CODE |
| LOW | docs/superpowers/plans/2026-06-20-excel-monitor-v2.md | 598 | def test_market_overview_refresh_with_mock(): | CODE |
| LOW | docs/superpowers/plans/2026-06-20-excel-monitor-v2.md | 710 | def test_detailed_quotes_refresh_with_mock(): | CODE |
| LOW | docs/superpowers/plans/2026-06-20-excel-monitor-v2.md | 834 | def test_news_sheet_refresh_with_mock(): | CODE |
| LOW | docs/superpowers/plans/2026-06-20-excel-monitor-v2.md | 934 | def test_custom_watch_refresh_with_mock(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/video_generator/generate_video.py | 710 | def render_sentiment_viz_frame(scene: dict, progress: float) -> Image.Image: | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/video_generator/generate_video.py | 838 | def render_stock_pool_demo_frame(scene: dict, progress: float) -> Image.Image: | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/video_generator/generate_video.py | 940 | def render_excel_showcase_frame(scene: dict, progress: float) -> Image.Image: | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/video_generator/generate_video.py | 1094 | def render_fallback_chain_frame(scene: dict, progress: float) -> Image.Image: | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 22 | def test_normalize_codes_removes_postfix(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 29 | def test_normalize_codes_removes_market_prefix(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 36 | def test_normalize_codes_handles_empty(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 42 | def test_detect_market_prefix_sh(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 49 | def test_detect_market_prefix_sz(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 56 | def test_detect_market_prefix_bj(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 85 | def test_backup_sources_initialization(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 93 | def test_backup_sources_lazy_loading_akshare(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 109 | def test_akshare_stock_realtime_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 140 | def test_akshare_stock_realtime_empty_codes(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 147 | def test_akshare_stock_realtime_failure(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 159 | def test_akshare_news_cls_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 198 | def test_eastmoney_stock_realtime_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 224 | def test_eastmoney_money_flow_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 248 | def test_eastmoney_guba_hot_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 269 | def test_tencent_stock_realtime_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 296 | def test_netease_kline_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 325 | def test_efinance_stock_realtime_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 354 | def test_backup_source_disabled_when_lib_missing(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 365 | def test_akshare_north_money_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 383 | def test_akshare_weibo_sentiment_with_mock(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_backup_sources.py | 400 | def test_akshare_news_sentiment_with_mock(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 24 | def test_pinyin_first_letters_basic(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 33 | def test_pinyin_first_letters_unknown_char(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 53 | def test_fetch_from_akshare_success(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 125 | def test_save_and_load_cache_fresh(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 167 | def test_load_cache_not_exist(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 174 | def test_load_cache_corrupted(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 184 | def test_load_or_fetch_uses_cache(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 71 | def test_fetch_from_akshare_failure(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 81 | def test_fetch_from_efinance_success(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 95 | def test_fetch_fallback_chain(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 204 | def test_load_or_fetch_refreshes_when_expired(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 229 | def test_load_or_fetch_falls_back_to_expired_cache(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 265 | def test_search_by_code_prefix(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 274 | def test_search_by_name_contains(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 290 | def test_search_empty_keyword_returns_head(): | CODE |
| LOW | egs_aide/看盘神器/v2/tests/test_stock_pool.py | 311 | def test_search_case_insensitive(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool_sheet.py | 46 | def test_init_loads_pool_and_displays(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool_sheet.py | 105 | def test_refresh_search_trigger_filters(): | CODE |
| LOW⚡ | egs_aide/看盘神器/v2/tests/test_stock_pool_sheet.py | 180 | def test_setup_dropdown_calls_validation(): | CODE |
| 107 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/file_io/load_csv.py | 21 | CODE | |
| LOW | tools/file_io/fold_excel_rows.py | 37 | CODE | |
| LOW | tools/plots/trades_on_k_line.py | 21 | CODE | |
| LOW | tools/plots/trades_on_k_line.py | 23 | CODE | |
| LOW | tools/plots/trades_on_k_line.py | 32 | CODE | |
| LOW | …ain/a01_unsloth_stock_forcaster/a04_train/train_sft.py | 25 | CODE | |
| LOW | …th_stock_forcaster/a05_test/batch_test_transformers.py | 31 | CODE | |
| LOW | egs_data/股票/yfinance/pandas_datareader_data.py | 23 | CODE | |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 37 | CODE | |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 38 | CODE | |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 38 | CODE | |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 38 | CODE | |
| LOW | egs_data/股票/baostock/get_stock_data.py | 34 | CODE | |
| LOW | egs_data/股票/stooq/stooq_demo.py | 34 | CODE | |
| LOW | egs_data/股票/efinance/efinance_demo.py | 38 | CODE | |
| LOW | egs_data/股票/wind/basic_data/save_index_data.py | 25 | CODE | |
| LOW | egs_data/股票/wind/basic_data/save_index_data.py | 26 | CODE | |
| LOW | egs_data/股票/wind/basic_data/save_index_data.py | 33 | CODE | |
| LOW | egs_data/股票/wind/basic_data/save_index_data.py | 33 | CODE | |
| LOW | egs_data/股票/wind/basic_data/save_index_data.py | 34 | CODE | |
| LOW | egs_data/股票/wind/basic_data/save_index_data.py | 35 | CODE | |
| LOW | egs_data/股票/wind/basic_data/save_index_data.py | 36 | CODE | |
| LOW | egs_data/股票/wind/basic_data/save_market_data.py | 31 | CODE | |
| LOW | egs_data/股票/pytdx/pytdx_demo.py | 34 | CODE | |
| LOW | egs_data/股票/pytdx/pytdx_demo.py | 34 | CODE | |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 36 | CODE | |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 268 | CODE | |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 319 | CODE | |
| LOW | egs_data/新闻/gdelt/gdelt_demo.py | 28 | CODE | |
| LOW | egs_data/新闻/xueqiu/xueqiu_demo.py | 212 | CODE | |
| LOW | egs_data/电子币/cryptocompare/cryptocompare_demo.py | 33 | CODE | |
| LOW | egs_aide/看盘神器/v1/main.py | 24 | CODE | |
| LOW | egs_aide/看盘神器/v2/main.py | 42 | CODE | |
| LOW | egs_aide/看盘神器/v2/main.py | 64 | CODE | |
| LOW | egs_aide/看盘神器/v2/video_generator/generate_video.py | 17 | CODE | |
| LOW | egs_aide/看盘神器/v2/video_generator/generate_gif.py | 14 | CODE | |
| LOW | egs_aide/看盘神器/v2/tests/test_config.py | 6 | CODE | |
| LOW | egs_aide/看盘神器/v2/tests/test_e2e.py | 31 | CODE | |
| LOW | egs_aide/看盘神器/v2/tests/test_e2e.py | 31 | CODE | |
| LOW | egs_aide/看盘神器/v2/tests/test_e2e.py | 433 | CODE | |
| LOW | egs_aide/看盘神器/v2/tests/test_e2e.py | 434 | CODE | |
| LOW | egs_aide/看盘神器/v2/tests/test_e2e.py | 435 | CODE | |
| LOW | egs_aide/看盘神器/v2/tests/test_e2e.py | 441 | CODE | |
| LOW | …de/看盘神器/v2/src/excel_monitor/sheets/detailed_quotes.py | 3 | CODE | |
| LOW | …/看盘神器/v2/src/excel_monitor/core/config_sheet_reader.py | 16 | CODE | |
| LOW | …/看盘神器/v2/src/excel_monitor/core/config_sheet_reader.py | 19 | CODE | |
| LOW | …s_aide/看盘神器/v2/src/excel_monitor/core/alert_checker.py | 10 | CODE | |
| LOW | …_aide/看盘神器/v2/src/excel_monitor/core/backup_sources.py | 17 | CODE | |
| LOW | egs_aide/看盘神器/v2/src/excel_monitor/core/stock_pool.py | 21 | CODE | |
| LOW | egs_aide/看盘神器/v2/src/excel_monitor/utils/kline_chart.py | 3 | CODE | |
| LOW | egs_trade/paper_trade/wind/check_account.py | 28 | CODE | |
| LOW | egs_trade/paper_trade/wind/double_ma.py | 24 | CODE | |
| LOW | egs_trade/paper_trade/wind/double_ma.py | 35 | CODE | |
| LOW | egs_trade/paper_trade/wind/double_ma.py | 37 | CODE | |
| LOW | egs_trade/paper_trade/wind/double_ma.py | 37 | CODE | |
| LOW | quant_brain/data_io/baostock/get_stock_data.py | 2 | CODE | |
| LOW | quant_brain/data_io/baostock/get_stock_data.py | 3 | CODE | |
| LOW | quant_brain/data_io/wind/account_login.py | 24 | CODE | |
| LOW | quant_brain/data_io/wind/dump_data.py | 34 | CODE | |
| LOW | quant_brain/data_io/wind/dump_data.py | 35 | CODE | |
| 56 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/__init__.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/parse_options.sh | 1 | #!/bin/bash | COMMENT |
| LOW | tools/file_io/load_csv.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/file_io/fold_excel_rows.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/file_io/__init__.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/file_io/find_files.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/file_io/make_nd_clean_dirs.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/date_time/chinese_calendar_check.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/date_time/query_time.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/date_time/__init__.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/date_time/date_format_check.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/plots/__init__.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/plots/trades_on_k_line.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | tools/plots/trades_on_k_line.py | 61 | # adjust to a proper value | COMMENT |
| LOW | tools/plots/trades_on_k_line.py | 121 | # ma10_df = talib.MA(df_stock['close'], timeperiod=10) | COMMENT |
| LOW | …_hot_topic_report/v1_proto_internet/generate_report.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | …ain/a01_unsloth_stock_forcaster/a04_train/train_sft.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | …ain/a01_unsloth_stock_forcaster/a04_train/train_sft.py | 141 | COMMENT | |
| LOW | …ain/a01_unsloth_stock_forcaster/a04_train/train_sft.py | 161 | # Save to q4_k_m GGUF | COMMENT |
| LOW | …stock_forcaster/a01_download_mdl/hf_mirror_download.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | …tock_forcaster/a01_download_mdl/modelscope_download.sh | 1 | #modelscope download --model 'unsloth/Qwen3-0.6B-unsloth-bnb-4bit' \ | COMMENT |
| LOW | …ck_forcaster/a03_data_process/process_fin_r1_reason.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | …rcaster/a03_data_process/process_fin_gpt_forecaster.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | …th_stock_forcaster/a05_test/batch_test_transformers.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | …nsloth_stock_forcaster/a05_test/simple_test_unsloth.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | …nsloth_stock_forcaster/a05_test/simple_test_unsloth.py | 61 | max_new_tokens = 2256, # Increase for longer outputs! | COMMENT |
| LOW | …nsloth_stock_forcaster/a05_test/simple_test_unsloth.py | 81 | # # ret_ids 是 Tensor,batch_size=1 时取第一个序列并解码 | COMMENT |
| LOW | …h_stock_forcaster/a05_test/simple_test_transformers.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/期货/futures/futures_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/宏观经济/fred/fred_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/宏观经济/world_bank/world_bank_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/基金/fund/fund_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/yfinance/pandas_datareader_data.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/qlib/qlib_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/baostock/get_stock_data.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/stooq/stooq_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/efinance/efinance_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/wind/basic_data/save_index_data.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/wind/basic_data/save_market_data.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/wind/basic_data/save_market_data.py | 81 | # 涨跌 chg | COMMENT |
| LOW | egs_data/股票/pytdx/pytdx_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/tushare/tushare_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/eastmoney/eastmoney_news_guba.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/eastmoney/eastmoney_api.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/tencent/tencent_api.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/cninfo/cninfo_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/netease/netease_api.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/股票/akshare/akshare_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/新闻/news_api/newsapi_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/新闻/gdelt/gdelt_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/新闻/finnhub/finnhub_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/新闻/xueqiu/xueqiu_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/新闻/news/news_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/电子币/ccxt/ccxt_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_data/电子币/cryptocompare/cryptocompare_demo.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_aide/看盘神器/v1/main.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_trade/__init__.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | egs_trade/paper_trade/wind/check_account.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| 51 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …data/股票/data_loader_framework/data_loader_base_demo.py | 224 | 按回退链获取第一个可用的数据加载器实例 Args: market: 市场类型,如 "a_share", "us_equity" Returns: 可用的数据加载器实例 Raise | STRING |
| HIGH | …/vibe_trading_skills/harmonic/example_signal_engine.py | 251 | 使用 pyharmonics 库检测谐波形态。 Args: df: OHLCV DataFrame,需含 open/high/low/close/volume 列。 is_stock: 是否为股票标 | STRING |
| HIGH | …/vibe_trading_skills/harmonic/example_signal_engine.py | 429 | 从 OKX API 获取K线数据。 Args: inst_id: 交易对标识,如 "BTC-USDT"。 bar: K线周期,默认 "1D"。 limit: 获取数量,默认 300。 | STRING |
| HIGH | …vibe_trading_skills/social-media-intelligence/SKILL.md | 1220 | Unified entrypoint for collecting social-media data. Args: query: Query parameters including platform, keyw | STRING |
| HIGH | …/vibe_trading_skills/ichimoku/example_signal_engine.py | 135 | 从 OKX API 获取K线数据。 Args: inst_id: 交易对标识,如 "BTC-USDT"。 bar: K线周期,默认 "1D"。 limit: 获取数量,默认 300。 | STRING |
| HIGH | …/07_skill包/vibe_trading_skills/options-payoff/SKILL.md | 272 | Black-Scholes option pricing. Args: S: Current underlying price K: Strike price T: Time to | STRING |
| HIGH | …/07_skill包/vibe_trading_skills/options-payoff/SKILL.md | 372 | Solve implied volatility with Newton-Raphson. Args: market_price: Observed market price tol: Conver | STRING |
| HIGH | …be_trading_skills/candlestick/example_signal_engine.py | 536 | 从 OKX 获取K线数据。 Args: inst_id: 交易对,如 "BTC-USDT"。 bar: K线周期,默认 "1D"。 limit: 获取数量,默认 300。 | STRING |
| HIGH | …e_trading_skills/elliott-wave/example_signal_engine.py | 396 | 从 OKX API 获取 K 线数据。 Args: inst_id: 交易对标识,如 "BTC-USDT"。 bar: K 线周期,默认 "1D"。 limit: 获取数量,默认 3 | STRING |
| HIGH | …e_trading_skills/pair-trading/example_signal_engine.py | 47 | 根据价格比值 Z-score 生成配对交易信号。 Args: data_map: 恰好两个标的代码到 OHLCV DataFrame 的映射。 Returns: | STRING |
| HIGH | …07_skill包/vibe_trading_skills/credit-analysis/SKILL.md | 527 | 附息债券净现值定价。 Args: face: 面值,通常100 coupon_rate: 年票面利率(小数形式,如0.05表示5%) ytm: 年到期收益率(小数形式) | STRING |
| HIGH | …07_skill包/vibe_trading_skills/credit-analysis/SKILL.md | 554 | 给定市场价格反求YTM(数值解法)。 Args: price: 债券市场价格(脏价) face: 面值 coupon_rate: 年票面利率 n_periods: 剩 | STRING |
| HIGH | …07_skill包/vibe_trading_skills/credit-analysis/SKILL.md | 699 | 拟合收益率曲线并返回插值函数。 Args: maturities: 已知债券期限(年),如 [0.25, 0.5, 1, 2, 3, 5, 7, 10] yields: 对应YTM(小数),如 [0 | STRING |
| HIGH | …07_skill包/vibe_trading_skills/credit-analysis/SKILL.md | 820 | 信用利差时序分析(Z-Score标准化 + 历史分位数)。 Args: bond_yields: 信用债收益率时间序列(%,日频) risk_free_yields: 对应期限无风险利率(%,日频) | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …th_stock_forcaster/a05_test/batch_test_transformers.py | 119 | CODE | |
| LOW | egs_data/股票/yfinance/yfinance_data.py | 238 | CODE | |
| LOW | egs_data/股票/qlib/qlib_demo.py | 52 | CODE | |
| LOW | egs_data/股票/baostock/get_stock_data.py | 279 | CODE | |
| LOW | egs_data/股票/baostock/get_stock_data.py | 302 | CODE | |
| LOW | egs_data/股票/stooq/stooq_demo.py | 120 | CODE | |
| LOW | egs_data/股票/pytdx/pytdx_demo.py | 89 | CODE | |
| LOW | egs_data/股票/akshare/akshare_demo.py | 191 | CODE | |
| LOW | egs_data/股票/akshare/akshare_demo.py | 308 | CODE | |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 494 | CODE | |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 324 | CODE | |
| LOW | …data/股票/data_loader_framework/data_loader_base_demo.py | 373 | CODE | |
| LOW | egs_aide/看盘神器/v1/main.py | 34 | CODE | |
| LOW | egs_aide/看盘神器/v1/main.py | 103 | CODE | |
| LOW | egs_aide/看盘神器/v1/main.py | 133 | CODE | |
| LOW | egs_aide/看盘神器/v2/main.py | 101 | CODE | |
| LOW | egs_aide/看盘神器/v2/video_generator/generate_video.py | 428 | CODE | |
| LOW | egs_aide/看盘神器/v2/video_generator/generate_video.py | 1094 | CODE | |
| LOW | …_aide/看盘神器/v2/src/excel_monitor/sheets/custom_watch.py | 254 | CODE | |
| LOW | …_aide/看盘神器/v2/src/excel_monitor/core/backup_sources.py | 202 | CODE | |
| LOW | …_aide/看盘神器/v2/src/excel_monitor/core/backup_sources.py | 275 | CODE | |
| LOW | …_aide/看盘神器/v2/src/excel_monitor/core/backup_sources.py | 801 | CODE | |
| LOW | …_aide/看盘神器/v2/src/excel_monitor/core/backup_sources.py | 1016 | CODE | |
| LOW | egs_trade/paper_trade/wind/double_ma.py | 75 | CODE | |
| LOW | egs_trade/vanilla/momentum_rotation/strategy.py | 86 | CODE | |
| LOW | quant_brain/data_io/api_tushare_data.py | 121 | CODE | |
| LOW | quant_brain/data_io/api_tushare_data.py | 196 | CODE | |
| LOW | …/vibe_trading_skills/harmonic/example_signal_engine.py | 94 | CODE | |
| LOW | …/vibe_trading_skills/harmonic/example_signal_engine.py | 247 | CODE | |
| LOW | …/vibe_trading_skills/harmonic/example_signal_engine.py | 386 | CODE | |
| LOW | …s/ashare-pre-st-filter/scripts/fetch_sina_penalties.py | 244 | CODE | |
| LOW | …s/ashare-pre-st-filter/scripts/fetch_sina_penalties.py | 374 | CODE | |
| LOW | …s/ashare-pre-st-filter/scripts/fetch_sina_penalties.py | 393 | CODE | |
| LOW | …ibe_trading_skills/vnpy-export/scripts/cta_template.py | 83 | CODE | |
| LOW | …e_trading_skills/elliott-wave/example_signal_engine.py | 53 | CODE | |
| LOW | …e_trading_skills/elliott-wave/example_signal_engine.py | 173 | CODE | |
| LOW | …e_trading_skills/elliott-wave/example_signal_engine.py | 270 | CODE | |
| LOW | …e_trading_skills/elliott-wave/example_signal_engine.py | 355 | CODE | |
| LOW | …e_trading_skills/multi-factor/example_signal_engine.py | 94 | CODE | |
| LOW | …ll/broker-research-analyst/scripts/report_validator.py | 248 | CODE | |
| LOW | …ll/broker-research-analyst/scripts/report_validator.py | 366 | CODE | |
| LOW | egs_skill/broker-research-analyst/scripts/pdf_parser.py | 286 | CODE | |
| LOW | …ill/broker-research-analyst/scripts/generate_report.py | 154 | CODE | |
| LOW | …skill/broker-research-analyst/scripts/report_router.py | 39 | CODE | |
| LOW | …skill/broker-research-analyst/scripts/report_router.py | 239 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …包/vibe_trading_skills/performance-attribution/SKILL.md | 184 | ### Step 1: Aggregate Analysis | COMMENT |
| LOW⚡ | …包/vibe_trading_skills/performance-attribution/SKILL.md | 192 | ### Step 2: Attribution Decomposition | COMMENT |
| LOW⚡ | …包/vibe_trading_skills/performance-attribution/SKILL.md | 200 | ### Step 3: Style Analysis | COMMENT |
| LOW⚡ | …包/vibe_trading_skills/performance-attribution/SKILL.md | 208 | ### Step 4: Conclusions and Recommendations | COMMENT |
| LOW | …07_skill包/vibe_trading_skills/valuation-model/SKILL.md | 27 | #### Step 1: Forecast free cash flow (usually 5 years) | COMMENT |
| LOW | …07_skill包/vibe_trading_skills/valuation-model/SKILL.md | 44 | #### Step 2: Calculate WACC | COMMENT |
| LOW | …07_skill包/vibe_trading_skills/valuation-model/SKILL.md | 68 | #### Step 3: Terminal Value | COMMENT |
| LOW | …07_skill包/vibe_trading_skills/valuation-model/SKILL.md | 78 | #### Step 4: Sensitivity Analysis | COMMENT |
| LOW | …/07_skill包/vibe_trading_skills/macro-analysis/SKILL.md | 113 | ### Step 1: Data Collection and Current-State Description | COMMENT |
| LOW | …/07_skill包/vibe_trading_skills/macro-analysis/SKILL.md | 122 | ### Step 2: Cycle Positioning | COMMENT |
| LOW | …/07_skill包/vibe_trading_skills/macro-analysis/SKILL.md | 133 | ### Step 3: Policy Impact Assessment | COMMENT |
| LOW | …/07_skill包/vibe_trading_skills/macro-analysis/SKILL.md | 142 | ### Step 4: Asset Allocation Tilt | COMMENT |
| LOW⚡ | …_skills/cross-market-strategy/example_signal_engine.py | 36 | # Step 1: raw signals per market | COMMENT |
| LOW⚡ | …_skills/cross-market-strategy/example_signal_engine.py | 43 | # Step 2: volatility-adjusted weights | COMMENT |
| LOW | …ill包/vibe_trading_skills/correlation-analysis/SKILL.md | 350 | # Step 1: estimate the cointegrating vector with OLS. | COMMENT |
| LOW | …ill包/vibe_trading_skills/correlation-analysis/SKILL.md | 357 | # Step 2: test residual stationarity with ADF. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ibe_trading_skills/volatility/example_signal_engine.py | 0 | 从 okx api 获取 k 线数据。 args: inst_id: 交易对标识,如 "btc-usdt"。 bar: k 线周期。 limit: 获取根数。 returns: ohlcv dataframe。 | STRING |
| HIGH | …e_trading_skills/pair-trading/example_signal_engine.py | 0 | 从 okx api 获取 k 线数据。 args: inst_id: 交易对标识,如 "btc-usdt"。 bar: k 线周期。 limit: 获取根数。 returns: ohlcv dataframe。 | STRING |
| HIGH | …e_trading_skills/multi-factor/example_signal_engine.py | 0 | 从 okx api 获取 k 线数据。 args: inst_id: 交易对标识,如 "btc-usdt"。 bar: k 线周期。 limit: 获取根数。 returns: ohlcv dataframe。 | STRING |
| HIGH | …/vibe_trading_skills/seasonal/example_signal_engine.py | 0 | 从 okx api 获取 k 线数据。 args: inst_id: 交易对标识,如 "btc-usdt"。 bar: k 线周期。 limit: 获取根数。 returns: ohlcv dataframe。 | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | egs_data/股票/yfinance/yfinance_data.py | 49 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | egs_data/股票/baostock/get_stock_data.py | 44 | logger = logging.getLogger(__name__) | CODE |
| LOW | egs_data/股票/stooq/stooq_demo.py | 43 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | egs_data/股票/pytdx/pytdx_demo.py | 39 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | egs_data/股票/tushare/tushare_demo.py | 42 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | …data/股票/data_loader_framework/data_loader_base_demo.py | 41 | logger = logging.getLogger(__name__) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …_skills/cross-market-strategy/example_signal_engine.py | 36 | # Step 1: raw signals per market | COMMENT |
| LOW⚡ | …_skills/cross-market-strategy/example_signal_engine.py | 43 | # Step 2: volatility-adjusted weights | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | egs_data/股票/eastmoney/eastmoney_api.py | 102 | CODE | |
| LOW | egs_data/股票/tencent/tencent_api.py | 65 | CODE | |
| LOW | …rading_skills/technical-basic/example_signal_engine.py | 147 | CODE | |
| LOW | …l/broker-research-analyst/scripts/eastmoney_adapter.py | 135 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …_skill/broker-research-analyst/scripts/error_logger.py | 22 | stage: str # 发生阶段:fetch/quality_gate/download/parse/image/generate/validate/hallucination | CODE |