# freedom **Repository Path**: simonZPF/freedom ## Basic Information - **Project Name**: freedom - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-20 - **Last Updated**: 2026-01-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Freedom - 金融数据分析平台 ## 项目简介 Freedom 是一个基于 Python 和 Streamlit 构建的金融数据分析平台,提供概念板块分析、申万行业分类、股票数据获取、技术分析、组合优化和策略回测等功能。平台旨在为投资者和金融分析师提供一站式的市场数据分析工具。 ## 功能特性 ### 1. 概念板块分析 - 获取和展示概念板块列表及其成分股 - 查询概念板块的历史行情数据 - 分析概念板块的资金流向 - 追踪概念板块的资金流向变化趋势 ### 2. 申万行业分类 - 支持申万一级、二级行业分类查询 - 提供股票与行业分类的映射关系 - 行业分类数据缓存机制,提高查询效率 ### 3. 技术分析工具 - RSI(相对强弱指标)计算 - 个股历史数据查询 - K线数据展示与分析 ### 4. 组合优化 - 多种组合优化方法支持 - 收益率与风险评估 - 权重约束设置 - 性能指标计算 ### 5. 策略回测 - 支持自定义交易策略回测 - 绩效评估与风险分析 ### 6. 因子分析 - 因子研究与分析功能 - 多因子模型支持 ### 7. 用户设置 - 个性化配置选项 - 数据刷新与缓存管理 ## 技术架构 ### 后端技术栈 - **Python**:主要开发语言 - **SQLite**:轻量级数据库存储 - **requests**:HTTP请求库,用于数据获取 - **pandas**:数据处理与分析 - **numpy**:数值计算 ### 前端技术栈 - **Streamlit**:Web应用框架 - **Plotly/ECharts**:图表可视化(按需集成) ### 数据源 - 东方财富网(概念板块数据) - 申万宏源(行业分类数据) - 其他公开金融数据接口 ## 快速开始 ### 环境要求 - Python 3.8+ - pip 包管理器 ### 安装步骤 1. 克隆仓库: ```bash git clone https://gitee.com/simonZPF/freedom.git cd freedom ``` 2. 安装依赖: ```bash pip install -r requirements.txt ``` 3. 运行应用: ```bash streamlit run main.py ``` 4. 浏览器访问:`http://localhost:8501` ## 项目结构 ``` freedom/ ├── main.py # Streamlit应用主入口 ├── data_handler/ # 数据处理模块 │ ├── data_crawler.py # 数据爬取模块 │ ├── data_processor.py # 数据处理模块 │ ├── database.py # 数据库操作模块 │ ├── proxy_manager.py # 代理IP管理模块 │ └── logger.py # 日志模块 ├── pages/ # Streamlit页面 │ ├── factor.py # 因子分析页面 │ ├── kdata.py # K线数据页面 │ ├── portfolio.py # 组合优化页面 │ ├── strategy_backtest.py # 策略回测页面 │ └── user_settings.py # 用户设置页面 ├── swClass/ # 申万行业分类模块 │ ├── swClass.py # 行业分类工具 │ ├── StockClassifyUse_stock.py # 股票分类数据获取 │ ├── StockClassify_swclass.py # 申万分类数据处理 │ └── combined_processor.py # 组合数据处理器 ├── utils/ # 工具函数 │ └── db_utils.py # 数据库工具 └── tests/ # 测试文件 ``` ## 数据处理 ### 概念板块数据 平台支持自动获取和更新概念板块数据,包括: - 概念板块基本信息 - 成分股列表 - 历史行情数据 - 资金流向数据 ### 代理IP管理 数据爬取模块支持代理IP自动切换,可配置: - 代理IP获取API - 代理验证机制 - 自动切换策略 ### 数据库结构 - `concept_boards`:概念板块表 - `concept_board_stocks`:概念板块成分股表 - `concept_board_quote_flow`:概念板块行情资金流向合并表 ## 开发说明 ### 添加新功能 1. 在 `pages/` 目录下创建新的页面文件 2. 使用 `st.page()` 或 Streamlit 多页面机制注册新页面 3. 在侧边栏导航中添加入口 ### 数据爬取扩展 1. 在 `data_handler/data_crawler.py` 中添加新的数据获取函数 2. 在 `data_handler/data_processor.py` 中添加相应的处理逻辑 3. 更新数据库模块支持新数据类型 ### 单元测试 ```bash python -m pytest tests/ ``` ## 注意事项 - 本项目仅供学习和研究使用 - 数据来源为公开接口,不保证数据的完整性和准确性 - 投资有风险,决策需谨慎 ## 许可证 本项目遵循开源协议,具体许可证信息请查看 LICENSE 文件。 ## 贡献者 感谢所有为该项目做出贡献的开发者! ## 联系方式 - 项目地址:https://gitee.com/simonZPF/freedom - 如有问题请在项目 Issue 中反馈