创建持仓数据库对象,应该在调用第三方订单接口下单前还是后

81次阅读
没有评论

这是一个非常关键的设计问题。根据交易系统的常见最佳实践,强烈建议在调用第三方订单接口“之前”就创建持仓数据库对象(或至少预留记录),但需要配合一个明确的“状态机”来管理其生命周期。

这样做的核心原因是:保证本地数据记录的先发性和完整性,以应对异步、可能失败的外部操作。

📊 为什么要在“下单前”创建?

下表对比了“下单前”与“下单后”创建的利弊:

时机 优点 缺点与风险 结论
下单前创建 1. 本地记录始终存在:任何操作都有迹可循。
2. 立即获得position_id:可用于关联订单、风控等。
3. 状态驱动:通过状态字段清晰跟踪生命周期,易于处理异步通知和异常。
可能产生“幽灵持仓”(下单请求最终失败)。 推荐。通过状态机可完美管理“幽灵持仓”,利远大于弊。
下单后创建
(等异步通知)
理论上可保证持仓记录100%对应成功订单。 1. 数据空洞期:下单后到通知前,系统无记录,难以追踪、管理、展示。
2. 关联困难:订单回调处理逻辑复杂,需反向关联和创建持仓。
3. 异常处理复杂:若通知丢失,持仓永远无法创建。
不推荐。会导致系统状态不完整,增加复杂度。

 

正文完
 0
bdspAdmin
版权声明:本站原创文章,由 bdspAdmin 于2026-01-26发表,共计464字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)

摆渡资源站

文章搜索
一言一句话
-「
热门文章
某个货币持仓增长了一倍,但是 jing流入没有增加多少,为啥

某个货币持仓增长了一倍,但是 jing流入没有增加多少,为啥

  这通常是因为该货币的市值(价格)上涨抵消了持仓量的增加,或者存在某些“非交易性”的变动。 简单来...
2026比特币稳赚指南:顶级加密交易策略全揭秘!

2026比特币稳赚指南:顶级加密交易策略全揭秘!

    关键要点 定投(DCA):仍是比特币长期积累的低风险和纪律性策略。 趋势交易和波段...
使用Java类库ta4j计算基金的布林轨

使用Java类库ta4j计算基金的布林轨

ta4j简介 对于做金融分析的从业者而言,python的ta-lib是不可或缺的技术分析库,具有简单易用、功能...
全真早晚功课简介

全真早晚功课简介

         道教的斋醮仪式很多,主要的日常宗教活动是早晚功课经。凡是道教徒每天都要上殿唪诵,所...
吕祖朝科

吕祖朝科

  举步朝金阙    飞身谒玉京  天外琳琅响    齐举步虚声   步虚  宝座临金殿    霞光...
最新评论
333985 333985 每天都在战争,希望2026和平.
最新文章
普通异步、守护定时和关键定时 线程池

普通异步、守护定时和关键定时 线程池

  这段配置通过区分普通异步、守护定时和关键定时三种模式,很好地覆盖了后端开发中的典型并发场景。 以...
同步和非阻塞关系

同步和非阻塞关系

背景 同步(Synchronous):意味着“内核拷贝数据到用户空间”这个动作,必须由用户线程自己来完成。 非...
nio当数据来了,是由哪个线程读取的

nio当数据来了,是由哪个线程读取的

背景   多路复用:线程调用 selector.select()。这个方法会询问内核:我管辖的这一千...
nio的线程是什么?

nio的线程是什么?

背景 IO 的各种流是阻塞的。这意味着,当一个线程调用 read() 或 write()时,该线程被阻塞,直到...
女生的生理期和非生理期的对于男生的态度差别好大,连性兴趣都变了

女生的生理期和非生理期的对于男生的态度差别好大,连性兴趣都变了

  这是一个非常普遍且具有生物学依据的观察。女生的这种“判若两人”,其实背后有一套非常精密的激素驱动...