What is a Trading Bot?
In this article we’re going to give you the lowdown on trading bots, specifically crypto trading bots. Simply put a trading bot is a computer program that trades for you based on a set of instructions. Simple enough right? Trading bots and algorithmic trading are very prevalent in the traditional stock market and perform around 70% of all trades conducted in the United States.
In the world of crypto, bots have been present since the days of Mt. Gox. They are getting more and more advanced as time goes on. Some exchanges are even advertising faster connection speeds for so called “high frequency” traders (crypto bots), for whom fractions of a millisecond in speed advantage can be turned into millions of dollars. Eric Wall, who formerly worked as a specialist in cryptocurrency and blockchain at Cinnober, a financial technology company which was acquired by Nasdaq, was quoted saying that “[trading bots are] big business, everyone I’ve been speaking to that runs an exchange mentioned being approached by Wall Street types [with requests for fast lanes for trading bots].”
Crypto bots aren’t just for large institutional investors with millions of dollars, they can also be used by day traders and small scale investors to profit off the same strategies used by the big whales. In summary, crypto trading bots are used by different types of investors looking to gain an edge in the volatile crypto markets.
The Nitty Gritty on How Trading Bots Work
Most crypto trading bots can be broken down into three main parts:
- Signal Generator
- Risk Allocation
Let’s dive deep so we can get to understand these three components.
This is where the bot makes predictions and identifies potential trades or arbitrage opportunities. Data is fed into the signal generator it uses technical analysis, fundamental analysis, or other methods to churn out buy or sell recommendations. The signal generator is really about automating the method of analysis or opportunity vetting that a trader would normally do manually, so it can be done at scale.
This part of the crypto trading bot takes the buy or sell recommendation and decides how much capital to allocate to this trade and if the trade should be bought in one block or averaged in.
This is the part that actually buys or sells crypto for you. Execution is tricky, as one doesn’t want to get an unfavourable price by moving the market or getting the timing wrong.
Each part of the crypto trading bot (signal generator, risk allocation and execution) must have its own algorithm and optimization processes. Each component is integral to executing trades profitably.
Why Bots over Humans?
There are four main reasons to pick a crypto trading bot over a human.
- Speed. Bots can operate much faster than humans can. Bots can carry out hundreds or thousands of trades in a fraction of the time it takes a human to do one. Just think about the terminator relentlessly pursuing Sarah Connor with the efficiency of a futuristic machine, that’s like your well built crypto trading bot pursuing profits. There’s just no way to keep up.
- Endurance. Crypto trading bots can operate around the clock 365 days a year. Humans need to sleep and eat and sometimes browse reddit for what was supposed to be a couple minutes but ended up being an hour. There’s just no comparison, bots win out on endurance every time.
- Capacity. A crypto trading bot can process hundreds of gigabytes of data per second and spit out trading recommendations on all of it. Humans take much more time to slug through numbers and can’t process the same volume of data a crypto bot can in the same timeframe.
- Emotion. Crypto trading bots aren’t driven by hunger or anger or fear or greed. They perform exactly as they were programmed to no matter the conditions. Unlike people, who can be driven by their emotions and make big mistakes because of them.
Why Should You Use a Bot to Trade?
Have you ever woken up in the middle of the night in a cold sweat and frantically checked your crypto wallet to make sure no sudden price plunges have plundered your account?
Have you ever pulled up your phone to check that cryptocurrency you’ve been eyeing to buy, only to see massive momentum upwards pricing you out?
The crypto world is extremely volatile and even if you were to spend every waking moment focused on the news and trading the swings in price, you couldn’t catch all of it. If you’re looking for a way to make smart trades 24/7 (even while you’re asleep), you need to get a crypto trading bot.
There are basically two main reasons people use crypto trading bots. One is to use your bot as a simple automation machine that makes it easier for you to perform routine tasks such as portfolio diversification, constructing an index, or rebalancing your portfolio to name just a few use-cases.
In this first instance, the bot is used without an explicit goal of providing added returns by automating your existing processes. However, the second main use for a crypto trading bot is as a mechanism to beat the market and generate consistent profits. This involves having a crypto trading bot not just buy and sell but also execute higher level strategies.
Beating the Market Isn’t As Challenging As You’d Think
You may be wondering how it could even be possible as a small day trader to use a bot to beat the market. However, you should know it is completely possible for retail trading bots to have an advantage over big institutional money.
One reason for this is smaller markets. Retail investors can operate in markets that are too small for large players. Another reason retail crypto bots have an advantage is market impact. Profitable strategies can vanish due to the fact that large sums of capital can impact the market. Retail investors generally don’t deal with these issues due to the fact that they don’t spend large sums that could move the market. The final reason retail crypto bots have an advantage is agility. Institutional money is slow to pivot strategies and hesitant to try out risky strategies. Retail traders can go buck wild with their own funds.
Setting up a crypto trading bot isn’t too hard if you have the knowhow. You’ll need to have your algorithm written into code so the computer can understand it and execute trades for you, this requires understanding a coding language such as Python, Nodejs, C++, or Java. However, there are also services with nice graphic interfaces that allow you to input your criteria and not worry too much about the hard coding.
When plugging in your crypto bot to the market you’ll need to choose one of the crypto exchanges that offers trading through an API (application programming interface) in order to connect your crypto trading bot to the exchange. Major exchanges such as Simex and Binance have APIs for just this reason.
What Makes Crypto Trading Bots Different From Regular Bots?
Crypto trading bots are getting quite advanced these days. One really cool thing about current trading bots is that you can host them yourself. A number of off the shelf crypto bots allow you to host the crypto trading bot yourself on a personal computer or through a dedicated cloud service.
One hosted solution is ProfitTrailer, a cryptocurrency merchant. Their product is an intelligent cryptocurrency trading bot that performs trades on your behalf. ProfitTrailer is available to trade on Binance, Bittrex, Huobi, KuCoin and Poloniex. The program is super easy to operate but allows for further complexity as you advance. You can start out with settings as simple as “Loss” and “Gain” or use one of the dozen pre-defined trading strategies available on the platform. The bot is compatible with Mac, Windows and Linux OS. If you’re not sure you can sign up for just a single month to see if it works for you.
If you are interested in operating your own crypto trading bot but don’t want to shell out money for the algorithm and trading platform have no fear as there are tons of open source trading bots available to you right now for free. GitHub is probably the best place for you to find them, and you can check out some of the most popular ones here. The ccxt algo is the most popular one by stars, but Crypto-Signal has gotten a lot of momentum in the space as well.
These platforms are free to use and often include their own algorithms and trading strategies. However, as they are open source and free, be wary and make sure the strategies actually work before you give them too much money to play with.
Setting Up Your Trading Bot
Ok, so now that you’ve had a quick crash course in crypto trading bots we’re going to go over all the steps it takes to launch your own bot from the ground up. Don’t worry If the coding seems intimidating – you can purchase or find open source software that deals with the hard coding while still allowing you control over your bot. Now here is how to setup your trading bot:
Step 1) Create Accounts on Exchanges
Making accounts is a pretty simple task to perform. But bear in mind that each exchange has different requirements for setting up new accounts. Some exchanges are very stringent and require lots of documents and verifications in order to let you trade. Sending in these documents can be a tedious and frustrating task. Factor in the time it may take to get vetted by all the exchanges you want to trade on. And when you find yourself bogged down in paperwork and identification cards don’t say I didn’t warn you!
Step 2) Get an API key
Before you can even begin to build your crypto trading bot you need to know what API you’re dealing with. An API (Application Programming Interface) allows your bot to access the exchange and trade crypto for you. Most exchanges offer this way of accessing your account.
Make sure the your exchange is supported by the open source you’ve chosen as the API:s of different exchanges aren’t exactly the same and therefore need different implementations. You’ll have better luck if you’re on one of the bigger exchanges, e.g. Binance is supported by most open source as well as hosted bots.
Step 3) Decide on Programming Language
Step 4) Choose a Trading Model for your Bot
In this phase, you will need to pick the trading model your bot will use for you. There are a number to select from including arbitrage, trend following and market making. The simpler the model the easier and faster it will be to set up. Although more complex models may seem appealing in theory, there’s no reason a simpler bot can’t outperform a fancier algorithm. It all depends on what is happening in the market.
Step 5) Selecting your Bot’s Architecture
The architecture you decide for your crypto trading bot is super important. It can determine how well your bot functions. The architecture of your bot is just a fancy way of saying its code or even more specifically its algorithm – the part that tells it what to do given a certain set of criteria. The mathematical model underpinning your algorithm has to be solid. If it isn’t then you risk the bot being unreliable or even worse – losing you money.
Step 6) Creation
Now that the plans for your bot are all laid out it is time to put all the pieces together.
Code up your algorithm, plug in your API and iron out any kinks in your system and get your bot set up and ready to trade.
Step 7) Testing
Testing is important for two reasons. First, it makes sure your bot is functioning as you intended it to and is able to handle the kinds of data that will be fed into it. In this stage you should analyze modeling errors (for example: overfitting) and make sure your bot is running smoothly.
The second reason testing is important is that it allows you to fine-tune your bot. Testing allows you to optimize your bot and get it to perform the way you want it to.
Step 8) Live Deployment
Finally, after you’ve gotten an API-key, chosen a programming language, created all the accounts you need to on crypto exchanges, picked a trading model, selected your bot’s architecture, created, tested, and debugged your bot you’re ready to bring this monster to life. Now, be weary that it takes time to fully optimize any new system so don’t expect to be swimming in a pool full of gold the day after turning on your bot. It takes time to optimize things. Make sure to constantly monitor your bot to make sure it is performing correctly when you first set it up. As it begins to show its reliability you will feel more confident letting it do its thing without hovering over it.
In this article we outlined what a trading bot is – a computer program that trades for you based on a set of instructions. We also discussed how they work which can be broken down into signal generator, risk allocation and execution. We also learned about why a bot is superior to a human when it comes to trading, why you should use a bot to trade (and you definitely should), and how crypto trading bots are different. Finally we summarized how to get a crypto trading bot setup on Simex, one of the top exchanges for this purpose.