BitMEX Market Maker翻译-BitMEX做市机器人(3)完结篇

brysj22952(45)
Published in
#cn
Words
531
Reading
3 min
Listen
Play
9y

操作概述

这个做市程序的工作原理如下:

  • MM追踪最后的报价和喂价,来决定自己的报价价格
  • 根据用户设置的参数,机器人确定下发相应的订单
    • 如果设置了settings.MAINTAIN_SPREADS参数,程序将根据价差设置(不太明白是什么意思)
    • 否则,价差是由固定的间隔确定
  • 如果用户指定了价位限制,则如果当前价位超出了限制,机器人就不再报价了
  • 这些订单描述与当前其它机器人进行了比较:
    • 现有订单可以优化和修改
    • 否则就生成一个新订单
    • 取消其它的订单
  • 机器人打印相关交易信息以及总金额的变化

频率限制

默认情况下,API调用频率限制是300个请求/每5分钟间隔(平均1次/秒)。

通过WebSocket技术和批量操作,会大大减少API的调用压力。对API的大多数调用都被视为一次请求,除了:

  • 批量订单操作,比如修改和创建:每个订单视为0.1个请求。例如,批量创建16个订单将消耗2个请求。
  • 批量订单取消:不管多少,均视为消耗1个请求。它不受频率的限制,取消操作总会成功的。此程序在出现错误时或者中断时会取消所有的订单。

如果你想解除速率限制,可反馈给网站支持人员,进行沟通授权。在大多数情况下,我们乐意降低对用户的速率限制。

常见问题

你可能遇到如下的问题:

TypeError: init() got an unexpected keyword argument 'json'

这是由于requests版本过低造成的,可运行pip install requests命令更新一下即可。

兼容性

此模块与Python 2和3兼容。

更多兼容性信息可参考:http://python-future.org/compatible_idioms.html

BitMEX Market Maker翻译-BitMEX做市机器人(3)完结篇 | Ecency