股票價值投資分析(A股/港股)

👤 蘇然 📦 v1.0.3 ⭐ 4.6 ⬇️ 195 下載
💼 行業專業 免費

📖 技能介紹


name: stock-value-investing description: > 股票價值投資分析(A股/港股)。僅當用戶意圖屬於以下範圍時啟用: (1) 給出股票程式碼要求分析其投資價值;(2) 評估護城河/競爭優勢; (3) 檢查財務健康與盈利質量;(4) 用 DCF 或相對估值估算內在價值; (5) 評估管理層質量;(6) 做行業結構分析並給出綜合投資決策。 資料全部通過 akshare(國內可直連的公開源)獲取,零額外商業資料來源依賴。 本 skill 僅做研究分析,不預測股價、不薦股、不執行任何交易。 不適用於:期貨/期權/加密貨幣等衍生品、量化高頻交易、非上市公司盡調、 以及任何需要即時下單或資金操作的場景。


股票價值投資分析 Skill

質量合規遵循 TRACE 五維體系(T 可信任 / R 可靠 / A 適用 / C 規範 / E 有效), 各項要求已落實到下文各節的介面、指令碼與文件設計中。

一、適用範圍與能力邊界(Adaptability)

適合觸發(該呼叫時才呼叫) - 使用者提供 A股 6 位程式碼(可帶 sh/sz 字首)或港股 5 位程式碼,並明確要求"分析/估值/護城河"等。 - 使用者提及關鍵詞:護城河、財務健康、內在價值、DCF、估值、管理層、行業分析、價值投資。 - 使用者希望對比多隻股票、構建/再平衡價值投資組合。

常見觸發表達(可直接對使用者複用的說法) - "幫我分析一下 600519 的估值" - "五糧液(000858)值得長期持有嗎?出一份價值投資報告" - "分析 000858,增長率假設 10%、折現率 8%" - "港股 00700 現在價格貴不貴?"(僅行情,無基本面)

不適合觸發(避免誤觸發) - 期貨、期權、可轉債、加密貨幣、外匯等衍生品行情或交易。 - 量化/高頻/擇時交易、短線打板、情緒博弈類需求。 - 非上市公司盡職調查、一級市場股權投資。 - 任何需要下單、資金劃轉、賬戶操作的請求(本 skill 無此能力且不提供)。 - 僅查詢"今天漲跌幅/新聞"等純資訊、無需分析框架的場景。

能力邊界(可預期承諾) - 輸出為"研究分析報告",非買賣建議;涉及預測的增速/折現率均顯式標註為假設。 - 資料存在延遲與缺失風險,關鍵結論須交叉核對交易所公告。 - 港股:僅支援行情資料(價格/歷史),無法獲取財務三表,因此 ROIC / FCF / DCF / 盈利質量 / PE·PB 等基本面指標均無法計算。港股分析僅限行情層面的有限描述(價格分位、相對大盤強弱),不建議用於完整價值投資分析

二、分析框架(六大模組)

按"行業 → 護城河 → 財務健康 → 估值 → 管理層 → 綜合決策"順序執行。 前兩步決定"值不值得看",後三步決定"多少錢買"。

模組 1:行業結構分析(是否值得進入)

  • 行業生命週期:匯入期 / 成長期 / 成熟期 / 衰退期。
  • 競爭格局:集中度(CR5)、是否有價格戰、進入壁壘高低。
  • 產業鏈位置:上下游議價能力(用"應付賬款/應收賬款週轉"間接驗證)。
  • 政策與週期屬性:強週期 / 弱週期 / 防禦。週期屬性由指令碼按關鍵詞對映自動識別(僅分類標籤,非統計檢驗);對強週期股,DCF 自動採用 FCF 中位數(保留負值,避免景氣高點外推)、下調增速上限(6%)、縮短預測期(5 年)。

誠實邊界(重要):行業 CR5/集中度、政策與替代品風險等定性內容不由指令碼計算,必須由 agent 檢索公開資料後填寫,且必須標註資訊來源;無可靠來源時不得斷言,統一標記 [待核實]。指令碼僅負責定量部分(ROIC/FCF/盈利質量/分位/DCF)。

模組 2:經濟護城河分析(核心)

四類護城河,需在資料上找到證據: | 護城河型別 | 資料證據 | |---|---| | 無形資產(品牌/專利/牌照) | 高且穩定的毛利率、淨利率;研發投入佔比 | | 轉換成本 | 高客戶留存、收入復購;行業切換成本高 | | 網路效應 | 使用者/交易量隨規模指數增長;市佔率領先 | | 成本優勢 | 單位成本低於同行;規模效應(營收/固定資產) |

輔助驗證指標: - ROIC(投入資本回報率):> 8% 且連續多年穩定,是護城河的最強證據。 ROIC ≈ 息稅前利潤×(1-稅率) / (股東權益+有息負債) - 自由現金流持續為正、資本支出佔比低。

模組 3:財務健康與盈利質量

  • 償債能力:資產負債率、流動比率、有息負債率、利息保障倍數。
  • 盈利質量:經營性現金流 / 淨利潤 應長期 > 1(利潤含金量)。
  • 成長性:營收/淨利潤 3-5 年複合增速,是否依賴併購或槓桿。
  • 分紅與回購:股息率、分紅率、回購是否持續。
  • 紅旗預警:應收賬款增速 > 營收增速、商譽佔比過高、頻繁變更會計政策。

模組 4:估值(內在價值)

兩種互補方法,必須同時給出: 1. DCF 自由現金流折現(見 scripts/dcf.py): - 輸入:基期 FCF、預測期(通常 5-10 年)、增速、永續增長率、WACC。 - 輸出:每股內在價值,與現價比較得出安全邊際。 2. 相對估值(PE/PB 歷史分位):由 metrics.pe_pb_percentile 按歷史收盤價 + 最新股本/淨利潤/淨資產反推 PE/PB,給出當前值與歷史中位、分位(越低越便宜),並經 dcf.relative_valuation 給出"低估/偏高"判定。 - 注意:PS、EV-EBITDA 當前版本未實現(已在能力邊界如實標註),納入後續路線圖。 - 個股相對所屬行業指數與滬深300的累計收益、超額收益:由 fetch_data.py 拉取行業指數與滬深300歷史計算(最佳努力,缺失則標記 [資料缺失])。 - 若現價 < 內在價值 × (1 - 安全邊際),標記為"低估"。

模組 5:管理層質量

  • 資本配置:再投資回報 vs 分紅/回購是否理性。
  • 歷史誠信:是否有財務造假、頻繁減持、大額關聯交易。
  • 激勵一致性:管理層持股、薪酬與長期業績掛鉤。

誠實邊界:管理層相關資料不由指令碼計算,須由 agent 檢索公開資料(年報/公告/權威媒體)後填寫,並標註來源;無來源不得斷言。

模組 6:綜合決策

結論檔位由指令碼基於資料自動派生(見 report.recommend_verdict),輸出三檔之一: 強烈關注 / 關注 / 中性,依據為 ROIC 護城河、安全邊際、盈利質量、FCF 正負等硬指標打分; 強週期/未知屬性且存在弱項時自動保守降級為"中性"。 agent/使用者可用 --verdict-override(須配合 --verdict-reason覆蓋結論, 強制給出理由以避免確認偏誤。"關注/強烈關注"僅表示資料面值得研究,不等於買入訊號。 最終結論須配合"當前價 / 理想買點(按安全邊際)/ 賣出紀律"三段式建議。

三、輸入規範與校驗(Trust / Reliability)

輸入 - 必填:股票程式碼(A股 6 位數字;港股 5 位數字,指令碼自動補零到 6 位)。 - 可選(指令碼引數):--g 增速、--wacc 折現率、--g_term 永續增速、 --years 預測期、--tax-rate ROIC 稅率(預設 25%)、 --verdict-override 結論檔位覆蓋(關注/強烈關注/中性)、 --verdict-reason 覆蓋理由(強制填寫)、 --force-cycle 強制按強週期口徑、--show-basis 列印基準 FCF 序列、--fetch 先拉資料。

注:結論檔位不再接受空泛的 --verdict 直接賦值,必須由資料派生或帶理由覆蓋。

校驗規則(指令碼必須執行,失敗顯式報錯,禁止靜默空結果) - 程式碼必須為純數字且長度 5-6 位,否則報錯退出並提示正確格式。 - 資料目錄 data/<code>/ 不存在時,若未帶 --fetch 則明確報錯並說明需先拉資料。 - akshare 介面呼叫失敗時,列印具體異常與缺失欄位,而非返回空表矇混; 報告中對無法獲取的指標統一標記為 [資料缺失]。 - DCF 校驗:WACC 必須 > 永續增長率,否則拋 ValueError 說明不收斂; FCF ≤ 0 時跳過 DCF 並提示"當前自由現金流為負,不適用 DCF"。

四、資料獲取(akshare 速查)

依賴自動配置(推薦先行):本 skill 自帶 scripts/ensure_env.py,會在執行任意分析指令碼之前自動檢測並安裝缺失依賴(akshare / pandas)。普通使用者無需手動 pip install

python scripts/ensure_env.py --auto        # 檢測並自動安裝依賴
python scripts/ensure_env.py               # 僅檢測並列印狀態

遇到 Linux 系統 Python 的 PEP 668「外部管理環境」限制時,ensure_env.py 不會靜默失敗,也不會讓你手動處理:它會自動建立 .venv 並在其中安裝 akshare/pandas,經 os.execv 自動切換到 venv 直譯器;Windows/macOS/Linux 行為一致,無需手動建虛擬環境或加 --break-system-packages

呼叫前先 python scripts/ensure_env.py --auto(或手動 pip install akshare pandas)。A股程式碼統一傳 6 位字串 (如 "600519"),港股用 "00700"。所有介面均為公開行情/財務源,國內網路可直連。

import akshare as ak

ak.stock_profit_sheet_by_report_em(symbol="SH600519")     # 利潤表(寬表:行=報告期,列=科目英文程式碼)
ak.stock_balance_sheet_by_report_em(symbol="SH600519")    # 資產負債表
ak.stock_cash_flow_sheet_by_report_em(symbol="SH600519")  # 現金流量表
ak.stock_financial_abstract_ths(symbol="600519")          # 同花順摘要
ak.stock_individual_info_em(symbol="600519")              # 基本資訊(最佳努力)
ak.stock_zh_a_hist(symbol="600519", period="daily",
                   start_date="20200101", end_date="20261231", adjust="qfq")

想要更強大的技能外掛,就來小蔥技能站7w4.net看看吧。

重要(欄位結構)*_sheet_by_report_em 返回寬表——每行一個報告期、 每列一個科目,且科目名為英文程式碼(如 TOTAL_EQUITY 股東權益、 NETCASH_OPERATE 經營現金流淨額、CONSTRUCT_LONG_ASSET 購建長期資產、 SHARE_CAPITAL 股本)。metrics.py 用"概念→英文程式碼候選"對映取值, 較中文模糊匹配更抗版本變動。

PE/PB 不依賴額外介面:由三表的淨利潤/淨資產/股本直接計算 (PE = 現價 / (淨利潤/股本)PB = 現價 / (淨資產/股本)),因此無需 已廢棄的 stock_a_indicator_lg 等估值介面。

介面命名隨 akshare 版本可能變動;若某介面失效,fetch_data.py 會對 非核心介面做最佳努力容錯,並在報告中標記 [資料缺失]

五、執行工作流(SOP)

  1. 環境自檢(自動,必須先行):執行 scripts/ensure_env.py --auto 確保 akshare / pandas 已安裝;report.pyfetch_data.py 直接執行時,指令碼頂部已內建該自檢,無需手動呼叫。若遇 PEP 668 外部管理環境,指令碼會自動建立 .venv 並安裝依賴後重跑,無需手動處理。依賴就緒後再進入第 1 步。

  2. 解析輸入:提取股票程式碼、使用者關心的重點(估值/護城河/…),校驗程式碼格式。

  3. 拉資料:執行 scripts/fetch_data.py 把財務三表、行情、估值指標落盤為 csv。
  4. 算指標scripts/metrics.py 計算 ROIC、FCF、盈利質量、分位(自動容錯欄位)。
  5. 估值scripts/dcf.py 跑 DCF + 相對估值,輸出內在價值區間。
  6. 定性:按六大模組逐項給出結論(資料支撐 + 判斷),重點準備 行業結構、管理層、綜合決策三段的定性文字。
  7. 生成報告(自動觸發,必須執行):執行 scripts/report.py, 串聯上述指令碼、按第六節模板自動生成 Markdown 報告並儲存到 reports/<code>_report.md流程末尾必須呼叫,不要僅口頭總結。

```bash # 最簡:用中性預設假設(g=8% / WACC=10% / 永續 2% / 預測期 10 年) python scripts/report.py 600519

# 推薦:顯式假設;結論由資料派生,必要時帶理由覆蓋 python scripts/report.py 600519 --fetch \ --g 0.08 --wacc 0.10 --g_term 0.02 \ --verdict-override 關注 --verdict-reason "ROIC>15% 且安全邊際>30%,資料面值得研究" `` ---fetch:若data//尚未生成則先拉取資料。 - 報告中定量部分由指令碼填充;行業結構 / 管理層 / 綜合決策三段中的 定性內容由 agent 檢索公開資料填寫並**標註來源**,不得編造數字。 7. **交付**:把reports/_report.md` 內容呈現給使用者,並口頭點出 關鍵結論(護城河評級、安全邊際、買點);同時附上風險提示。

六、輸出報告模板(Convention)

報告由 report.py 自動生成,結構固定、可直接使用:

# 【股票程式碼】公司名稱 價值投資分析報告
> 資料來源:akshare | 生成日期:自動 | 結論:關注檔位

## 1. 行業結構
- 所屬行業:(自動識別)| 週期屬性:強週期 / 穩定
- 生命週期 / 格局 / 壁壘:

## 2. 經濟護城河
- ROIC(最新):x% → 護城河評級:寬/窄/弱
- 型別與證據:

## 3. 財務健康
- 盈利質量(經營現金流/淨利潤):
- 自由現金流(最新):
- 償債 / 成長 / 分紅:

## 4. 估值
- DCF 內在價值(中性):X 元/股(假設:增速 g%、WACC r%、稅率 t%;WACC±1.5pct 敏感區間)
- 當前價:Y 元 | 安全邊際:z% → 低估/合理/偏高
- 價格歷史分位:p%(區間 min~max)
- 相對強弱(區間累計):個股 % | 行業 % | 滬深300 %(含相對行業/大盤超額,缺失則 [資料缺失])
- 相對估值(PE/PB 歷史分位):當前 / 歷史中位 / 分位;相對估值結論(低估/偏高)

## 5. 管理層(agent 檢索填寫,須標註來源)
- 資本配置 / 誠信 / 激勵:

## 6. 綜合決策(結論檔位由指令碼資料派生)
- 推薦檔位(指令碼派生):(強烈關注 / 關注 / 中性)及依據
- 最終檔位:(若被覆蓋則標註覆蓋理由)
- 當前價:
- 理想買點(安全邊際 30%):
- 賣出紀律:

## 7. 資料質量與口徑說明
- 分析基準(年報報告期):
- 異常/缺失提示(如年報與季報矛盾已自動棄用、相對強弱缺失等):
- 口徑與假設提醒(DCF 敏感性等):

> 風險提示:資料存在延遲/缺失,DCF 對摺現率與永續增速極度敏感,
  結論應取區間。本報告僅作研究分析,不構成投資建議。

報告第七節的"資料質量與口徑說明"由 report.py 自動生成, 僅含面向使用者的口徑/異常/缺失提示(如異常年報已棄用、相對強弱缺失), 不得在交付報告中寫入 skill 自身的程式碼改動、內部開發記錄等無關資訊。

七、質量合規(TRACE 五維體系)

本 skill 按 TRACE 五維(T 可信任 / R 可靠 / A 適用 / C 規範 / E 有效)的最高標準設計,各項要求已落實到介面、指令碼與文件中:

  • T 可信任:資料來源僅 akshare 公開介面,國內可直連,無 token、無境外 API;程式碼不含任何非 akshare 網路請求,不讀取使用者無關檔案;不收集或上傳任何使用者輸入或本地資料;僅標準庫加 akshare/pandas,無 eval/exec 動態匯入、無高危系統許可權;程式碼靜態可讀、可審計。
  • R 可靠:執行前依賴自檢 ensure_env(缺失自動安裝,環境限制給出明確指引,絕不靜默失敗);輸入格式與引數(WACC 大於永續增速)顯式校驗;非核心介面最佳努力、核心三表缺失顯式報錯、介面失效統一標記 [資料缺失];計算鏈 NaN 轉 None、DCF 不收斂或 FCF 為負顯式提示;強週期股 DCF 自動保守化;價格統一前復權(qfq),個股與行業口徑一致。
  • A 適用:第一節明確適合觸發、不適合觸發、能力邊界三類清單;description 觸發詞精確,不覆蓋衍生品、交易下單、純資訊;顯式承諾研究分析而非買賣建議、資料存在延遲、港股僅行情等能力邊界。
  • C 規範:name、description、能力一致;文件覆蓋輸入要求、輸出模板、示例報告、常見限制、隱私提醒、參數列、目錄結構與版本;指令碼引數命名穩定;報告固定六段結構;全程中文、格式統一。
  • E 有效:輸出為可直用的結構化 Markdown 報告,含護城河評級、安全邊際、理想買點等判斷;定量由指令碼保證一致、定性由 LLM 整合;提供示例報告 reports/600519_report.md;附風險與誠實邊界提示,結論取區間而非單點;含個股相對行業指數與滬深300 的累計收益與超額收益。

八、隱私與安全(Trust)

  • 本 skill 不上傳任何使用者資料:所有計算在本地/授權環境完成,僅向 akshare 公共介面請求公開行情。
  • 不讀取使用者檔案系統中的無關檔案,不請求網路、系統、憑證類高許可權。
  • 若執行環境無法訪問 akshare 資料來源,會明確報錯提示,而非偽造結果。

九、版本與變更(Convention)

  • v1.0.3:缺陷修復(東京雲伺服器實測後修復,不影響分析框架):① 新增 metrics.get_stock_name 並接入報告標題——原 report.py 呼叫了不存在的 M.get_stock_name(code),標題降級為"行業(程式碼)",現從 info.csv 的"股票簡稱"欄位解析,正確顯示公司名;② report.py --fetch 非法程式碼退出碼對齊文件——補 try/except,非法的 validate_codeexit 2(原因未捕獲異常 traceback 退出 1);③ dcf_value 新增 wacc > g 守衛——當顯性期增速 g ≥ WACC 時丟擲 ValueError(前段現金流不收斂、內在價值失真),並將 dcf.py 預設假設保持中性(g=8%/WACC=10%/永續 2%);④ detect_bad_annual_all 閾值下調 0.5→0.8——單季營收/淨利≥年報 80% 才判異常,顯著降低季節性正常企業的誤報;⑤ validate_code 港股 5 位程式碼不再補零——00700 保持 5 位(akshare 港股介面收 5 位),6 位 A 股仍補零到 6 位;⑥ classify_cycle 新增防禦型關鍵詞優先匹配——醫藥/製藥/生物/醫療等優先判為"穩定",修正"化學制藥""醫療器械"被"化學"誤判為強週期的問題。
  • v1.0.2:設計層整改(依據《stock-value-investing-skill-設計評估與改進方案》):① 結論檔位改為資料派生report.recommend_verdict 由 ROIC/安全邊際/盈利質量/FCF 打分,強週期/未知且存弱項時自動降級為中性),移除"空泛 --verdict 直接賦值",改為 --verdict-override + --verdict-reason 強制帶理由覆蓋,杜絕確認偏誤;② 接入 PE/PB 歷史分位metrics.pe_pb_percentile + 修復並啟用 dcf.relative_valuation),並如實標註 PS/EV-EBITDA 未實現;③ 強週期 FCF 平滑方向修正:由"只取正值均值"改為"中位數且保留負值",避免景氣高點外推導致內在價值系統性偏高;④ DCF 預設假設中性化:g=8% / WACC=10% / 永續 2%(原 g=12%/WACC=9% 偏樂觀);⑤ 工程加固report.py 頂層副作用移入 main(模組可被 import 單測)、抽出 metrics.extract_dcf_inputs 公共 API 消除對 _find/_latest_row 私有符號穿透、刪除重複 _to_float;⑥ 資料時效與健壯性fetch_data.py 日期範圍動態化(回看約 5 年)、抓取後寫入 .meta.json(報告第 7 節提示新鮮度);⑦ 異常年報檢測升級為歷史掃描detect_bad_annual_all,支援多年同時異常)並支援 --tax-rate 透傳;⑧ 文件誠實化:能力邊界明確"行業 CR5/管理層等定性由 agent 檢索填寫並標註來源、不得編造"。
  • v1.0.1:在 v1.0.0 基礎上的累計最佳化與加固:① 修復 metrics.py_find 欄位取值 bug(原按資料列順序返回首個匹配,易誤命中無效/佔位近似列如 OPERATE_NETCASH_BALANCELIAB_EQUITY_BALANCE,導致 ROIC/FCF/盈利質量/BVPS 計算錯誤;現改為按 FIELD_MAP 候選優先順序遍歷並跳過空值/nan);② 新增異常財報自動檢測(最新年報與最新季報存在邏輯矛盾時自動棄用該異常年報、改用上一期年報重算);③ 增強 ensure_env.py 依賴自檢——網路自適應選最快 PyPI 映象、遇 PEP 668 外部管理環境時自動建立 .venv 並在其中安裝依賴(指令碼經 os.execv 自動切換直譯器,Windows/macOS/Linux 行為一致);④ DCF 敏感性矩陣自動寫入第 4 節報告(不同 g/WACC 組合下的內在價值區間);⑤ 第 6 節自動給出賣出紀律(規則化參考,非指令);⑥ 第 5 節補充管理層資料支撐線索(用 ROIC 等硬指標提示判斷角度);⑦ 技術性異常轉通俗中文告警fetch_data.py_friendly_errRemoteDisconnected/Expecting value 等轉成"資料來源連線中斷/介面返回空"並附重試建議);⑧ 新增集中 FAQ/避坑指南(README)與觸發表達示例(SKILL/README)。
  • v1.0.0:初版。六大分析模組 + akshare 資料獲取 + metrics/dcf/report 指令碼 + 依賴自動配置(ensure_env)+ requirements.txt + TRACE 合規對照 + 行業/指數對比(個股 vs 行業指數/滬深300 相對強弱)+ 週期屬性自動識別(強週期股 DCF 保守化)+ 港股誠實邊界。後續 bug 修復以補丁版本(v1.0.x)遞增,並在本條追加記錄。

十、風險提示(Effectiveness 的誠實邊界)

  • akshare 資料來自公開網路,存在延遲/缺失,關鍵決策須交叉核對交易所公告。
  • DCF 對摺現率、永續增長率極度敏感,結論應給區間而非單點。
  • 本 skill 僅輸出研究分析,不構成投資建議;任何投資決定由使用者自行承擔。

🤖 AI 評測

這個 Skill 質量較好,分析框架完整(六大模組),資料獲取省心(自動裝依賴、PEP 668 自動處理),對缺失資料誠實標註不造假,結論由資料派生而非空泛輸入,文件和 FAQ 非常詳細。主要缺點是港股只有行情沒有基本面、相對估值還不完整,以及依賴的 akshare 可能偶發介面波動。總體適合有一定分析需求的使用者,國內網路使用體驗最佳。

📊 多維度評分

適應性4.9
規範性4.6
有效性4.5
可靠性4.5
可信度5

📁 包含檔案 (9 個)

📄 README.md 10.4 KB
📄 SKILL.md 22.1 KB
📄 requirements.txt 134 B
📄 scripts/dcf.py 4.5 KB
📄 scripts/ensure_env.py 10.9 KB
📄 scripts/fetch_data.py 11 KB
📄 scripts/metrics.py 22.1 KB
📄 scripts/report.py 18.9 KB
📄 tests/test_skill.py 16 KB