Salut !
En gros, le robot se base sur les différentiels de prix ou spread (différence entre bid et ask). Dans les exchanges, il arrive parfois dans le carnet d'ordre qu'un prix de vente soit plus haut que le prix d'achat, lors des grandes annonces où la volatilité est grande par exemple. Le robot doit être suffisamment rapide pour régler en quelques secondes les ordres simultanées tout en suivant les fortes variations de prix pour réajuster ces prix. En fait, un compromis doit être fait pour choisir le bon spread en fonction de la rapidité de ta machine.
Cette astuce peut être extrapolée à plusieurs exchanges où les différences de prix entre eux peuvent être parfois conséquentes (En prenant en compte les différents frais !).
Bref cette astuce aussi vieille que la finance s'appelle le market making, elle permet un réajustement des prix et un marché plus liquide (comprendre, les échanges se font plus fréquents). Dans les faits et même en présence de ressources performantes, la probabilité qu'un tel événement subsiste reste faible même en période de forte volatilité. Car généralement, tu auras toujours quelqu'un de plus rapide que toi car ces serveurs sont plus près matériellement du broker (ça se compte en latence, si ton ping est supérieur à 100 ms du broker, oublie). C'est d'ailleurs une composante importante des mécanismes de High Frequency Trading de la finance traditionnelle.
Il existe aussi un risque de perte conséquente lors de l'utilisation du programme aux heures de grande volatilité (Et c'est là ou tu as le plus de chance que la probabilité précédente arrive surtout en "cross" exchange)
A mon humble avis, si c'est en gratuit sur github, c'est que ça rapporte rien surtout que dans le même exchange, il y a aujourd'hui des mécanismes qui pâli à ce problème. Plus d'infos ici :https://github.com/ctubio/Krypto-trading-bot/blob/master/doc/MANUAL.md#what-is-market-making