update installation.md

ma
This commit is contained in:
sobeit2020 2021-01-24 17:03:56 +00:00 committed by GitHub
parent 172a629c58
commit 9af89786ba
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 44 additions and 85 deletions

View File

@ -218,7 +218,7 @@ On Linux, as an optional post-installation task, you may wish to setup the bot t
------ ------
## Conda (Miniconda or Anaconda) ## Installation with Conda (Miniconda or Anaconda)
Freqtrade can also be installed with Miniconda or Anaconda. Conda (Miniconda or Anaconda) would automatically prepare and manage the extensive library-dependencies of the Freqtrade program. Freqtrade can also be installed with Miniconda or Anaconda. Conda (Miniconda or Anaconda) would automatically prepare and manage the extensive library-dependencies of the Freqtrade program.
@ -228,9 +228,7 @@ It is: (1) package, (2) dependency and (3) environment management for any progra
Shortly : Conda < Miniconda < Anaconda. Check : https://linuxnetmag.com/miniconda-vs-anaconda/ Shortly : Conda < Miniconda < Anaconda. Check : https://linuxnetmag.com/miniconda-vs-anaconda/
It is recommended to install Miniconda, not Anaconda. The difference between both lies in the amount of packages that would be installed upfront. Difference is at least like 1:8. It is recommended to install Miniconda, not Anaconda. The difference between both lies in the amount of packages that would be installed upfront. Difference in weight is around like 1:8 : https://www.dunderdata.com/blog/anaconda-is-bloated-set-up-a-lean-robust-data-science-environment-with-miniconda-and-conda-forge
https://www.dunderdata.com/blog/anaconda-is-bloated-set-up-a-lean-robust-data-science-environment-with-miniconda-and-conda-forge
#### 1. Instal Conda #### 1. Instal Conda
@ -243,6 +241,25 @@ Confirm with `yes` all questions. After installation, it is mandatory to turn yo
#### 2. Prepare Conda environment #### 2. Prepare Conda environment
##### Enter/exit freqtrade-conda venv:
To check available environments, do
```bash
conda env list
```
to enter or exit choosen conda environment
```bash
# Enter environemt : `freqtrade-conda`, note that, this one, does not exist yet, and will be created in next steps
conda activate freqtrade-conda
# Exit
conda deactivate
```
##### Change the channels with upgrades: ##### Change the channels with upgrades:
After opening terminal, you already will be in default `base` conda environment After opening terminal, you already will be in default `base` conda environment
@ -253,12 +270,6 @@ If you want, you can prevent the (base) conda environment from being activated a
conda config --set auto_activate_base false conda config --set auto_activate_base false
``` ```
enter the conda base environment:
```bash
conda activate base
```
Conda as a package manager can download new packages from "channels". The best developed Conda channel, is not the default channel and is called `conda-forge`. The code below switches to it. Conda as a package manager can download new packages from "channels". The best developed Conda channel, is not the default channel and is called `conda-forge`. The code below switches to it.
```bash ```bash
@ -277,38 +288,41 @@ conda config --show channels
conda config --show channel_priority conda config --show channel_priority
``` ```
#### 3. Freqtrade Conda Environment #### 3. Freqtrade Instalation
Now you have conda, but only (base) environment, Download and install freqtrade.
```bash ```bash
conda env list # download freqtrade
git clone https://github.com/freqtrade/freqtrade.git
# enter downloaded directory 'freqtrade'
cd freqtrade
``` ```
It is time to setup environment of the Freqtrade itself: #### 4. Freqtrade Conda Environment
It is time to setup the working environment of the Freqtrade itself:
The conda command `create -n` automatically installs all nested dependencies for the selected libraries The conda command `create -n` automatically installs all nested dependencies for the selected libraries
general structure of installation command is: general structure of installation command is:
```bash ```bash
# choose your own packages
conda create -n [name of the environment] [python version] [packages] conda create -n [name of the environment] [python version] [packages]
# point to packages in file
conda create -n [name of the environment] -f [file]
``` ```
so it can be For installig freqtrade with conda, we would use file `environment.yml` which exist in freqtrade directory
```bash ```bash
conda create -n freqtrade-conda python=3.8 pandas numpy ta-lib git wheel virtualenv conda create -n freqtrade-conda -f environment.yml
``` ```
or if you expect, to use later jupiter for [data-analysis](data-analysis.md), use
```bash
conda create -n freqtrade-jupyter-conda python=3.8 pandas numpy ta-lib git wheel virtualenv jupyter
```
the same works: for [docker](docker.md), for spyder and other useful programs.
Further read on the topic: Further read on the topic:
https://towardsdatascience.com/a-guide-to-conda-environments-bc6180fc533?gi=1db972389cd1 https://towardsdatascience.com/a-guide-to-conda-environments-bc6180fc533?gi=1db972389cd1
@ -319,57 +333,10 @@ https://metager.de/meta/meta.ger3?eingabe=ardsdatascience+guide+to+conda+environ
It may happen that creating a new Conda environment, populated with selected packages at the moment of creation, takes less time than installing a large, heavy dependent, GUI package, into previously set environment. Great example: Spyder It may happen that creating a new Conda environment, populated with selected packages at the moment of creation, takes less time than installing a large, heavy dependent, GUI package, into previously set environment. Great example: Spyder
##### Enter/exit freqtrade-conda venv:
to enter choosen conda environment
```bash
conda activate freqtrade-conda
```
to exit conda environment.
```bash
conda deactivate
```
Don't do it now however and stay in conda environment.
#### 4. Freqtrade Instalation
When in `freqtrade-conda` environment, download and install freqtrade. Command `./setup.sh --install`, will take few minutes.
```bash
# download freqtrade
git clone https://github.com/freqtrade/freqtrade.git
# enter downloaded directory 'freqtrade'
cd freqtrade
# run setup
./setup.sh --install
```
Create virtual environment (yes, python3-venv environment, inside conda-environment), where Freqtrade program can run.
Running python3-venv seems to be requirement of the Freqtrade program itself.
```bash
# create venv environment, inside hidden directory /freqtrede/.env
python3 -m venv ./.env/
# run the python3-venv environment
source ./.env/bin/activate
# install last required package
pip install -e .
```
##### pip install within conda, a reminder: ##### pip install within conda, a reminder:
The documentation of conda says that pip should NOT be used within conda, because internal problems can occur. The documentation of conda says that pip should NOT be used within conda, because internal problems can occur.
However, they are rare. However, they are rare. https://www.anaconda.com/blog/using-pip-in-a-conda-environment
Nevertherless, that is why, the `conda-forge` channel is preferred: Nevertherless, that is why, the `conda-forge` channel is preferred:
@ -389,15 +356,14 @@ freqtrade create-userdir --userdir user_data
# set up config file # set up config file
# make sure to run it set the `dry_run : true` as you start # make sure to run it set the `dry_run : true` as you start
freqtrade new-config --config config.json freqtrade new-config --config config.json
# run `dry_run` trades
freqtrade trade --strategy SampleStrategy
``` ```
important shortcuts important shortcuts
```bash ```bash
# list installed conda environments
conda env list
# activate base environment # activate base environment
conda activate conda activate
@ -406,13 +372,6 @@ conda activate freqtrade-conda
#deactivate any conda environments #deactivate any conda environments
conda deactivate conda deactivate
# list installed conda environments
conda env list
# activation/deactivate the venv
source ./.env/bin/activate
deactivate
``` ```
Happy trading! Happy trading!