作者:老余捞鱼
原创不易,转载请标明出处及原作者。

写在前面的话:本文将教大家学会用Python抓取财务数据,再让ChatGPT进行完整的价值分析,不需要金融背景,也不用花钱买软件,就能让您从"价格投机者"变成"价值投资者"。
🚨 问题:在数字海洋中迷失方向
“股市里到处都是知道每样东西价格、却不知道任何东西价值的人。” —— 菲利普·费雪(巴菲特的老师)
大多数散户刚开始炒股的时候,会一直在盯着价格看,很少去关心价值。而财务数据:营收、债务比率、盈利能力等能够揭示公司真实故事。
💸 传统获取财务数据的痛点
- 专业金融数据平台动辄每月几千元;
- 免费数据来源杂乱不堪、数据不完整;
- 需要花费大量时间手动整理和分析;
- 缺乏专业分析能力,看不懂数据背后的意义。
💡 解决方案:Python+数据接口+ChatGPT组合拳
在这个教程中,你将学会如何:
🎯 三大核心功能
- 用Python获取实时财务数据 – 不再依赖昂贵的付费平台。
- 搭建可视化投资看板 – 让复杂数据一目了然。
- 借助ChatGPT生成AI分析报告 – 把冷冰冰的数字变成投资建议。
完成后,你将拥有一个属于自己的”迷你AI财务分析师”。
🛠️ 6步实战教程:从零搭建AI投资系统
第1步:获取EODHD数据接口密钥 🔑
首先,我们需要一个可靠的财务数据来源。EODHD提供了丰富的基本面数据接口:
- 访问 EODHD 基本面数据页面;
- 注册一个免费账户并获取API密钥;
- 立即测试接口是否正常:
https://eodhd.com/api/fundamentals/AAPL.US?api_token=你的密钥&fmt=json
如果你看到JSON格式的回应数据,说明一切准备就绪!
第2步:连接财务数据接口 🌐
让我们从一个简单的”Hello World”开始,体验实时金融数据的魅力:
import requests
API_TOKEN = "YOUR_TOKEN"
symbol = "AAPL.US"
url = f "https://eodhd.com/api/fundamentals/{symbol}?api_token={API_TOKEN}&fmt=json"
r = requests.get (url)
data = r.json()
print( data [ "General" ][ "Name" ])
print( data [ "Highlights" ][ "MarketCapitalization" ])
✅ 运行这段代码,你就能获取到公司名称和市值了。
第3步:提取核心财务指标 📊
JSON数据包含几十个部分,但我们重点关注投资者真正需要的关键指标:
| 指标名称 | 中文说明 | 投资意义 |
|---|---|---|
| MarketCapitalization | 总市值 | 公司规模大小,反映市场对公司的整体估值 |
| TrailingPE | 市盈率 | 估值高低指标,数值越低通常表示越便宜 |
| PriceBookMRQ | 市净率 | 股价与账面价值的对比,价值投资重要指标 |
| ReturnOnEquityTTM | 净资产收益率(ROE) | 公司赚钱效率,数值越高说明管理层越会赚钱 |
| DividendYield | 股息率 | 分红收益率,适合追求稳定收入的投资者 |
| QuarterlyRevenueGrowthYOY | 季度营收增长率 | 公司成长性指标,反映业务扩张能力 |
下面的代码展示如何提取这些关键指标:
fields = ["MarketCapitalization", "TrailingPE", "PriceBookMRQ", "ReturnOnEquityTTM", "DividendYield", "QuarterlyRevenueGrowthYOY"]fundamentals = {}for f in fields: fundamentals[f] = ( data.get("Highlights", {}).get(f) or data.get("Valuation", {}).get(f) or None )print(fundamentals)
现在你就有了整理好的、结构化的核心财务数据!
第4步:搭建可视化看板
📈“对知识的投资回报率最高。” —— 本杰明·富兰克林
可视化看板让你的分析更直观、更有说服力。我们将创建一个能够并排比较多家公司的交互式看板。
安装必需的工具包:
pip install streamlit pandas requests
创建文件 fdashboard.py,完整代码如下:
import streamlit as stimport pandas as pdimport requestsst.title("📊 Financial Data Dashboard with EODHD")api_token = st.text_input("Enter your EODHD API token", type="password")tickers_input = st.text_area("Enter tickers (comma-separated, e.g. AAPL.US, MSFT.US)")if api_token and tickers_input: tickers = [t.strip() for t in tickers_input.split(",") if t.strip()] data_rows = [] for t in tickers: url = f"https://eodhd.com/api/fundamentals/{t}?api_token={api_token}&fmt=json" r = requests.get(url) if r.ok: d = r.json() data_rows.append({ "Ticker": t, "MarketCap": d["Highlights"].get("MarketCapitalization"), "P/E": d["Valuation"].get("TrailingPE"), "P/B": d["Valuation"].get("PriceBookMRQ"), "ROE": d["Highlights"].get("ReturnOnEquityTTM"), "DivYield": d["Highlights"].get("DividendYield"), "RevGrowthQ": d["Highlights"].get("QuarterlyRevenueGrowthYOY"), }) df = pd.DataFrame(data_rows) st.dataframe(df) st.bar_chart(df.set_index("Ticker")[["ROE", "DivYield", "RevGrowthQ"]].fillna(0))
运行看板:
streamlit run fdashboard.py
几秒钟内,你就能看到多家公司的财务数据并排展示,还有直观的对比图表!
第5步:接入ChatGPT智能分析 🤖
我们要让ChatGPT把冷冰冰的财务数据转化为通俗易懂的投资分析。
安装OpenAI工具包:
pip install openai
让AI读懂财务数据:
from openai import OpenAIimport jsonclient = OpenAI(api_key="YOUR_OPENAI_KEY")prompt = f"""You are a financial analyst. Based on this data:{json.dumps(fundamentals, indent=2)}Explain in under 100 words whether this stock appears undervalued or overvalued."""completion = client.chat.completions.create( model="gpt-4-turbo", messages=[{"role": "user", "content": prompt}])print(completion.choices[0].message.content)
示例输出效果:
🤖 AI分析师观点:“苹果公司净资产收益率超过140%,说明赚钱能力极强,管理层非常会为股东创造价值。但市盈率超过30倍,相比历史水平偏贵。股息率较低,更适合追求成长而非收入的投资者。建议等待更好的买入时机。”
🎉 恭喜!你刚刚把财务数据转化为了专业的投资见解。
第6步:进阶功能扩展 🎯
恭喜你已经掌握了核心功能!下面是一些扩展方向:
| 功能模块 | 实现难度 | 实用价值 | 适用人群 |
|---|---|---|---|
| 历史走势图表 | ★★☆☆☆ | ★★★★☆ | 所有投资者 |
| PDF投资报告 | ★★★☆☆ | ★★★★★ | 专业投资者 |
| 行业板块对比 | ★★★★☆ | ★★★★☆ | 组合投资者 |
| 指标预警系统 | ★★★☆☆ | ★★★★★ | 长期投资者 |
🎨 进阶功能代码示例
添加历史价格走势:
# 获取历史价格数据 price_url = f"https://eodhd.com/api/eod/{ticker}?api_token={api_token}&period=d&from=2023-01-01" price_data = requests.get(price_url).json() # 用streamlit创建价格走势图 price_df = pd.DataFrame(price_data) st.line_chart(price_df.set_index('date')['close'])
生成PDF报告:
from reportlab.pdfgen import canvas # 创建PDF报告,结合财务指标和AI分析 def generate_report(company_data, ai_analysis): c = canvas.Canvas(f"{ticker}_投资分析报告.pdf") # 添加财务数据和AI分析内容 c.drawString(100, 750, f"{ticker} 投资分析报告") # ... 更多PDF生成代码
🔥 实战案例:苹果vs微软财务对决
让我们用刚才搭建的系统来实际分析苹果和微软。
| 财务指标 | 苹果(AAPL) | 微软(MSFT) | AI分析结论 |
|---|---|---|---|
| 市盈率 | 32倍 | 35倍 | 两家估值都不便宜,处于历史较高水平 |
| ROE净资产收益率 | 147% | 42% | 苹果的赚钱效率明显更高,资本运用更高效 |
| 股息率 | 0.5% | 0.8% | 微软分红更慷慨,适合收入型投资者 |
| 营收增长率 | 8% | 16% | 微软增长更快,云计算业务推动强劲增长 |
| 总市值 | 3.1万亿美元 | 2.8万亿美元 | 两家都是巨型公司,苹果略胜一筹 |
🤖 AI综合分析结论
苹果:盈利能力极强,ROE高达147%说明管理层非常会赚钱,但估值偏贵且增长放缓,适合长期价值投资者在合适价位买入。
微软:增长势头更强劲,云计算Azure业务驱动营收快速增长,分红政策更友好,虽然估值不便宜但成长性更好。
投资建议:成长型投资者可关注微软,价值型投资者可等待苹果回调机会。
📝 总结与展望
通过这个教程,我们成功打造了一个集数据获取、可视化展示、AI智能分析于一体的投资分析系统。这套工具不仅让普通投资者能够获取专业级的财务数据,更重要的是通过ChatGPT的加持,让每个人都能理解这些数据背后的投资含义,真正实现从”看价格”到”看价值”的投资理念转变。
🎯 核心要点总结
- 技术栈组合:Python + EODHD数据接口 + Streamlit可视化 + ChatGPT分析,四者结合威力无穷
- 关键财务指标:重点关注市盈率(估值)、ROE(盈利效率)、营收增长(成长性)、股息率(分红)四大核心指标
- 工具特点:免费开源、操作简单、分析专业、适合初学者快速上手价值投资
- 适用人群:想要告别韭菜命运的普通投资者、对量化投资感兴趣的程序员、追求理性投资的价值投资者
- 学习建议:从模仿开始,逐步理解每个指标的含义,结合AI分析培养投资直觉,最终形成自己的投资体系
“在投资中,舒适的往往不赚钱。” —— 罗伯特·阿诺特
大多数人被数字淹没,只有少数人把数字转化为知识。而现在,借助Python和ChatGPT的力量,你也可以成为那少数人中的一员。
记住:工具只是辅助,真正的投资智慧来自于持续学习和理性思考。愿这套工具能帮你在投资路上走得更稳、看得更远!
#Python量化投资 #ChatGPT #股票分析 #基本面分析 #AI投资 #量化交易 #财务数据分析 #价值投资 #ROE #市盈率
感谢您阅读到最后,希望这篇文章为您带来了新的启发和实用的知识!如果觉得有帮助,请不吝点赞和分享,您的支持是我持续创作的动力。祝您投资顺利,收益长虹!如果对文中内容有任何疑问,欢迎留言,我会尽快回复!
本文内容仅限技术探讨和学习,不构成任何投资建议。
Be First to Comment