PTrade 为什么 9:30 下单失败
开盘第一分钟委托被拒,先对这四条。
1. 你还在盘前
交易环境里 9:30 之前是盘前。before_trading_start、run_daily(time='09:15') 可以跑,但连续竞价还没开始,很多品种这时下单会失败。
分钟级:
- 回测
handle_data从 9:31 开始 - 交易
handle_data从 9:30 到 14:59
见 策略运行时间。
2. 限价小数位不对
股票 两位,转债 / ETF / LOF 三位。limit_price 多一位或少一位,柜台直接拒。见 关于限价交易的价格。
python
price = round(price, 2) # 股票
# price = round(price, 3) # 转债 / ETF
order(security, 100, limit_price=price)3. 没传限价,快照又空
交易里 order() 不传 limit_price 时,系统用快照最新价。9:30 快照还没到,委托失败,日志里会有提醒。集合竞价后几秒再下,或自己算好限价传入。
4. 后缀或代码不存在
PTrade 上交所用 .SS,不是 QMT 的 .SH。停牌、未上市、代码写错也会失败。见 .SS / .SH。
