这里我们以数字资产的期货合约为例,来实现一个基于 BTC/USDT 价格指数的期货合约。
期货合约需要交易双方以约定的「份数」进行买卖,例如黄金期货,外盘通常以「盎司」为单位进行买卖,只能买卖整数倍的合约。
在期货杠杆交易系统开发的期货交易中,通常不需要支付全额费用,而只需要支付一定比例的保证金。根据保证金比例不同,期货交易的杠杆也不同。例如,10% 的保证金率就是 10 倍杠杆,5% 的保证金率就是 20 倍杠杆。杠杆可以放大收益,也能扩大亏损。
很重要的一点,如果不计算交易所提取的手续费,期货合约的买卖双方就是一个零和博弈,即所有交易方的盈利和亏损相加为 0 。
先来看期货合约系统的组成模块:
和任何其他系统一 样,当用户的订单请求到来时,首先需要对【用户系统】进行身份认证,验证完成后,确认用户所选择的期货合约是否在有效期限内,接下来就需要【账户系统】验证用户用户是否有足够的余额来作为保证金进行交易。
如果以上验证均通过,该订单请求就由【订单系统】创建成功,并进入定序系统排队等待撮合,到达【撮合引擎】后,如果完成成交,订单由【清算系统】进行清算
和我们一般见过的现货交易不同的是,用户订单成交后,同时创建一个【仓位】(你可以理解为双方签订了合约),所以期货合约系统需要一个【仓位管理模块】来管理平台上所有的用户的仓位。
市场价格在实时变动,传统的期货交易所实行「当日无负债结算」的制度,用以防范风险和保障期货市场正常流转,收盘后要求亏损的用户补足保证金。数字资产交易所一般都是 24 小时交易,无法每日结算,因此需要一个动态的【爆仓引擎】。
爆仓引擎一般也是合约交易系统开发-交易所的核心所在。爆仓引擎会根据当前市场价格实时计算所有用户的仓位权益是否降至 0 ,如果期货杠杆交易系统开发用户的仓位保证金不足,爆仓引擎就会启动爆仓流程:
l 监测用户是否设置了「自动转入保证金」,并且账户是否有足够余额;
l 如果能自动转入保证金,则自动转入,权益提高,不需要爆仓;
l 如果不能自动转入,则爆仓引擎首先接管仓位,用户对此仓位的权益归零;
l 爆仓引擎计算用户权益为 0 的价格,并按照该价格平仓。平仓是否成功取决于市场波动性和流动性。
如果市场缺乏足够的流动性,导致爆仓引擎所持有的仓位无法及时平仓,交易所本身就会承受损失。在某个期货合约周期内,交易所可以选择所有盈利用户共同分担损失,也可以优先选择高风险盈利用户强制减仓来提高流动性。
如果选择强制减仓,系统还需要一个【 ADL 自动减仓系统 】,自动减仓系统根据用户风险和盈利高低对盈利仓位排序,排在靠前的仓位更有可能被强制减仓。
合约到期后,由【清算系统】对所有仓位进行交割,按照盈亏更新账户,然后平掉所有仓位,合约交割完成。
内容来源.金色财经
以上项目信息来自于基金公司、资管公司、基金子公司、创业公司等提供给众投邦的信息资料,基金公司、资管公司、基金子公司、创业公司等对其提供信息的真实可靠性和完整准确性负责。投资者应仔细阅读理财产品的法律文件,了解项目风险和收益特征(包括系统性风险和特定产品所特有的投资风险等)。投资者应根据自身资产状况、风险承受能力选择适合自己的股权投资产品。众投邦提供的宣传推介材料仅供投资者参考,不构成众投邦的任何推荐或投资建议。投资者应审慎决策、独立承担风险。