# futures_trading_system **Repository Path**: basc_developers/futures_trading_system ## Basic Information - **Project Name**: futures_trading_system - **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-07-07 - **Last Updated**: 2026-07-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 海龟交易管理系统 (Turtle Trading System) 基于海龟交易法则的期货交易管理系统,支持国内期货品种(白糖、螺纹、豆粕等)的自动化指标计算、交易计划生成、持仓监控、回测与绩效分析。 技术栈:**Laravel 10 (PHP) + Vue 2 + Element UI + MySQL + ECharts** ## 功能特性 - **海龟交易引擎**:ATR 计算、20/55 日突破信号、N 值仓位管理、2N 止损、0.5N 加仓、10 日退出 - **行情管理**:每日 OHLC 录入、CSV 批量导入、自动触发指标计算 - **交易计划**:自动生成做多/做空/等待信号、突破价、止损价、加仓阶梯、退出价、风险合规校验 - **持仓管理**:开仓/加仓/平仓、实时浮盈、止损/加仓点数距离、历史持仓 - **资金曲线**:权益曲线、回撤曲线、收益曲线、资金快照 - **盈亏分析**:胜率、盈亏比、月度盈亏柱状图、盈亏占比饼图、交易明细 - **参数配置**:全局/分品种参数、突破周期、风险比例、ATR 周期、最大单位 - **回测系统**:历史数据回测、夏普比率、最大回撤、资金曲线可视化 - **认证**:Laravel Sanctum Token 认证 ## 项目结构 ``` futures_trading_system/ ├── backend/ # Laravel 10 后端 API │ ├── app/ │ │ ├── Http/Controllers/Api/ # 11 个控制器 + ApiResponse Trait │ │ ├── Models/ # 11 个 Eloquent 模型 │ │ └── Services/TurtleEngine.php # 海龟交易核心算法引擎 │ ├── database/ │ │ ├── migrations/ # 10 张业务表迁移 │ │ └── seeders/ # 种子数据(3品种+120天行情) │ └── routes/api.php # 44 个 RESTful API 路由 ├── frontend/ # Vue2 前端 │ ├── src/ │ │ ├── api/ # axios 封装 + API 模块 │ │ ├── components/charts/ # ECharts 基础组件 │ │ ├── layouts/ # 主布局(侧边导航) │ │ ├── router/ # 路由 + 导航守卫 │ │ ├── store/ # Vuex(user/account 模块) │ │ └── views/ # 10 个页面组件 │ └── vue.config.js # devServer 代理到后端 └── 海龟交易管理系统设计.txt # 原始设计文档 ``` ## 快速启动 ### 1. 后端 ```bash cd backend # 配置数据库(已默认配置,如需修改编辑 .env) # DB_DATABASE=futures_trading_system DB_USERNAME=root DB_PASSWORD=123456 # 创建数据库 mysql -u root -p -e "CREATE DATABASE IF NOT EXISTS futures_trading_system DEFAULT CHARACTER SET utf8mb4;" # 迁移 + 种子数据(自动创建用户、3个品种、120天模拟行情、计算指标) php artisan migrate --seed # 启动服务 php artisan serve --port=8000 ``` 后端运行于 `http://127.0.0.1:8000` ### 2. 前端 ```bash cd frontend npm install npm run serve ``` 前端运行于 `http://localhost:8080`,已配置代理将 `/api` 转发到后端 8000 端口。 ### 3. 登录 默认账号:`admin@turtle.com` / 密码:`admin123` ## 默认参数(海龟法则) | 参数 | 默认值 | |------|--------| | 20 日突破入场 | 开启 | | 55 日突破入场 | 开启 | | ATR 周期 | 20 | | 风险比例 | 1% | | 加仓间隔 | 0.5 N | | 止损倍数 | 2 N | | 退出周期 | 10 日 | | 最大加仓单位 | 4 | | 初始本金 | 50000 元 | ## API 概览 | 模块 | 端点 | |------|------| | 认证 | `POST /api/login` `POST /api/register` `POST /api/logout` | | 品种 | `GET/POST/PUT/DELETE /api/products` | | 行情 | `GET/POST /api/daily-prices` `POST /api/daily-prices/batch` | | 指标 | `GET /api/indicators/latest/{product}` `GET /api/indicators/{product}/history` | | 交易计划 | `GET /api/trading-plan/{product}` `GET /api/trading-plan/all` | | 持仓 | `GET/POST /api/positions` `DELETE /api/positions/{id}`(平仓) `GET /api/positions/history` | | 账户 | `GET /api/account` `GET /api/equity-curve` `POST /api/account/update-capital` | | 统计 | `GET /api/stats/summary` `GET /api/stats/monthly` `GET /api/stats/trade-list` | | 参数 | `GET/PUT /api/params` `POST /api/params/reset` | | 回测 | `POST /api/backtest/run` `GET /api/backtest/tasks/{id}/chart` | | 导入 | `POST /api/import/csv` `POST /api/import/preview` | ## CSV 格式 ``` 日期,开盘,最高,最低,收盘,成交量 2026-07-01,5300,5340,5280,5320,120000 2026-07-02,5325,5360,5310,5350,98000 ```d ## 核心算法说明 - **ATR (N值)**:True Range 的 Wilder 平滑移动平均 - **入场信号**:收盘价突破过去 20 日最高(做多)/跌破 20 日最低(做空) - **仓位单位**:`floor(账户权益 × 风险比例 / (N × 合约乘数))` - **止损价**:开仓价 ± 2N - **加仓阶梯**:开仓价 ± 0.5N × 单位数 - **退出价**:10 日最低(多)/最高(空)