How to use Algorithmic Trading Software

Develop custom strategies

Run your own trading bot

Get Started

Algorithmic Trading Software

So you want to get started with algorithmic trading software? Whether you're a total beginner or a seasoned trader looking to up their game, this guide will help you ramp up quickly and flex your algo trading muscles!

Table of contents

This guide is logically ordered into the following sections. You can skip and jump between them by clicking on the section you're interested in.

What is technical analysis and how to perform it

Before you dive into any type of algorithmic trading, you need a solid foundation for doing technical analysis. This is foundational to developing a good trading strategy.

Jump to Technical Analysis
Decision time... build a trading bot, or use a trading platform?

You've got choices, but there are tradeoffs.

Jump to options
Learn to code Python

The best free algorithmic trading software requires knowledge of Python. Understand what you need to know to successfully code up a bot. If you're new to programming, but eager to learn, we can recommend some shortcuts to get you building bots in no-time.

Jump to Python
How to set up a server for algo trading

If you're running your own trading bot, choosing good server hardware and a strategic server location are critical variables to make winning trades.

Discover which hosts give you the best performance for the lowest price, and earn you an edge over the competition

Jump server setup
Which exchanges are best for algo trading

Profitable trades require liquidity, low fees and hot coins to trade! We've curated an awesome list of exchanges for trading crypto and stocks. Some even include discounts on trading fees and free sign up bonuses. Free money!

Jump to choosing an Exchange

Technical Analysis of Cryptocurrencies and Stocks

Welcome to the world of technical analysis—an essential skill for investors, traders, and enthusiasts in the realm of cryptocurrencies and stocks. Technical analysis involves studying market data and using various tools and indicators to identify potential patterns and trends. By leveraging these insights, you can make more informed short-term trading decisions, improving your odds at making a winning trade.

The basics of technical analysis involve identifying general trends and areas of resistance on a chart, along with using technical indicators like moving averages, MACD, RSI and more, to determine good entry and exit points for buying and selling.

Here's an example of Bitcoin on the weekly timeframe showing clear resistance around $30-32K range:

Technical Analysis of Bitcoin: Areas of Resistance

And here's an example of Cardano (ADA/USD) on the 4-hour timeframe, showing a descending triangle pattern. This suggests a breakout soon:

Technical Analysis of ADA: Descending Triangle

These are just two simple examples of identifying trends using technical analysis. Combine this with additional indicators like moving averages, RSI and MACD, you can begin to develop your own thesis on price action... identify trends, potential reversals, and market momentum.

Remember, technical analysis is just one tool among many. For long-term investments, it's always beneficial to combine it with fundamental analysis and other market indicators for a more comprehensive assessment.

And for both short-term and long-term trades, it's critical to understand the macro-environment… is the market in a bull run, or is the outlook bearish for the next 6-12 months? How is bitcoin trending? How is the S&P 500 trending?

Macro matters. If the overall market is trending down, it's more than likely the alt-coin market is also trending down.

If you want to dive deep into learning technical analysis, it's a great idea to take a course on Udemy. You can learn a lot from experienced traders in a short amount of time. Here are a few recommendations on Udemy:

Build your own robot

Build a trading bot vs. using algo trading software

If you know how to perform technical analysis and are ready to start developing strategies, then you need to choose your path:

  1. Create your own trading bot
    • Best option for those who know how to write code, or want to learn
    • Use free open source software
    • Control your bot via Telegram
    • Precisely control your strategies and trading parameters
    • Free: you only pay for your webhosting server to run the bot
    • Get the details here
  2. Use an algorithmic trading platform
    • Best for people who don't know how to code and don't want to learn. No code required!
    • Good control over your trading strategies and parameters
    • Paid: you need to subscribe to trading software (amount varies)
    • See our recommended algo trading platforms
  3. Copy trading
    • Some exchanges let you copy other traders on their platform. Maybe the person you choose to copy is algo trading... or maybe not.
    • Copy trading is not algo trading, but it's like having a bot.
    • It's an option for those that just want to gamble with something automated
    • Free(ish): you'll make the same trades as other investors that you pick. Your win (or lose) rate will be the same as theirs. You have no control over what you're trading. You only pay exchange fees on the trades, and the cost of constant fear about what someone else is doing with your money.
    • Learn more about copy trading
Python robot scientist

Python crypto trading bots

Many algo traders choose to program their own bot. There are some incredible, free, open-source software packages that you can use to algorithmically execute trades. But the requirements for this route are the highest:

  • You must be able to write code in Python
  • You need the skills to create your own trading strategies, backtest them using real data and refine them based on your own analysis
  • You must be able to deploy your trading bot to a suitable web host, with fast servers and a good geo location

The best python crypto trading bot

FreqTrade is the best-in-class open source software for running a crypto trading bot. It has been around for years, is battle tested, it has an incredible feature set, excellent documentation and a thriving community on Discord. It is a top choice for algorithmic trading software.

To give you a taste of FreqTrade's abilities:

  • Download historical market data directly from your crypto exchange
  • Develop a custom strategy, and backtest it to measure ROI
  • Use machine learning to further optimize trading parameters, like technical indicators, buy, sell and take profit points
  • Run in dry-mode to test your bot in real market conditions, without risking any money
  • Control your bot and get trade reports via a private Telegram bot (this is awesome!)

You might also look at Hummingbot or Octobot as alternatives to FreqTrade. They are written in Python, the code base is actively developed and they release new features at a regular pace. They are worth a look if you want more choices.

Crypto bots in other programming languages

Most open source algorthimic trading software is written in Python. But there are a few other choices. For the Julia crowd, there is PingPong trading bot, and for the Java crowd there is Cassandre trading bot.

If you really want to see all the options out there, check out this curated list of Awesome Crypto Trading Bots. Beyond trading bot software, it has other resources like technical analysis libraries, market data libraries and charting libraries. But take a close look at the Github page for each project you're interested in. Many on this Awesome list haven't been updated in years.

Learn python to build a trading bot

Learn to code Python

If you don't know how to code, but want to learn, we suggest taking a course on Python. While there are many free resources online, paid Python learning courses are extremely well thought out and will accelerate your path to algorithmic trading.

In particular, to code a crypto bot in Python requires:

  • Solid understanding of Python basics: variables, functions, classes
  • Ability to work with dataframes in the Pandas library
  • Ability to set up local programming environments
  • Ability to deploy your code to remote servers and execute trades

Whether you know some or none of these, an online course is a great way to build up your knowledge incrementally, give you hands-on tasks to complete, and get access to an instructor who you can answer questions and provide 1:1 help. Usually these courses are on sale for around $10-25 each. Considering time is money, and knowledge is power, this is money well spent.

Here are some courses that we know and can highly recommend:

Use an algorithmic trading platform

If you don't want to learn code, or just want to get started quickly, you can always pay for access to an algorithmic trading platform that does a lot of the heavy lifting for you. They come loaded with tools to do technical analysis and develop strategies, as well as backtest and forward test your strategies. And often times, these platforms give you access to many different asset classes, like Crypto, Stocks and Forex. So if you want to branch out beyond crypto, you've got options.

Some top choices to consider:

  • Coinrule
    • Starter plan is free and provides up to $3,000 per month in trade volume, with some feature restrictions. After that, pricing starts at $30 / month
    • Crypto only, works with a variety of exchanges
    • Build your own strategies, or buy strategies from other pro traders
    • Sign up here
  • TrendSpider
    • Pricing starts at $297 a year
    • Works with crypto, stocks and forex
    • Strategy development tools, charting, analysis, idea generation and trade timing tools are all baked-in
    • Real-time prices for 65,000+ assets, plus hundreds of other pro data sets
    • Free, dedicated US-based support & training
    • Sign up here

Copy trading

While copy trading isn't the same as algorithmic trading, we'd be remiss if we didn't present this as an option. Many exchanges allow you to follow and make the same trades as other users, in real-time. This option gives you no control over your trades. You don't get to pick the coins, entries/exits, whatever. You only get to pick the person you are copy trading, and how much you want to wager. Your win/lose rate will match the person you're copying. It's simple and easy to set up. Perfect for those that want to take a gamble on someone else's ability.

If you want to go this route, here are some top crypto exchanges that support copy trading:

Algo trading on Exchange

Algo trading on MEXC

MEXC Exchange

  • 10% discount on trading fees and claim up to $1,000 USDT Bonus!
  • KYC is not required to trade, but completing KYC will enable more features. See the restricted countries list
  • Use MEXC referral code: 1H1S9
Algo trading on Bybit

Bybit Exchange

Algo trading on KUCOIN

KUCOIN Exchange

USA from space at night

Choosing a web host and geo location for your crypto trading bot

Ok, so let's say you've wrote the code for your own trading strategies, you've backtested the data and are ready to deploy this thing to start making trades. What's the best place to deploy a crypto trading bot and how do you do it?

Typically, the method for deploying a crypto trading bot will be in a Docker container. This minimizes environment errors, deployment issues and simply reduces your headaches. And FreqTrade supports this out-of-the-box. So ideally, you need a webhost that can deploy containerized code. The deployment process on each host is different, so it's best to follow their guides. But it's common for deployments to be triggered by merging your code to a repository on Github.

And it's important to note that your server location matters. Millisecond delays in order execution can and will cost you money! If your server is in the USA or in Europe, and the exchange you're sending orders to is in Hong Kong, then your setup is not optimal. Minimize delays by choosing a server location as close to your exchange as possible.

If you're looking for the best-bang-for-the-buck servers that deploy containerized code in a geo location of your choosing, we can whole-heartedly recommend:

  1. Vultr Cloud Servers
  2. DigitalOcean
    • Droplet VM's with 1GB of RAM are $6 per month
    • Choose from 9 locations around the world
    • Standard CPU's and hardware
  3. Akamai (formerly Linode)
    • Nanode 1 GB plan costs $5 a month
    • Choose from 27 locations around the world
    • Standard CPU's and hardware

What are the best crypto exchanges to algo trade on?

For algo trading, you generally want high liquidity, low fees and access to a wide range of tokens that you can trade. While there are many options out there (see our top choices), here are three that we highly recommend for algo trading:

Algo trading on Exchange

Algo trading on MEXC

MEXC Exchange

  • 10% discount on trading fees and claim up to $1,000 USDT Bonus!
  • KYC is not required to trade, but completing KYC will enable more features. See the restricted countries list
  • Use MEXC referral code: 1H1S9
Algo trading on Bybit

Bybit Exchange

Algo trading on KUCOIN

KUCOIN Exchange

Wrapping up

Hopefully this guide gave you a clear overview of how to get started with algorithmic trading software, and the steps needed to get from zero to algo trader. It should go without saying, but just in case...

Important: this article is not financial advice. It is provided for informational and educational purposes. Trading is risky. Algo trading can be even riskier. Always do your own research, and never risk more than you can afford to lose. If you can't stand losing, trading is not for you.