昨天去参加了 AI FUT 大会,所以文章停更了一天。后续会新开一个ai 相关的账号为大家做分享。今天继续,给大家推荐一个特别实用的财务分析工具。
同一只股票,5 个网站报出 5 个 PE?这个工具一行代码算清楚
你有没有遇到过这种情况——
查微软的 PE,Morningstar 说 32.05,Yahoo Finance 说 33.80,华尔街日报说 33.67,Macrotrends 说 32.66……
同一只股票,同一天,5 个网站给你 5 个不同的数字。
到底哪个对?
答案是:都对,但计算方法不同——有的用 TTM,有的用预测,有的剔除了非经常性损益。问题是,没有一个网站告诉你它的算法。
FinanceToolkit 的作者也被这个问题搞烦了,于是写了这个工具——所有指标计算方法完全透明、开源可查。
项目地址: https://github.com/JerBouma/FinanceToolkit
⭐ 4,600+ Stars | 519 Forks | Python | MIT 许可证
它是什么?
一句话:Python 财务分析全家桶。
你输入股票代码
它输出:
├── 30 年财务报表(资产负债表/利润表/现金流)
├── 150+ 财务指标(PE/ROE/ROA/毛利率/净利率……)
├── 估值模型(DuPont 分析/WACC/Altman Z-Score)
├── 期权希腊字母(Delta/Gamma/Theta/Vega)
├── 风险指标(VaR/夏普比率/最大回撤)
├── 30+ 技术指标(MACD/RSI/布林带/一目均衡)
├── 宏观经济数据(60+ 国家 GDP/CPI/失业率)
└── 你自己的投资组合分析
巴菲特研究一只股票要看的财务数据,这个工具几行代码全拉出来。
快速上手
安装
pip install financetoolkit -U
获取 API Key(免费)
FinanceToolkit 使用 FinancialModelingPrep 的数据源,需要一个免费 API Key:
1. 打开 financialmodelingprep.com
2. 注册账号(免费)
3. 获取 API Key
4. 免费版限制:每天 250 次请求,5 年数据
初始化
from financetoolkit import Toolkit
# 初始化(支持同时分析多只股票)
companies = Toolkit(
tickers=["AAPL", "MSFT"],
api_key="YOUR_API_KEY",
start_date="2020-01-01"
)
核心功能演示
1. 财务报表:一行拿到 30 年数据
# 利润表
income = companies.get_income_statement()
# 资产负债表
balance = companies.get_balance_sheet_statement()
# 现金流量表
cashflow = companies.get_cash_flow_statement()
# 直接看苹果的利润表
print(income.loc['AAPL'])
特别说明:FinanceToolkit 会自动做两件事:
- 统一财务报表格式
- 对齐财年——苹果的 Q4 其实是 7-9 月,它自动转成日历年对比
2. 150+ 财务指标:一行全算
# 盈利能力指标(ROE、ROA、毛利率、净利率、营业利润率……)
profitability = companies.ratios.collect_profitability_ratios()
print(profitability.loc['AAPL'])
# 估值指标(PE、PB、PS、EV/EBITDA……)
valuation = companies.ratios.collect_valuation_ratios()
# 偿债能力(资产负债率、流动比率、利息保障倍数……)
solvency = companies.ratios.collect_solvency_ratios()
# 也可以单独拿某一个指标
roe = companies.ratios.get_return_on_equity()
print("\n=== 苹果 vs 微软 ROE 对比 ===")
print(roe)
这就是为什么这个工具好用——你不需要手动计算任何指标,它全帮你算好了。
3. 估值模型:专业级分析
# 杜邦分析(拆解 ROE 来源)
dupont = companies.models.get_extended_dupont_analysis()
print(dupont.loc['AAPL'])
输出告诉你苹果的 ROE 是靠什么驱动的:
ROE = 净利率 × 资产周转率 × 权益乘数
→ 净利率高(赚钱能力强)
→ 资产周转稳定
→ 杠杆适中
# WACC(加权平均资本成本)
wacc = companies.models.get_weighted_average_cost_of_capital()
# Altman Z-Score(破产风险预警)
zscore = companies.models.get_altman_z_score()
print("\n=== 破产风险指标 ===")
print(zscore)
# Z > 2.99 = 安全,1.81-2.99 = 灰色地带,< 1.81 = 危险
4. 风险分析
# VaR(在险价值)——最坏情况下你会亏多少
var = companies.risk.get_value_at_risk(period="weekly")
print("=== 每周最大预期亏损 ===")
print(var)
# 夏普比率、索提诺比率
performance = companies.performance.get_factor_asset_correlations(period="quarterly")
5. 技术指标
# 一目均衡(Ichimoku Cloud)
ichimoku = companies.technicals.get_ichimoku_cloud()
# 当然也支持常见的
rsi = companies.technicals.get_relative_strength_index()
macd = companies.technicals.get_moving_average_convergence_divergence()
bollinger = companies.technicals.get_bollinger_bands()
6. 宏观经济数据
# 不需要 API Key 也能用这个模块
from financetoolkit import Economics
economics = Economics()
# 各国失业率
unemployment = economics.get_unemployment_rate()
# 各国 GDP
gdp = economics.get_gross_domestic_product()
# CPI(通胀)
cpi = economics.get_consumer_price_index()
实战:完整分析一只股票
from financetoolkit import Toolkit
# 分析英伟达
nvda = Toolkit("NVDA", api_key="YOUR_KEY", start_date="2020-01-01")
# 基本信息
profile = nvda.get_profile()
print("=== 公司概况 ===")
print(profile)
# 关键财务指标
print("\n=== 盈利能力 ===")
print(nvda.ratios.collect_profitability_ratios())
print("\n=== 估值 ===")
print(nvda.ratios.collect_valuation_ratios())
print("\n=== 杜邦分析 ===")
print(nvda.models.get_extended_dupont_analysis())
print("\n=== 破产风险 ===")
print(nvda.models.get_altman_z_score())
# 分析师评级
rating = nvda.get_rating()
print("\n=== 分析师评级 ===")
print(rating)
# 财报日历
earnings = nvda.get_earnings_calendar()
print("\n=== 近期财报 ===")
print(earnings)
这一段代码跑完,你对英伟达的了解程度不亚于一个初级分析师。
和系列其他工具的定位区别
投资分析完整流程:
1. 拿数据
AKShare(A 股)/ yfinance(美股)
2. 分析数据 ← FinanceToolkit 在这里
150+ 指标一行算出 / 杜邦分析 / 估值模型
3. AI 辅助研判
go-stock / Qlib / AI Hedge Fund
4. 仓位优化
PyPortfolioOpt
5. 策略回测
Backtesting.py / QuantConnect Lean
6. 实盘交易
vnpy
对比表
| | | |
|---|
| AKShare | | | |
| yfinance | | | |
| FinanceToolkit | | 150+ 指标 + 估值模型 | 分析数据 |
| Qlib | | | |
| PyPortfolioOpt | | | |
AKShare/yfinance 只管"拿",FinanceToolkit 帮你"算"。
数据源说明
| |
|---|
| FinancialModelingPrep(默认) | 需要 API Key,免费版每天 250 次,5 年数据 |
| Yahoo Finance(备选) | |
# 如果不想注册 API Key,可以强制使用 Yahoo Finance
companies = Toolkit(
["AAPL", "MSFT"],
enforce_source="YahooFinance"
)
局限性
| |
|---|
| 免费版有限制 | 每天 250 次请求,5 年数据。想要更多需要付费 |
| 主要覆盖美股 | |
| 没有 AI 功能 | |
| 需要一定 Python 基础 | |
小结
FinanceToolkit:
- 4,600+ Star 的开源财务分析工具箱
- 150+ 财务指标一行代码算出来
- 所有计算方法完全透明、可查
- 支持财务报表、估值模型、期权、风险、技术指标、宏观经济
- 解决"不同网站指标不一样"的痛点
- 免费 API Key 即可使用
定位:拿到数据后,怎么分析——它帮你做这一步。
⚠️ 免责声明:FinanceToolkit 是数据分析工具,指标计算结果仅供参考。财务分析是投资决策的一部分,不能替代完整的研究过程。投资有风险,请谨慎决策。
有了数据、有了分析、有了 AI 研判——下一步是什么?怎么验证你的策略到底能不能赚钱? 下篇聊回测工具 👇
#FinanceToolkit #财务分析 #Python #ROE #PE #开源 #投资工具 #估值