「原理」
由于交割期货合约本身的性质,最迟在合约到期的当天,它的价格必然会和现货价格相同。所以当期货合约和现货之间存在价差的时候,就可以进行无风险套利,套利机会多出现在市场波动率大的时候。
基差=现货价格-期货价格
当基差为负,且「基差绝对值>市价买卖手续费+滑点成本」时
现货买进、期货做空(正向套利)
基差缩小或者=0时,平仓
「举个理论例子」
现在现货价格为10元,期货价格为15元,基差=-5
那么我们在此时买入10元即1份现货,并且用买的这份现货作为保证金做空同等数量期货,总共投入10元本金
等到某个时间点,期货现货价格一样(无论涨跌,主要看价差)
如都变成了20元,那么我们10元买入的现货就是赚了10元;我们15元做空的期货,亏了5元;总体收益是5元
如都变成了1元,那么我们10元买入的现货就是亏了9元;我们15元做空的期货,赚了14元;总体收益是5元
举例是期货价格高于现货,叫正向套利
假设期货价格低于现货的时候,可以进行套利吗?理论上也是可行的(现货借币卖出,同时拿借的币一部分在期货做保证金做多同样数量),但这种期货价格低于现货的贴水行情不怎么出现,而且操作比较麻烦,有潜在风险(借币有利息,基差较长时间不回归付出利息将非常多),所以
⚠️我们只做正向交易,即期货价格高于现货价格,以USDT为本位
「实操流程」
步骤一
实时监控基差,当发现期现货价差足够大时(百分比),即出现套利机会(具体这个价差多少我们后边单独讨论)
步骤二
在「币币交易」中使用USDT购买1BTC,此时在「币币账户」有1BTC
步骤三
进行资金划转,将1BTC划转到「交割/永续合约账户」,转到交割还是永续取决于你所观察的基差对是现货和什么合约对比,此时在「合约账户」有1BTC
步骤四
进行合约交易,做空BTC;做空的数量和划转到合约账户里的BTC数量一致
️使用全仓模式,杠杆选择10倍️(如果选择逐仓模式,一定要把自动追加保证金开启,保证做空数量和账户里币的数量一致,开10x、20x没啥影响)
开仓后保险起见,可以检查合约持仓信息里面,预估强平价应该基本是0,也就是不会爆仓
步骤五
等待基差缩小,价差缩小到让我们满意的大小时,就是期现套利结束的时候,不一定非要等到合约交割日
步骤六
当期现货价差小于xx%时,可以考虑将合约平仓。在平仓之后我们「合约账户」获得的并不是USDT,而是BTC,还需要将这部分资金划转到「币币账户」,并将其卖出,换成USDT。
这样就完成了一次期现套利,我们在「币币账户」的USDT增加了。
「期现货价差讨论」
以OKEX交易所费率作为参考
️手续费会侵蚀套利的收益。期货(交割合约)开仓、平仓的费率是 0.05%(Lv1吃单)。在币币交易中USDT买BTC的费率 0.15%(Lv1吃单),所以总体成本约为0.05%*2+0.15%*2=0.4%
️还会造成收益受损的是滑点,下单的点位和最后成交的点位有差距,最终导致的收益减少。这个要在实际操作中慢慢总结经验,总结各交易所各交易对的滑点
️还有一个是OKEX合约的穿仓机制,这侵蚀收益。穿仓分摊会从盈利用户的盈利里面扣除。如果盈利为3%,分摊比例10%,则盈利就会变成2.7%。
综上:期现价差((高价-低价)/低价)大于0.4%才有机会
「计划」
步骤一
基差图,在火币、OKEX两交易所设置多组期现货交易对(如BTC现货和永续为一对、BTC现货和当周交割合约为一对、BTC现货和季度交割合约为一对、ETH现货和...),用历史数据得到对应组的基差图;
分析基差图找到波动最大且相对规律的期现货交易对,作为量化交易标的
步骤二
实时监控标的交易对的基差数据,当基差达到标准时,进行操作
步骤三
等待交易对价差变小进行平仓,并币币交易转为USDT本位,完成一次套利
步骤四
根据实际手续费/滑点等利润侵蚀的比例优化基差标准,同时优化技术提高响应速度减少误差
同理应用于跨期套利(BTC币本位),且跨期套利可以更加灵活,手续费低
微信:kv987654321(备注)