# QuantTrading **Repository Path**: yxl/QuantTrading ## Basic Information - **Project Name**: QuantTrading - **Description**: QuantTrading - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2014-02-24 - **Last Updated**: 2026-07-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # A股量化交易系统 v1.0.0 基于Python PyQt6 + PyQtGraph开发的A股量化交易GUI应用原型,采用MVC架构分层设计。 ## 功能特性 - **行情中心**:A股实时行情查询,PyQtGraph K线图(MA5/MA10/MA20),鼠标缩放拖动 - **策略回测**:双均线、MACD、布林带三大经典策略,可视化参数配置,核心指标输出,CSV导出 - **模拟交易**:限价单/市价单、持仓管理、委托/成交记录、资金曲线 - **风控设置**:全局风控参数配置,个股止损/止盈,风控事件日志 - **系统日志**:分级日志展示,筛选导出 ## 技术栈 | 类别 | 技术 | |------|------| | GUI框架 | PyQt6 | | 图表渲染 | PyQtGraph | | 行情数据 | AkShare(免费开源) | | 数据处理 | pandas, numpy | | 架构模式 | MVC(严格分层) | | 界面主题 | 深色量化主题,A股红涨绿跌配色 | ## 快速开始 ### 1. 安装依赖 ```bash pip install -r requirements.txt ``` ### 2. 运行程序 ```bash python main.py ``` ### 3. 使用教程 #### 行情中心 1. 在搜索框输入股票代码(如 `000001`)或名称 2. 点击搜索结果中的股票,查看实时行情信息 3. 系统自动加载并展示日K线图,支持鼠标滚轮缩放、拖拽平移 #### 策略回测 1. 切换到「策略回测」页面 2. 输入股票代码和回测时间区间 3. 选择策略类型(双均线/MACD/布林带) 4. 配置策略参数和回测参数(初始资金、手续费率等) 5. 点击「开始回测」查看结果 6. 支持导出回测结果为CSV文件 #### 模拟交易 1. 切换到「模拟交易」页面 2. 在下单面板输入股票代码、价格和数量 3. 选择买入/卖出、限价单/市价单 4. 点击「买入」或「卖出」提交委托 5. 查看持仓管理、委托记录、成交记录和资金曲线 #### 风控设置 1. 切换到「风控设置」页面 2. 配置全局风控参数(仓位限制、止损止盈比例等) 3. 点击「保存设置」生效 4. 查看风控事件日志,支持导出 ## 目录结构 ``` ├── main.py # 程序入口 ├── requirements.txt # Python依赖清单 ├── README.md # 使用说明 ├── config/ │ ├── settings.ini # 系统配置文件 │ └── style.qss # 深色量化主题样式表 ├── view/ # 界面层(View) │ ├── main_window.py # 主窗口 │ ├── market_center.py # 行情中心页面 │ ├── backtest_page.py # 策略回测页面 │ ├── trading_page.py # 模拟交易页面 │ ├── risk_control_page.py # 风控设置页面 │ └── log_page.py # 系统日志页面 ├── controller/ # 控制层(Controller) │ ├── market_controller.py # 行情控制器 │ ├── backtest_controller.py # 回测控制器 │ ├── trading_controller.py # 交易控制器 │ └── risk_controller.py # 风控控制器 ├── model/ # 数据与策略层(Model) │ ├── data_models.py # 数据结构定义 │ ├── market_data.py # 行情数据服务(AkShare) │ └── strategies.py # 策略算法 + 回测引擎 ├── data/ # 本地数据缓存 │ ├── cache/ # 行情缓存 │ └── quant_trading.log # 运行日志 └── utils/ # 工具模块 ├── logger_setup.py # 日志系统 └── helpers.py # 通用辅助函数 ``` ## 系统要求 - Python 3.10+ - Windows / macOS / Linux - 网络连接(用于获取实时行情数据) ## 注意事项 1. **网络要求**:行情数据通过AkShare获取,需要稳定的网络连接 2. **首次运行**:首次加载可能稍慢(下载并缓存股票列表),请耐心等待 3. **数据精度**:本系统为演示原型,行情数据来自免费接口,精度仅供参考 4. **模拟交易**:所有交易行为均为模拟,不涉及真实资金 5. **策略局限**:内置策略为经典技术分析策略,实际投资需综合多种因素 6. **Tushare预留**:代码架构支持未来接入Tushare等付费数据源 ## 默认配置 | 参数 | 默认值 | |------|--------| | 初始资金 | 1,000,000 元 | | 手续费率 | 万2.5 | | 印花税率 | 千1(卖出单边) | | 单笔最大仓位 | 30% | | 单日最大亏损 | 5% | | 总仓位上限 | 95% | | 止损比例 | 5% | | 止盈比例 | 15% | ## License MIT License