Today I released 0.25.0 for the main framework and 0.0.8 of the live trade plugin.

One of Jesse’s outstanding features has always been its ability to execute backtests for multiple pairs at the same time. However, in the live mode, there have been some limits with how Binance sends the data over the WebSocket connection, hence causing issues such as missing candles after a period of connectivity.

Version 0.0.8 of the live trade plugin includes huge refactors which introduce solutions for these problems:

The WebSocket is now initiated before fetching initial candles via REST

There was an issue where if you were trading too many routes, importing initially required candles from…

I am happy to announce that the version 0.24.0 release of Jesse brings support for M1-based Macs.

I am a mac user, more specifically an M1 mac user. The native performance on these new machines is amazing, sadly, not every package was ready for it when they were initially out.

For example numpy, a core dependency of Jesse didn't support M1 macs natively. Hence, we had to install Jesse under the Rosetta emulator. That was the case until now: T I realized that all dependency packages of Jesse except for one are now supported natively on Apple's ARM-based CPUs.


In this tutorial, I will show you step by step, how to deploy your Jesse project from your local into a VPS for production.

I highly recommend using a VPS for production instead of running the bot on your local machine. The reason being that your local machine is not as reliable as a server. It has a better Internet connection, and there’s less chance of accidents such as power outages.

Installation and configuration of a Linux VPS seem scary to some users. But don’t worry, because I have made a script that makes the installation super easy.

Recommended cloud provider

Here are…

Today I am proud to announce that the long-awaited live trade plugin is available for early access.

Unfortunately, it still isn’t as ready as I wanted it to be but since there were many requests for early access I am releasing it today. For instance, everything that is mentioned on the roadmap for Q2 is what I find essential and wanted it included since the beginning:

  • Support for liquidation mechanism in backtesting and live trade
  • Support for inverse futures contracts
  • GUI dashboard for live trade (the current CLI dashboard is not easy enough for everybody!)
  • Complete support for spot trading

Tomorrow I’ll be releasing the long-awaited live trade plugin for Jesse which is the last missing piece of the puzzle to turn Jesse into a complete trading bot. I decided to share with you the journey that I went through in the last three years.

How it all begun

I started coding the first version of Jesse three years ago. I did it because neither of the other bots whether open-source or commercial ones offered the features that I needed for coding my manually-traded strategies. …

So that you get out early and yet don’t get stopped out on market noise

Photo by Chris Liverani on Unsplash

Often times you hear about the importance of setting a stop-loss before opening trades. But if you are a quant, I assume you already know the importance of it.

You may use stop-loss for two reasons:

  1. Setting your stop-loss at the beginning of opening a trade
  2. Exiting your open positions with (some kind of) trailing stop

Note #1: A stop order can be used for opening trades too, which is an advanced usage of a stop order. I will not be talking about that in this tutorial.

Note #2: As in all my tutorials, I’ll be using the Python language

Photo by Jason Leung on Unsplash

The Internet is filled with people trying to sell you bots that they claim will make you thousands of dollars with a click of a button. Will they though?!

Let’s make one thing clear at the beginning. I’m not saying that all trading bots are bad. Or that they are not good for anything at all. But before using them, you need to set your expectations straight. I hope this article can help you with that.

Why people choose trading bots

Most people are greedy yet lazy to put on the actual work, so they look for shortcuts. …

Trend following doesn’t have to be hard anymore

Photo by Katerina Limpitsouni

Trend following is often the easiest in a matter of both getting started with algo-trading and being profitable. In the previous article, I wrote a trend following strategy and even boosted its performance by using a bigger timeframe for determining the trend. But it was a simple enter-at-once and exit-at-once strategy.

The point of this tutorial is to get you started with a few of Jesse’s features that help you write most of the trend following strategies you’ll find. Few of such features are:

  • Exiting the trade in two points, one being at a fixed price, another at a dynamic…

You are putting money on the table by not using them

Photo by Katerina Limpitsouni

In this tutorial I am going to take a look at an example of how you can use multiple timeframes in your strategies. In the previous article, we learned how to import candles, write a simple profitable strategy, define routes, and to execute the backtest. If you haven’t read my previous article yet, please do so before continuing.

I’ll be continuing where I left off in the previous article. This is the complete strategy I ended up with:

And this is the result of backtesting it since 2019-01-01 to 2020-05-01 with 4h timeframe:

Getting started with algotrading doesn’t have to be hard

Photo by Katerina Limpitsouni

In this tutorial, I’m going to write a strategy for trading bitcoin with Jesse. The point of this tutorial is to get you started on using Jesse so you can write your own strategies. I’ll also teach you a few tricks that I’ve picked up over the years that help me write profitable strategies. This is probably going to be a series of articles.

The point of this tutorial is not to give you an awesome strategy; it is to get you started on writing one. In part one, I’ll cover everything from:

  • How to use technical analysis
  • How to…


I write about algotrading. I do my best to publish practical tutorials.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store