不同类型交易

合约类型交易(Contract Level Trade):我方与对手方达成协议(合约),特别是场外交易,如利率互换、借贷交易、外汇(FX)等,逐笔记录,按Date执行与结束,不留下任何东西。

image-20220717180523641

持仓类型交易(Position Based Trade):债券(Bond)、股票(Equity)

持仓是指在实物交割或者现金交割到期之前,投资者可以根据市场行情和个人意愿,自愿地决定买入或卖出期货合约。而投资者(做多或做空)没有作交割月份和数量相等的逆向操作(卖出或买入),持有期货合约,则称之为“持仓”。在黄金等商品期货操作中,无论是买还是卖,凡是新建头寸都叫建仓。操作者建仓之后手中就持有头寸,这就叫持仓。

持仓交易

股票CASE

用户下一个股票订单(Order),在Price上可以有不同的策略,比如以每股不超过18块成交、不care每股多少钱等:

image-20220717180945302

券商把订单送到交易所,返回的是一个执行结果(Execution),会有多种cases,比如就以18块买入:

image-20220717181257890

或者是有部分股以更低的价格买入:

image-20220717181335017

这里可以有另一种记录方式,就是记一笔加权成交价:

image-20220717181628799

交易所会当天冻结交易的资金,并且把股票划到账户,然后在一个固定日期后(可能是T+2天)划走这笔钱。

因此,在后面两天,对于用户而言资金情况如下:

image-20220717183027213

这时候,需要有一个系统来记录这些持仓(Position)信息。一般系统的做法是首先会记录这笔交易本身的内容(7.5发生的记录),与此同时会以一些维度来汇总这笔交易的持仓到底在哪里。

如果后面再发生两笔交易:

image-20220717233441085

交易是三笔完全独立的记录,每一条记录只是解释了买什么股票、买多少等信息。但是在Position中不能以单独一笔交易来确定什么,需要把不同交易组合到持仓里,才知道现在拥有多少、到底赚钱还是亏钱:

image-20220717233514258

这个就是持仓类交易跟合约类最大的不同之处。

债券CASE

跟股票同理,用户下了两笔订单:

image-20220717233805200

在Position表中就应该根据两笔订单组合更新持仓情况:

image-20220717233856392