【PTrade】PTrade如何进行盘后固定价委托?after_trading_order()完整教程

本方案由++EasyQuant AI++++量化助手++ 提供。

问题背景

普通股票委托主要在盘中执行,而盘后固定价交易可在指定时段内提交委托。PTrade 提供 after_trading_order() 接口,可用于提交股票盘后固定价买卖委托。

实现思路

  • 使用 run_daily() 在盘后时段执行策略函数。

  • 通过 get_snapshot() 获取最新价格。

  • 以最新价作为盘后固定价委托价格。

  • 记录订单编号,避免重复提交。

完整代码示例

复制代码
def initialize(context):
    g.security = "510300.SS"
    g.order_amount = 100
    g.has_ordered = False

    set_universe([g.security])

    # 盘后指定时间运行
    run_daily(place_after_market_order, time="15:15")


def place_after_market_order(context):
    if g.has_ordered:
        log.info("今日已提交盘后委托,不重复下单")
        return

    snapshot = get_snapshot(g.security)

    if snapshot is None:
        log.info("未获取到行情快照")
        return

    latest_price = snapshot[g.security].get("last_px", 0)

    if latest_price <= 0:
        log.info("最新价格异常,不提交委托")
        return

    # 正数买入;负数卖出
    order_id = after_trading_order(
        g.security,
        g.order_amount,
        float(latest_price)
    )

    if order_id:
        g.has_ordered = True

        log.info(
            "盘后固定价委托已提交:代码=%s,数量=%d,价格=%.2f,订单=%s"
            % (
                g.security,
                g.order_amount,
                latest_price,
                order_id
            )
        )
    else:
        log.info("盘后固定价委托提交失败")


def before_trading_start(context, data):
    # 每个交易日重置标记
    g.has_ordered = False


def after_trading_end(context, data):
    log.info("当日策略运行结束")

如何撤销盘后委托?

复制代码
def cancel_after_market_order(order_id):
    after_trading_cancel_order(order_id)
    log.info("已提交盘后撤单请求:%s" % order_id)

注意事项

  1. after_trading_order() 仅支持 PTrade 股票交易模块。

  2. 盘后固定价委托需要传入 entrust_price,不能省略。

  3. 正数数量表示买入,负数数量表示卖出。

  4. 委托提交成功不等于最终成交,应继续查询订单状态。

  5. 实际可交易时段和业务权限以券商配置为准。

总结

PTrade 盘后固定价委托适合用于盘后调仓、ETF 配置和收盘后策略执行。使用定时任务、行情校验和每日下单标记,可减少重复委托风险。

相关推荐
筝筝ba13 分钟前
1988 NDX收盘价格复盘
科技·ai
_HAIHUI_1 小时前
WorkBuddy体验
ai
一航jason2 小时前
Android平台推理框架及试用场景模型对比
android·人工智能·ai·架构·ai编程·llama
一航jason2 小时前
Android 端侧大模型推理框架对比
android·人工智能·ai·ai编程·llama·ai-native
科技每日热闻3 小时前
创业公司需要弹性可伸缩的 GPU 算力,如何规避大额前期硬件投入?
ai
武汉大学-王浩宇3 小时前
Autodl配置claude code教程
ai
quantdash_cc5 小时前
股票历史数据为什么比实时行情更重要?回测结果失真的根源可能就在 K 线数据
开发语言·python·数据分析·量化交易·股票数据·quantdash
VIP_CQCRE5 小时前
Claude Code 接入 NanoBanana MCP:让 AI 编程助手直接完成图片生成与编辑
ai·mcp·claude code·ace data cloud