基于 K-means 聚类的天天基金数据分析、挖掘、可视化

✨ 觉得有用?别忘了点个 Star ⭐! 你的支持是我持续更新的最大动力!


🎯 项目目标

利用无监督学习对 11,344 只公募基金进行智能分组,挖掘高价值投资标的

本项目通过 K-means 聚类算法 对天天基金平台公开数据进行分析,旨在:

  • 自动识别具有相似风险收益特征的基金群体;
  • 揭示市场结构性分化(如"高增长高波动" vs "低增长稳收益");
  • 为投资者提供数据驱动的分类参考与决策支持。

🔧 技术流程

1. 数据采集

  • 模拟 AJAX 请求爬取天天基金平台数据;
  • 获取字段包括:基金代码、名称、单位净值、日增长率、资产配置、成立日期等;
  • 合法合规,避免高频请求,确保数据稳定性。

2. 数据清洗与预处理

  • 剔除重复记录(共 56 条);
  • 处理缺失值与异常值(采用 IQR 方法);
  • 标准化日期格式与数值类型,统一数据口径。

3. 特征工程

构建以下核心特征用于聚类:

类别 特征 说明
收益类 日增长率、净值变化率 衡量短期与中期收益能力
风险类 增长波动性(30 日滚动标准差) 反映价格稳定性
结构类 价值比率、日增长率排名 辅助判断市场地位

💡 特征重要性分析显示:日增长率贡献度最高(0.6572)

4. 聚类建模

  • 使用 K-means++ 初始化提升收敛稳定性;
  • 通过 肘部法则轮廓系数(Silhouette Score = 0.4495) 确定最优聚类数 K=2
  • 最终聚类结果清晰区分两类基金:
    • 聚类 0:低增长、低波动、稳健型(平均日增长率 0.31%)
    • 聚类 1:高增长、高波动、进取型(平均日增长率 1.37%,夏普比率 0.88)

5. 可视化分析

  • 散点图:展示聚类在"日增长率 vs 波动性"平面上的分布;
  • 雷达图:对比两类基金在多维指标上的差异;
  • 直方图:揭示日增长率呈右偏分布,仅 1.4% 基金日涨超 2%。

📈 关键发现

  • 医疗健康主题基金表现最优 :平均日增长率达 1.51%
  • 市场呈现明显两极分化:高风险聚类虽波动大,但收益显著领先;
  • 聚类 1 中包含大量行业主题基金(如新能源、半导体),具备高弹性特征;
  • 低风险聚类以债券型、货币型基金为主,适合保守投资者。

📁 数据概览

项目 数值
基金样本数量 11,344 只
特征维度 10+
数据截止日期 2025-12-22
聚类数量(K) 2
轮廓系数 0.4495

🚧 局限性与未来工作

当前局限

  • 数据时效性受限(截至 2025 年底);
  • 未纳入基金经理履历、基金规模、换手率等高阶特征;
  • K-means 对非球形簇或噪声敏感。

未来方向

  • 引入 K-prototype 聚类 处理混合类型数据(数值 + 类别);
  • 融合 NLP 技术解析基金持仓文本描述;
  • 构建 动态聚类系统,支持每日增量更新;
  • 接入回测框架,验证聚类策略的长期收益表现。

📂 项目结构

bash 复制代码
.
├── analyse/                   # 原始与处理后的数据集
│   ├──  analysis_version.ipynb   # 数据可视化
│   ├──  crawler.ipynb  # 爬虫
│   └──  data_clean_analysis.ipynb  # 数据清洗,数据分析
│   └──  data_model.ipynb # 数据建模
├── results/                # 聚类结果于总结
│   ├── tiantian jjin report.txt
│   ├── tiantianjin results.csv
│   └── tiantianjin_summary.csv
├── requirements.txt        # 依赖库
└── README.md

🛠️ 快速开始

bash 复制代码
# 克隆项目
git clone https://gitee.com/at-share/analyse-project.git
cd analyse-project

# 安装依赖
pip install -r requirements.txt

⚠️ 注意:原始数据需自行爬取或提供合法来源。项目不包含天天基金平台的原始数据文件。


🙌 致谢

  • 数据来源:天天基金网
  • 算法参考:scikit-learn KMeans, Silhouette Analysis
  • 可视化:Matplotlib, Seaborn

✨ 本项目为学术研究与技术探索用途,不构成任何投资建议。

相关推荐
爱吃泡芙的小白白1 天前
环境数据可视化利器:Hexbin Chart 全解析与应用实战
信息可视化·数据挖掘·数据分析·环境领域·hexbin chart
爱吃泡芙的小白白1 天前
环境数据可视化利器:气泡图(Bubble Chart)全解析
信息可视化·数据挖掘·数据分析·气泡图·bubble chart·环境领域
沐墨染1 天前
Vue实战:自动化研判报告组件的设计与实现
前端·javascript·信息可视化·数据分析·自动化·vue
sensen_kiss1 天前
Jupter Notebook 使用教程
大数据·人工智能·python·学习·数据分析
deephub1 天前
分类数据 EDA 实战:如何发现隐藏的层次结构
人工智能·python·机器学习·数据分析·数据可视化
洁洁!1 天前
JDK21→25升级实战:飞算Java AI专业版帮我自动适配了哪些坑?
人工智能·科技·语言模型·数据分析·飞算javaai·ai开发工具
BYSJMG1 天前
计算机毕设推荐:基于大数据的共享单车数据可视化分析
大数据·后端·python·信息可视化·数据分析·课程设计
Aloudata1 天前
高并发指标中台选型:Aloudata CAN 横向扩展与架构稳定性深度评估
数据库·架构·数据分析·etl·指标平台
Aloudata1 天前
数据工程实践:Aloudata CAN 如何通过 NoETL 实现真·管研用一体?
大数据·数据分析·数据治理·etl·指标平台
Aloudata1 天前
指标中台选型技术实测:Aloudata CAN 如何通过 NoETL 语义层驾驭复杂 SQL 生成
大数据·数据库·sql·数据分析·指标平台