PTrade
Python 股票量化,支持两融 股票
PTrade 是一款面向 A 股市场的机构级量化交易平台,用 Python 编写策略,引擎按事件驱动自动执行。它把「写策略 → 回测验证 → 实盘交易」串成一条流水线,既能做日线级别的低频选股,也能做分钟、tick 级别的日内和套利。对于熟悉 Python 的交易者,PTrade 是把研究逻辑快速落地为自动交易的高效工具。
本手册把 PTrade 量化开发拆成若干章节,从平台机制、策略框架、函数库,到回测与两融、期货实战,每章都配可复制的示例代码,照着写就能跑起来。
适用市场
- A 股 / ETF / 可转债 / 国债逆回购:PTrade 的主战场,普通买卖、两融、打新、ETF 申赎全覆盖。
- 期货投机(中金所股指、国债期货等):支持开平仓回测与实盘,T+0 双向。
- 港股通、港美股等非 A 股标的不在本手册范围内。
核心能力一览
| 能力 | 说明 | 对应章节 |
|---|---|---|
| 事件驱动框架 | initialize / before_trading_start / handle_data 等事件函数 | 策略结构与事件 |
| 股票交易函数 | order / order_target / order_value 等下单与撤单 | 股票交易函数 |
| 行情与数据函数 | get_history / get_price / get_snapshot / get_fundamentals | 获取信息函数 |
| 融资融券 | 担保品买卖、融资买入、融券卖出、合约与额度查询 | 融资融券函数 |
| 回测调参 | 基准、佣金、滑点、成交比例、底仓设置 | 策略回测 |
| 实战策略 | 双均线、MACD、日内 T+0、定时任务、期货双均线 | 策略示例 |
| 期货与定时任务 | 开平仓、主力合约、run_daily / run_interval / tick_data | 期货专用与定时任务 |
三大模块
PTrade 客户端把量化工作分成三个模块,一个策略从想法到实盘通常依次经过:
- 研究:在线 Jupyter 环境,可自由探索数据、验证因子,调用
get_history/get_fundamentals等。 - 回测:用历史数据驱动策略,输出收益曲线、评价指标和逐笔日志,验证逻辑是否赚钱。
- 交易:把回测过的策略接入实盘账户,引擎按事件自动下单,支持日 / 分钟 / tick 三档频率。
同一份策略代码可在回测和交易之间无缝迁移。部分函数(如
set_commission、set_slippage)只在回测可用,实盘交易的成本由真实柜台扣除;用is_trade()可在代码里区分当前场景。
运行频率速览
| 频率 | 触发周期 | 典型场景 |
|---|---|---|
| 日线 | 每个交易日一次(回测 15:00、交易尾盘默认 14:50) | 低频选股、月度调仓 |
| 分钟 | 每根分钟 K 线结束 | 趋势跟踪、日内择时 |
| tick | 每 3 秒一次(仅交易) | 抢涨停、做 T、套利 |
策略代码速览
def initialize(context):
g.security = '600570.SS'
set_universe(g.security)
def before_trading_start(context, data):
# 盘前获取最近 20 日收盘价
g.close = get_history(20, '1d', 'close', g.security)['close'].values
def handle_data(context, data):
ma5 = g.close[-5:].mean()
ma20 = g.close[-20:].mean()
if ma5 > ma20 and get_position(g.security).amount == 0:
order_value(g.security, context.portfolio.cash)
log.info('金叉买入')
elif ma5 < ma20 and get_position(g.security).enable_amount > 0:
order_target(g.security, 0)
log.info('死叉清仓')
- 全局变量挂在
g上、跨函数共享;账户和持仓信息从context读取。 - 下单用
order / order_value / order_target系列;order_target在实盘要注意持仓同步延迟。 - 行情数据用
get_history取历史、data[security]取当前周期、get_snapshot取实时快照。
学习路径
- 了解平台机制与运行频率 → 平台入门与运行机制
- 掌握事件框架与核心对象 → 策略结构与事件
- 学会下单与撤单 → 股票交易函数
- 会用行情与数据 API → 获取信息函数
- 融资融券策略 → 融资融券函数
- 回测调参与验证 → 策略回测
- 实战策略抄起来就能改 → 策略示例
- 期货与定时任务进阶 → 期货专用与定时任务
左侧导航列出了本手册的全部章节,随时可以跳转查阅。
📚 PTrade 操作手册(8 章)
函数参考
股票交易函数
PTrade 股票下单 API:order / order_target / order_value / order_target_value / order_market / cancel_order,以及订单查询、tick 下单、IPO 申购、盘后委托与 ETF 申赎。
获取信息函数
PTrade 行情与数据 API:get_history / get_price 历史行情、get_snapshot 实时快照、get_fundamentals 财务数据、指数与板块成分、证券属性过滤,以及 MACD/KDJ 等指标计算。
融资融券函数
PTrade 两融交易 API:担保品买卖 margin_trade、融资买入 margincash_open、融券卖出 marginsec_open、卖券还款、买券还券、直接还款还券,以及合约、额度、信用资产查询。
交易与回测
💡 服务
看懂了还是不会用?交给我们