Bot coordination

Author: fengtality 0x352

Original Post Date: 10 Jan 2022

Many users in the Hummingbot community have asked CoinAlpha to explore whether Hummingbot instances run by different users can coordinate with one another in some way.

The general concept is that in a world where each trading bot is competing with one another, if certain bots can coordinate with each other, they may gain an advantage over other bots who are not coordinating.

This idea is in exploratory stages. Below are some related items:

Author: cgambit 0xdEa

We would be ecstatic to see this vision of market maker bots coordination come into fruition in the near future.

Imagining a flock of hummingbirds in the sky, with perfectly coordinated & super fast movements, almost magical & impossible to comprehend how they did it.

When Hummingbot acquired this superpower, market making game would be changed for another levels ahead once again!

For the mean time, we are excited to try out RogerThat component as this certainly opens up new strategies that can respond to commonly used market indicators or signals.

As for the charms, well, we would be delighted to unlock those.

Keep up the good work! Cheers!

Author: Lefty 0x9F8

Definitely an interesting idea. I am however concerned many of possible cooperation features could be quite easy to exploit by custom scripts or other bots. One coordination feature I find useful is communication of mid prices between users bot instances running on different exchanges to achieve a more precise price signal.

Author: klpanagi 0xfba

The idea is very interesting! Remote control and monitoring of bots will be a great feature!

However, technically, direct websocket connections are peer-to-peer and will require a lot of effort to coordinate a number of bots. I would investigate implementation of a distributed but centralized communication architecture to support the development of various topologies and schemes.

Below is an example of the Architecture i am thinking of. In this architecture, as you can see in the figure, we can even have standalone “Market_Sync Bots”, which will “feed” market data to more than one bot (in the swarm) via a single connection.

Communication and messaging middlewares, such as Redis, MQTT Brokers and AMQP Brokers, can be used. For this case, i would recommend Redis, for high-performance on even low-power devices, such as the Raspberry Pi boards.