Skip to content

项目展示

这里展示我开发的一些投资与自动化相关项目。


1. 行业生命周期分析系统

项目类型: 金融数据分析平台
技术栈: Python + Flask + Pandas + Chart.js

一个基于 A 股上市公司财务数据的行业生命周期分析系统。通过多维度指标(毛利率、ROIC、资本开支、营收增速等)对申万三级行业进行生命周期阶段划分,帮助投资者识别行业所处的发展阶段。

核心功能

  • 📊 行业数据可视化: 多维度散点图展示行业关键指标
  • 🔄 生命周期分类: 自动识别行业所处阶段(成长/洗牌/出清/成熟等)
  • 📈 指标追踪: 毛利率、ROIC、营收增速等核心指标历史走势
  • 🏭 申万行业树: 完整的申万三级行业分类体系

技术亮点

  • 基于 Pandas 的大规模财务数据处理
  • 前端使用 Chart.js 实现交互式数据可视化
  • RESTful API 设计,支持动态数据查询
  • 数据自动缓存与热更新机制

在线访问: https://lifecycle.xiafansheng.com


2. 宏观监测系统

项目类型: 宏观经济数据看板 技术栈: Python (ETL) + iChoice EMQuantAPI + Vite + React

一个本地化的宏观数据监测网页系统,参考热力图风格呈现 26 个国内外宏观指标(GDP、CPI、PMI、社融、M2、非农、海外通胀等),并支持与 12 个市场标的(A 股指数、国债收益率、资金利率等)的关系分析,辅助判断宏观环境对资产价格的传导。

核心功能

  • 🌡️ 指标热力图: 26 个宏观指标的时序热力图呈现,一眼看出周期位置
  • 🔗 指标-标的关联分析: 双轴折线图对比宏观指标与股债商品标的的同步性
  • 📅 多频率支持: 月度(CPI/PMI)+ 季度(GDP)+ 日度(利率)混合频率自动对齐
  • 🔄 一键数据更新: ./update.sh 拉取最新 iChoice 数据并刷新前端

技术亮点

  • iChoice EMQuantAPI 拉取宏观数据,落地为 JSON 供前端消费
  • React + Vite 前端,DualAxisChart 组件处理多频率指标对齐
  • 指标元数据通过 config/indicators.yaml 声明式管理,新增指标无需改代码

在线访问: https://macro.xiafansheng.com


3. 市场数据库 (Market Data)

项目类型: 金融数据库管理系统 技术栈: Python + FastAPI + SQLite + Alpine.js + ECharts + Tailwind

一个集中管理多资产投资部所有市场数据的可视化数据库系统。基于 iChoice/EMQuantAPI 拉取 8 大分类共 403+ 指标(债券/宏观/权益/资金/外汇/商品/海外/可转债/股票),自动维护时间序列,支持网页端搜索、增删、可视化与手动触发更新。

核心功能

  • 📊 数据库概览仪表盘: 总指标数、有数据数、完整度、最新更新时间一目了然
  • 🔍 指标搜索与列表: 按代码/名称/分类搜索,显示成立日期、最新日期、数据条数
  • 增删指标: 网页直接添加 iChoice/Wind 代码,下次更新自动拉取 2000 年至今历史
  • 📈 走势图表: 点击任意指标查看时间序列折线图(ECharts)
  • 🔄 手动触发更新: 支持 smart/full/incremental/retry 四种更新模式
  • 自动定时更新: systemd timer 每个工作日 17:00 自动执行 smart 增量更新

技术亮点

  • iChoice EMQuantAPI 在 Linux 服务器上跑通(首次实践)
  • 智能更新逻辑:新指标拉完整历史,存量指标从最新日期增量
  • FastAPI 后端,支持 REST API 远程调用(Mac/Python 客户端可直接连接)
  • 单页前端,无构建依赖,纯 HTML+CDN 部署

Python 客户端调用示例

python
import requests
# 查询沪深300的时间序列
r = requests.get("https://market.xiafansheng.com/api/indicators/000300.SH/timeseries?start=2024-01-01")
data = r.json()["data"]  # [{"date": "2024-01-02", "value": 3422.5}, ...]

# 查询所有宏观指标
r = requests.get("https://market.xiafansheng.com/api/indicators?category=宏观&page_size=100")
indicators = r.json()["items"]

在线访问: https://market.xiafansheng.com


4. 月度市场复盘看板

项目类型: 多资产市场监测仪表盘 技术栈: React + Vite + Tailwind + Radix UI + Recharts

一个用于多资产投资部月度复盘的资产监测仪表盘,覆盖权益(上证指数/标普500/中证转债)、债券(7-10年国开/1-3年高信用等级/10年美债)、汇率(USDCNY/锁汇成本)、商品(沪金/螺纹钢/原油/豆粕)共 12 个核心资产。每个资产展示当前位置在 3 年区间的分位、与中位数的偏离度、最近 21 个交易日和 3 年走势图。

核心功能

  • 📊 资产分位图: 当前指标在 3 年区间的位置(绿/黄/红渐变条 + 圆点标记),一眼判断便宜还是昂贵
  • 📈 走势对照: 21 天近月走势 + 3 年历史走势双时间维度
  • 🧮 衍生指标: 自动计算股债性价比、信用利差、期限利差、锁汇成本、内外盘价差等复盘必看指标
  • 实时数据: 浏览器打开页面即从 market.xiafansheng.com/api/monthly-market-review 实时拉取数据
  • 🔄 数据自动跟随: 每个工作日 17:00 后市场数据库更新,网页刷新自动看到最新数据,无需任何中间数据同步

技术亮点

  • 零中间层架构: 浏览器 → market-data REST API → SQLite,全程实时计算无缓存 JSON
  • 后端实现复杂衍生指标计算(FX 锁汇成本、内外盘价差、螺卷差、ERP 等)
  • 前端 Recharts 渲染分位条 + 走势曲线,无第三方图表依赖(除 Tailwind/Radix)
  • Vite + 生产环境 ENV 注入 API URL,dev/prod 切换零配置

数据上游

本项目数据完全来自 市场数据库(market.xiafansheng.com),调用 /api/monthly-market-review 端点。该端点根据 monthly_market_review.py 配置的资产代码映射,从 SQLite 中拉取最近 3 年和最近 1 个月的时间序列,并在请求时即时计算各类衍生指标返回。

在线访问: https://review.xiafansheng.com


5. 多资产配置回测系统

项目类型: 投资组合分析工具
技术栈: Python + Flask + Pandas + NumPy

一个多资产类别(A 股、海外权益、债券、商品、外汇)的组合配置回测工具。支持用户自定义资产配置比例,直接读取服务器 market_data 数据库中的历史行情,计算组合历史表现并输出关键绩效指标。

核心功能

  • 💼 资产配置: 支持沪深300、中证500、创业板、标普500、纳斯达克、纯债基金指数、南华商品、黄金、USDCNH 等资产
  • 📅 回测区间: 自定义回测起止日期
  • 📊 绩效指标: 计算总收益、年化收益、波动率、夏普比率、Calmar、最大回撤等
  • 🧭 滚动表现: 输出今年以来、近 1/3/6 月、近 1/3/5 年和成立以来的滚动年化收益
  • 📆 年度收益: 输出每年收益率、年度最大回撤、期初净值和期末净值
  • 📈 净值曲线: 可视化展示组合净值走势

技术亮点

  • 实时数据库读取: Flask API 直接查询 /home/myproject/market_data/data/ichoice_data.db
  • 统一组合引擎: 对不同资产的交易日做前值填充和权重归一,按日计算组合收益
  • 轻量前端: 原生 HTML/CSS/JS + SVG 净值曲线,无需额外前端构建链路
  • 生产部署: systemd 托管 Flask 应用,Nginx 反向代理到独立子域名

在线访问: https://backtest.xiafansheng.com


更多项目

持续更新中...

如果你对我的项目感兴趣,欢迎通过以下方式联系我:

  • 📧 邮箱: [你的邮箱]
  • 💬 微信公众号: 中统特工局

用编程与 AI 拆解复杂的投资逻辑与世界运行机制