https://github.com/jorben/etf-grid-design
一个基于日线数据和专业算法的ETF网格交易策略参数设计工具,帮助投资者科学制定网格交易策略。
https://github.com/jorben/etf-grid-design
etf grid-trading quantitative quantitative-trading
Last synced: 8 months ago
JSON representation
一个基于日线数据和专业算法的ETF网格交易策略参数设计工具,帮助投资者科学制定网格交易策略。
- Host: GitHub
- URL: https://github.com/jorben/etf-grid-design
- Owner: jorben
- License: apache-2.0
- Created: 2025-09-20T16:38:59.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2025-09-28T17:27:53.000Z (9 months ago)
- Last Synced: 2025-09-28T18:10:52.967Z (9 months ago)
- Topics: etf, grid-trading, quantitative, quantitative-trading
- Language: Python
- Homepage: https://etfer.top
- Size: 2.17 MB
- Stars: 77
- Watchers: 0
- Forks: 23
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# ETF网格交易策略设计工具
一个基于日线数据和专业算法的ETF网格交易策略参数设计工具,帮助投资者科学制定网格交易策略。
## 🎯 功能特点
- **智能分析**:基于tushare数据(或akshare接口,详见**feat_akshare**分支),分析ETF的历史价格波动特征
- **策略设计**:根据用户设定的交易频率,自动生成最优网格参数
- **适应性评估**:综合评估ETF对网格交易策略的适应性
- **风险控制**:提供详细的风险评估和资金管理建议
- **动态调整**:根据市场环境变化提供策略调整建议
- **可视化展示**:直观展示价格区间、网格分布和预期收益
## 🌟 页面展示

## 🏗️ 技术架构
### 后端
- **框架**:Python + Flask
- **数据**:tushare金融数据接口
- **分析**:pandas + numpy 数据处理
- **算法**:专业量化分析算法
### 前端
- **框架**:React + Vite
- **UI**:Tailwind CSS 现代化设计
- **图表**:Recharts 数据可视化
- **图标**:Lucide React 图标库
## 🚀 快速开始
### 方式一:Docker部署(推荐)
#### 环境要求
- Docker
- Docker Compose(可选)
#### 一键部署
```bash
# 1. 克隆项目
git clone https://github.com/jorben/etf-grid-design.git
cd etf-grid-design
# 2. 配置环境变量
cp deploy/.env.production .env
# 编辑.env文件,配置TUSHARE_TOKEN
# 3. 一键部署
docker-compose up -d
```
#### 访问应用
- **Web应用**: http://localhost:5001
- **API接口**: http://localhost:5001/api/
- **健康检查**: http://localhost:5001/api/health
### 方式二:本地开发
#### 环境要求
- Python 3.8+
- Node.js 16+
- tushare API token(没有tushare积分可以使用**feat_akshare**分支版本,TUSHARE_TOKEN随便设个值)
#### 开发步骤
```bash
# 1. 克隆项目
git clone https://github.com/jorben/etf-grid-design.git
cd etf-grid-design
# 2. 配置环境(必须)
复制环境变量模板并配置真实的tushare token:
cp .env.example .env
# 编辑.env文件,必须配置有效的TUSHARE_TOKEN
# 获取token:https://tushare.pro/register
# 3. 安装依赖
# 安装Python依赖
uv sync
# 安装前端依赖
cd frontend && npm install
# 4. 启动服务
# 启动后端服务(端口5001)
uv run python backend/app.py
# 启动前端服务(端口3000)
cd frontend && npm run dev
# 5. 访问应用
# 开发环境:http://localhost:3000
```
## 📊 核心功能
### 1. ETF分析
- 获取ETF基本信息和最新价格
- 分析近3个月的历史数据
- 计算日振幅、波动率、趋势等关键指标
### 2. 网格策略计算
- **价格区间**:基于历史波动确定合理的网格上下边界
- **网格数量**:根据交易频率自动计算最优网格数
- **资金配置**:科学的仓位管理和资金分配方案
- **收益预估**:预测网格交易的潜在收益和风险
### 3. 适应性评估
- **振幅评估**:判断日均振幅是否适合网格交易
- **波动率评估**:分析价格波动水平对策略的影响
- **流动性评估**:确保有足够的交易量支持网格策略
- **趋势评估**:识别市场是否处于震荡状态
### 4. 动态调整建议
- **波动率上升**:扩大区间、减少网格、降低仓位
- **波动率下降**:缩小区间、增加网格、提高仓位
- **趋势市场**:调整网格中心、加强风险管理
## ⚠️ 重要说明
### 数据要求
- **token获取**:请访问 https://tushare.pro/register 注册并获取API token
- **数据质量**:所有分析结果基于tushare提供的真实市场数据
### 风险提示
1. **历史数据限制**:分析基于历史数据,不能保证未来表现
2. **市场风险**:网格交易仍存在亏损风险,需谨慎操作
3. **流动性风险**:确保ETF有足够的流动性支持频繁交易
4. **参数调整**:市场环境变化时需要及时调整策略参数
## 🤝 贡献指南
1. Fork 项目
2. 创建特性分支 (`git checkout -b feature/amazing-feature`)
3. 提交更改 (`git commit -m 'Add some amazing feature'`)
4. 推送到分支 (`git push origin feature/amazing-feature`)
5. 创建 Pull Request
## 📄 许可证
本项目采用 Apache-2.0 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情
## 📞 联系方式
- 问题反馈:请使用 GitHub Issues
---
**免责声明**:本工具提供的分析结果仅供参考,不构成投资建议。投资有风险,入市需谨慎。