How to install Jesse using docker for local algo-trading development — Transcript
Full transcript
- 0:00in this video i will show you how to get
- 0:01started with jesse using docker for
- 0:04local algo trading development the image
- 0:06that i'll be using has all the
- 0:07dependencies installed so you don't even
- 0:09need to install python i will also show
- 0:11you how to enable code intellisense in
- 0:13vs code which you make development so
- 0:15much easier let's get started
- 0:21the installation process is pretty
- 0:23simple and straightforward there's also
- 0:24a good chance that you already have
- 0:26docker installed on your machine to
- 0:28check if you do open a terminal app and
- 0:30try running docker
- 0:32and docker compose if you get errors
- 0:35like these ones saying the command is
- 0:37not found then you need to install it
- 0:39let's begin with windows to download the
- 0:42docker desktop go to docker.com get
- 0:45started
- 0:46and click on the download button
- 0:48i already downloaded this before so i'm
- 0:50going to cancel this
- 0:52once you have the setup file go ahead
- 0:54and open it
- 0:55there is not much to the setup process
- 0:57just make sure that at least the first
- 0:59option is checked press ok and give the
- 1:01installation process a few minutes to
- 1:03finish
- 1:04all right now you should be able to use
- 1:05docker
- 1:07go ahead and open the docker desktop
- 1:10and here you can see the status of
- 1:12docker in my case it is running
- 1:15next i'll cover mac os i'll begin by
- 1:17googling download docker and the first
- 1:20result is what i want based on the cpu
- 1:23type that you are using choose the right
- 1:25one for you i'm on m1 mac so i'll choose
- 1:27the right one
- 1:29once the download is done go ahead and
- 1:31open the downloaded file
- 1:33and drag and drop the docker icon into
- 1:36your applications folder give it about a
- 1:38minute to finish copying and then we
- 1:41should be good to go
- 1:43open docker
- 1:45choose open
- 1:46next it will ask for permissions click
- 1:49on ok
- 1:50and enter your password
- 1:52read the service agreement and choose
- 1:54accept the animation of the docker icon
- 1:57means that it's still starting
- 1:59once that is done you should be able to
- 2:01open the docker desktop
- 2:03and it should say docker desktop is
- 2:05running also if you hover your mouse
- 2:07here it should say engine running
- 2:09now let's cover the ubuntu distribution
- 2:11of linux since i don't have a linux
- 2:14machine at my hands right now i created
- 2:16this vps with ubuntu any salt on it so
- 2:18i'm going to ssh into it
- 2:23and starting now whatever i enter will
- 2:25be inside a linux machine since this is
- 2:27a fresh vps the first thing that i need
- 2:29to do is to update the repositories
- 2:33to install docker on ubuntu you could
- 2:35use their official install script you
- 2:37can also find the commands for the
- 2:38script on jess's documentation website
- 2:40there is one command for docker and
- 2:42another for docker compose just copy and
- 2:45paste them into your terminal
- 2:49and you should be good to go
- 2:51no matter which operating system you're
- 2:53using docker on what matters is that at
- 2:55the end of the installation process you
- 2:57should be able to run both the docker
- 2:59and docker compose commands without
- 3:01getting an error
- 3:03[Music]
- 3:07most likely at this point you already
- 3:08have a gc project but just in case i'll
- 3:10show you how to create a new one
- 3:12on the documentation website go to
- 3:15installation
- 3:17create a new jesse project
- 3:19and copy and paste these commands into
- 3:22the directory that you want your project
- 3:24to live in if you want you can change
- 3:25the name my bot into anything that you
- 3:27like
- 3:28obviously for cloning via git you need
- 3:30to have git installed on your machine if
- 3:32you don't you can always go and copy the
- 3:35github address paste it into your
- 3:37browser click on the green code button
- 3:40and download the project as a zip file i
- 3:42already have it get installed on my
- 3:44machine so now i will sit into my
- 3:47project
- 3:49and lastly i will create a dot and v
- 3:52file by copying from the example file
- 3:55and to make sure that the project files
- 3:57are present i'll run ls jesse projects
- 4:00ship with docker configuration files
- 4:02ready out of the box even the default
- 4:04values in the dot mv file are set to
- 4:07work with docker for example for a
- 4:09postgres host it says if not using
- 4:11docker you probably want to set this to
- 4:13localhost
- 4:14and the same goes for redis host so for
- 4:17now i don't need to change anything in
- 4:18this file to start jesse with docker
- 4:21first cd into the docker directory and
- 4:25run docker compose
- 4:27up the first time that you run this
- 4:29command docker will pull the official
- 4:31image from docker hub and then start the
- 4:33containers and the speed of this process
- 4:36depends on your internet connection
- 4:40once all the images are pulled docker
- 4:42will start the containers the first time
- 4:44it needs to initiate the database so
- 4:46just give it a good minute and when it's
- 4:48done you should see the url of your
- 4:50jesse dashboard go ahead copy this url
- 4:53and paste it into your browser
- 4:55if you see the jse logo it means it's
- 4:57working but for some users especially
- 4:59windows users this url doesn't work in
- 5:02such cases replace the hostname from
- 5:04four zeros into localhost the password
- 5:07of the dashboard is set inside your
- 5:09projects.nv file
- 5:12the default is set to test but make sure
- 5:14to change it if you are on a production
- 5:16server
- 5:20to make sure that everything works
- 5:21properly let's import some candles
- 5:24the binance exchange is fine let's
- 5:26change the symbol into btc usct and
- 5:30change the sort date
- 5:32to january
- 5:34and then click on sort
- 5:38all right everything looks good
- 5:40the back test section is where i can run
- 5:42back test simulations here are the lists
- 5:45of strategies which currently there's
- 5:47just one example to create my own i will
- 5:50click on the three dots button and
- 5:52choose new strategy and name it my first
- 5:55strategy
- 5:57to modify it i need to open the project
- 6:00inside an editor i use vs code which is
- 6:02open source and simple to use to
- 6:04download it go to their website and
- 6:06choose the one for your operating system
- 6:08there are multiple ways for opening my
- 6:10project in vs code i usually use the
- 6:12terminal so while keeping the terminal
- 6:14window that's running the containers i
- 6:16will open another one and make sure that
- 6:18i am still inside the correct directory
- 6:20by running the ls command now i can run
- 6:23code dot what this will do is to open
- 6:26the current directory in vs code the
- 6:28first time that you do this it will ask
- 6:30you whether or not you trust the others
- 6:32of this project and i do
- 6:35you could also use the open folder
- 6:36option in vs code's file menu for
- 6:38opening your project
- 6:41the strategy that i just created is
- 6:43located at strategies
- 6:45my first strategy
- 6:47and in this file so this looks good and
- 6:50i can start writing code
- 6:52[Music]
- 6:56code intellisense is a great feature in
- 6:58vs code it enables your editor to
- 7:00understand the code that you write that
- 7:02means first of all if you cache any
- 7:03syntax errors you might make and
- 7:05secondly it will show you the code
- 7:06completion for what you write which
- 7:08makes development so much faster in the
- 7:10past i used docker for production and
- 7:12not for development one of the main
- 7:14reasons was that features such as code
- 7:16intellisense were not available with
- 7:17this type of setup however recently vs
- 7:20code added support for docker containers
- 7:21using an extension called remote
- 7:23containers as you can see here right now
- 7:26vs code is using the python version of
- 7:28my local machine and not the one that's
- 7:30installed inside the docker container in
- 7:32your case you might not even have python
- 7:34installed on your machine at all
- 7:36for example let's try to add a new
- 7:38property method to my strategy using the
- 7:41ema indicator
- 7:43limit short trend and i want it to tell
- 7:46me if the 21 ema is above the 50. to get
- 7:49the 21 ema i will say ema 21 equals and
- 7:54notice that i have already imported the
- 7:56indicators module as ta
- 7:59so if i say ta
- 8:01dot it should have shown me a list of
- 8:03the available indicators and if i said e
- 8:06it should have shown me the ema so let's
- 8:09go ahead and install the remote
- 8:10containers extension so that i can
- 8:12connect to my container directly before
- 8:15i install the extension if you are on
- 8:17windows or linux there are a few
- 8:19conditions that you need to make sure
- 8:20are in place before installing the
- 8:22extension i'm on a mac and i already
- 8:24installed docker desktop so i can
- 8:26continue
- 8:27i'm gonna copy the name of the extension
- 8:29from here open the extension section in
- 8:32vs code and paste it into the search box
- 8:35click on the install button give it a
- 8:37few seconds to finish and we're done
- 8:39alright let's close the extension tab
- 8:42and notice that i'm still running
- 8:43gestures containers inside my terminal
- 8:46so you don't have to stop them before
- 8:47doing the next step
- 8:49inside vs code open the command palette
- 8:51and search for remote containers attach
- 8:54choose the first one
- 8:57and now you can see a list of the
- 8:59running containers on docker i have
- 9:01three which all of them are related to
- 9:04jesse but the one that i want to open
- 9:06with vs code that contains the python
- 9:08and my project files is jesse the first
- 9:11time that you do this it will take
- 9:12previous code a few seconds to install
- 9:14some stuff once that is done it will
- 9:16open a new vs code window so you can
- 9:18close the previous one if you like now
- 9:20that we're running inside container even
- 9:22the vs codes built-in terminal is
- 9:24running commands inside the container i
- 9:26know this because the root user that you
- 9:28see here is not what i have on my mac
- 9:30terminal
- 9:31and if i run the pwd command you'll see
- 9:34that we are in the root directory which
- 9:36doesn't exist on my mac now to open the
- 9:38project files click on open folder go
- 9:41back choose the home directory
- 9:45and click on ok
- 9:49now again i will open my strategy
- 9:51located at strategies my first strategy
- 9:55and the init file
- 9:57and now if i scroll down and try to
- 9:58write the same line again i still don't
- 10:00get auto complete but this time the
- 10:03reason is different even though i have
- 10:05the python intellisense plugin installed
- 10:07on my main vs code the version of vs
- 10:10code that's running inside the container
- 10:12doesn't have it installed so i need to
- 10:14install it one more time for this
- 10:15container so i'll open the extensions
- 10:18section
- 10:19and search for python the first result
- 10:22is what i want and notice that this time
- 10:24the install button says install in
- 10:26container
- 10:27click on it and give it a few seconds to
- 10:29finish
- 10:30and now the vs code is telling me that i
- 10:32need to choose the python interpreter
- 10:35notice that the python version that's
- 10:37here is the one inside the container and
- 10:39not the one that was installed on my
- 10:41local machine
- 10:43so now if i try to remove this line and
- 10:45write it again i should get code
- 10:47completion
- 10:50not only i get code completion it will
- 10:52also tell me the accepted parameters of
- 10:54the function which is really useful
- 11:05and also if i make a syntax error it
- 11:07should recognize it
- 11:10[Music]
- 11:14i often release new versions of jesse
- 11:16containing bug fixes new features and
- 11:18improvements so it's important to
- 11:20regularly update your json installation
- 11:22with this setup it's super easy let me
- 11:24show you open the terminal that's
- 11:26running the containers and press ctrl
- 11:28and c to assume them
- 11:32this is optional but to make sure that
- 11:34they are not running you could always
- 11:35run docker ps this command prints out
- 11:38all the currently running containers and
- 11:40i have none to see a list of all the
- 11:42containers even the ones that are
- 11:43stopped add a hyphen a flag at the end
- 11:46of it
- 11:47it says right here that the jc container
- 11:49was stopped 31 seconds ago to update
- 11:52your jc image to the latest version just
- 11:54run docker compose
- 11:56pull in my case there hasn't been any
- 11:58new version so it's not doing anything
- 12:00but in your case if there are newer
- 12:02versions it will download it so the next
- 12:04time that you run docker compose
- 12:06up it will store the containers using
- 12:08the updated image
- 12:10to see the jc version that you're
- 12:12running open the about section and look
- 12:14for the jesse version
- 12:16if you want to know how to set up a
- 12:17remote dev environment in vs code check
- 12:19out this video and if you want to use
- 12:21docker for deploying your jc project for
- 12:23live trading on a server then check out
- 12:25this one please subscribe to the channel
- 12:26if you haven't already thanks for
- 12:28watching
About this transcript
This page contains the full transcript of How to install Jesse using docker for local algo-trading development by Algo-trading with Saleh, generated from the public captions YouTube serves with the video. The transcript has 2,188 words across 336 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.
What you can do with it
Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.
Free YouTube transcript tool
YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.