答应大家来个大的,整理了好久,修修改改终于定稿。最早一版的三角套利有很多问题,历经一个月的优化,至少不是亏钱机器了。
众所周知,目前 cex 的三角套利空间已经非常小,最初选择这个也是用来作为入门训练,现在大概年化可以优化到 4−6%。 只能说是给其他策略做基础。
前提条件:
1. 手续费压到最低,maker/taker:0.011%/0.023%
2. 只做部分币种,选币策略不会公开
3. 目前只测试了 taker 策略
整体框架:
1. 获取 BN 交易数据
2. 数据清洗及处理
3. 策略建模
4. 模拟盘
5. 实盘交易
主要包:
1. ccxt:加密各个交易所的一体化包
2. backtrader:之前推过的回测框架
3. matplotlib:绘制动态可视化图表
4. threading:实现多线程
第一步:获取 BN 交易数据
websocket 获取实时 tick 数据,没啥难度
第二步:数据清洗及处理
测其他策略的时候因为和 backtrader 数据格式不统一需要额外处理。三角套利只做了一些简单的计算就直接放在模型里搞。
第三步:策略建模
整体思路是净利润率大于 0.4%(也可以调整成其他值)即可触发。
首先遍历所有能构成三角套利的组合,根据条件剔除不符合条件的代币,然后选择基础币种(BTC, USDT, USDC, ETH),四个基础币种有 6 种组合,分为 6 个线程进行处理。
以 BTC 和 ETH 作为基础币种为例,可分为正向套利:ETH -> ALT -> BTC -> ETH 和反向套利:ETH -> BTC -> ALT -> ETH。
使用 threading 多线程寻找合适的交易对。
设置买入点和卖出点:
中间还有一些简单的风控,就不具体介绍了。
第四步:模拟盘
框架搭好后就是疯狂调参炼丹,跑了一下模拟盘,几乎没有滑点。
第五步:实盘
直接用 ccxt 设置好自己的账户就可以实盘交易。我没有实盘跑,因为现在手续费还没处理好,等谈好了或许会跑一下看看,至少不是个亏钱策略。
手机上没法直接分享代码,我写的屎山就不拿出来丢人啦。后面来研究能恰到钱的策略,也会每天持续分享一些基础来巩固知识。欢迎大佬们交流讨论。
今天在咖啡店等朋友,把君主论翻了翻,确实是本传世好书,学到了很多,明天整理一下脑图分享出来。
晚安大家😴
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。