How to Become an SOR Operator - Q&A and a video walkthrough by Dr. Lars Brünjes
On the 20th of December 2023, Dr. Lars Brünjes conducted a workshop “How to become a Smart Order Router (SOR) Operator”.
On the 20th of December 2023, Dr. Lars Brünjes conducted a workshop “How to become a Smart Order Router (SOR) Operator”. Today we present you a recording of this workshop, together with a list of questions asked by participants and answers by Dr. Lars and the Genius Yield team.
Questions and Answers
Question: Are we required to have a minimum amount of $GENS to make SOR’s
Answer: No $GENS are required. Since matching orders require collateral, one UTxO of 5 ADA value should suffice. SORs are arbitrage bots, so if they find a match with 10 ADA (provided currency is set to ADA) arbitrage, no input UTxO is needed from the wallet like for the transaction shown in the workshop. But if arbitrage is small, say 0.5 ADA then some UTxO from the bot would be needed to satisfy the minimum ADA requirements of arbitraged UTxO.
Question: What are the hardware requirements to run an SOR?
Answer: Hardware requirements are minimal if one is using a remote provider such as Maestro.
Minimum System Requirements:
- Memory: 500 MB
- CPU: 0.5vCPU (2.25 GHz CPU Base Frequency)
- Reliable and fast internet connection
Recommended System Requirements:
- Memory: 1GB
- CPU: 1vCPU (2.25 GHz CPU Base Frequency)
- Reliable and blazingly fast internet connection
In case you decide to run your own Cardano node and use the Kupo provider, the system requirements are much higher.
Question: Can we use skey and vkey generated with Hardware Wallets? Or only created by cardano-cli?
(https://github.com/vacuumlabs/cardano-hw-cli)
Answer: At the moment, only normal & extended keys such as those created by cardano-cli are supported.
Genius Yield also provides a simple Docker-based utility tool to generate payment signing keys.
Question: Has the team already tested how SORs can match orders on GY DEX with liquidity from other permissionless protocols?
Answer: This hasn’t been tested yet, but there is no technical limitation that would stop SOR operators from using liquidity from any source in the Cardano ecosystem.
There is an ongoing effort by our community to test using liquidity from different permissionless sources and use this on Genius Yield for different purposes, thus maximizing the arbitrage opportunities.
Question: Is there really any incentive to decrease the scan time from 40 secs?
Answer: Yes, there is an incentive, since this improves the effectiveness of your SOR instances.
Your SOR is competing with all the other SORs for the matches, so if you scan for matches more frequently, the more likely you find matches and submit transactions before other SOR operators, thus this increases your chances of making a profitable trade. So decreasing the scan time as much as possible increases your chances. Your matching strategy will need some time to find matches, though, so there’s a limit that depends on your chosen provider and the speed of your strategy.
Question: Can you show me how the docker config actually works? I did a test with docker and there are always 0,0 orders for tEMP/ADA I am not sure if it is because of docker or config.json. Also if possible can we use that internal tool?
Answer: There is a chapter in the SOR README dedicated to running the SOR in a docker container: README — Running the SOR using Docker
If you have any further questions, please feel free to ask these in our #discussion-sors Discord channel.
Question: Can a badly implemented strategy lose money running a SOR?
Answer: At the moment, the DEX UI only supports token pairs where one member of the pair is ADA, so you can always choose ADA as the “Currency”. If you do, then no, the SOR should never lose money. We built in a check that never submits transactions that would make you lose money. So if you lose money while ADA is the “Currency”, then you found a bug and should immediately report it.
If ADA is not the “Currency”, however, then it’s not so clear what “losing money” actually means. The bot will check that you don’t lose “Currency”, but you will always need to pay transaction fees in ADA, and it depends on the exchange rate between ADA and your “Currency” if the “Currency” you gain in a transaction outweighs the transaction fees.
Question: Does the SOR need to run in the cloud?
Answer: No, it can be run locally like how Dr. Lars ran it during the workshop.
You can run a SOR instance on your local workstation, on a physical server, in the cloud, or even on a Raspberry Pi — as long as your setup fulfills the minimal system requirements.
Question: Do you need an SOR for each token pair you want to service?
Answer: No, as a single SOR instance can arbitrage for multiple token pairs. Look at the README file present in the project repository.
Question: Where can we configure validatorRefs, strategy, scanTokens from docker envs? Can we get any description of what those params are
Answer: The description is provided in the project’s README: https://github.com/geniusyield/smart-order-router?tab=readme-ov-file#orderbot-config.
For configuration, one may either set through environment variables, as done here! or give a configuration json file such as this!
Website | Telegram | Discord | Medium | Twitter | Reddit | YouTube | Instagram
Disclaimer: The market maker bot and smart order router code is provided open source as-is, with no warranties or guarantees of any kind, either expressed or implied, and is not intended to be used as a substitute for professional investment advice. It doesn’t include official technical support. The user does not receive any investment advice from Genius Yield in connection with any trades, and no suitability review or similar of any trades or strategy is conducted by the Genius Yield team. The use of this bot is entirely at the user’s own risk. The user assumes all risks associated with the use of this bot, including but not limited to financial losses, tokens losses, loss of data, business interruption, and other unforeseen circumstances. The user is solely responsible for the final configuration and operation of this bot, and it’s recommended to seek professional trading advice before using it in mainnet.
SNEKbot by DexHunter on CARDANO
Cardano's Telegram Trading Bot live on Cardano mainnet!TRADE NOW!