diff --git a/.readthedocs.yml b/.readthedocs.yml index dec7b44d7..446181452 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -4,5 +4,5 @@ build: image: latest python: - version: 3.6 - setup_py_install: false \ No newline at end of file + version: 3.8 + setup_py_install: false diff --git a/.travis.yml b/.travis.yml index 9b8448db5..94239e33f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,9 +1,9 @@ os: - linux -dist: xenial +dist: bionic language: python python: -- 3.6 +- 3.8 services: - docker env: diff --git a/README.md b/README.md index 8526b5c91..a9aee342f 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,7 @@ Please find the complete documentation on our [website](https://www.freqtrade.io ## Features -- [x] **Based on Python 3.6+**: For botting on any operating system - Windows, macOS and Linux. +- [x] **Based on Python 3.7+**: For botting on any operating system - Windows, macOS and Linux. - [x] **Persistence**: Persistence is achieved through sqlite. - [x] **Dry-run**: Run the bot without playing money. - [x] **Backtesting**: Run a simulation of your buy/sell strategy. @@ -187,7 +187,7 @@ To run this bot we recommend you a cloud instance with a minimum of: ### Software requirements -- [Python 3.6.x](http://docs.python-guide.org/en/latest/starting/installation/) +- [Python 3.7.x](http://docs.python-guide.org/en/latest/starting/installation/) - [pip](https://pip.pypa.io/en/stable/installing/) - [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) - [TA-Lib](https://mrjbq7.github.io/ta-lib/install.html) diff --git a/docs/index.md b/docs/index.md index f63aeb6b8..e6882263b 100644 --- a/docs/index.md +++ b/docs/index.md @@ -14,7 +14,7 @@ ## Introduction -Freqtrade is a crypto-currency algorithmic trading software developed in python (3.6+) and supported on Windows, macOS and Linux. +Freqtrade is a crypto-currency algorithmic trading software developed in python (3.7+) and supported on Windows, macOS and Linux. !!! Danger "DISCLAIMER" This software is for educational purposes only. Do not risk money which you are afraid to lose. USE THE SOFTWARE AT YOUR OWN RISK. THE AUTHORS AND ALL AFFILIATES ASSUME NO RESPONSIBILITY FOR YOUR TRADING RESULTS. @@ -51,7 +51,7 @@ To run this bot we recommend you a linux cloud instance with a minimum of: Alternatively -- Python 3.6.x +- Python 3.7+ - pip (pip3) - git - TA-Lib diff --git a/docs/installation.md b/docs/installation.md index f00bf0836..be98c45a8 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -10,7 +10,7 @@ Please consider using the prebuilt [docker images](docker.md) to get started qui Click each one for install guide: -* [Python >= 3.6.x](http://docs.python-guide.org/en/latest/starting/installation/) +* [Python >= 3.7.x](http://docs.python-guide.org/en/latest/starting/installation/) * [pip](https://pip.pypa.io/en/stable/installing/) * [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) * [virtualenv](https://virtualenv.pypa.io/en/stable/installation.html) (Recommended) @@ -34,7 +34,7 @@ The easiest way to install and run Freqtrade is to clone the bot Github reposito When cloning the repository the default working branch has the name `develop`. This branch contains all last features (can be considered as relatively stable, thanks to automated tests). The `stable` branch contains the code of the last release (done usually once per month on an approximately one week old snapshot of the `develop` branch to prevent packaging bugs, so potentially it's more stable). !!! Note - Python3.6 or higher and the corresponding `pip` are assumed to be available. The install-script will warn you and stop if that's not the case. `git` is also needed to clone the Freqtrade repository. + Python3.7 or higher and the corresponding `pip` are assumed to be available. The install-script will warn you and stop if that's not the case. `git` is also needed to clone the Freqtrade repository. This can be achieved with the following commands: @@ -63,7 +63,7 @@ usage: ** --install ** With this option, the script will install the bot and most dependencies: -You will need to have git and python3.6+ installed beforehand for this to work. +You will need to have git and python3.7+ installed beforehand for this to work. * Mandatory software as: `ta-lib` * Setup your virtualenv under `.env/` @@ -94,7 +94,7 @@ We've included/collected install instructions for Ubuntu, MacOS, and Windows. Th OS Specific steps are listed first, the [Common](#common) section below is necessary for all systems. !!! Note - Python3.6 or higher and the corresponding pip are assumed to be available. + Python3.7 or higher and the corresponding pip are assumed to be available. === "Ubuntu/Debian" #### Install necessary dependencies diff --git a/environment.yml b/environment.yml index 86ea03519..746c4b912 100644 --- a/environment.yml +++ b/environment.yml @@ -4,7 +4,7 @@ channels: - conda-forge dependencies: # Required for app - - python>=3.6 + - python>=3.7 - pip - wheel - numpy diff --git a/freqtrade/__main__.py b/freqtrade/__main__.py index 881a2f562..ab4c7a110 100644 --- a/freqtrade/__main__.py +++ b/freqtrade/__main__.py @@ -3,7 +3,7 @@ __main__.py for Freqtrade To launch Freqtrade as a module -> python -m freqtrade (with Python >= 3.6) +> python -m freqtrade (with Python >= 3.7) """ from freqtrade import main diff --git a/freqtrade/main.py b/freqtrade/main.py index 5f8d5d19d..84d4b24f8 100755 --- a/freqtrade/main.py +++ b/freqtrade/main.py @@ -9,8 +9,8 @@ from typing import Any, List # check min. python version -if sys.version_info < (3, 6): - sys.exit("Freqtrade requires Python version >= 3.6") +if sys.version_info < (3, 7): + sys.exit("Freqtrade requires Python version >= 3.7") from freqtrade.commands import Arguments from freqtrade.exceptions import FreqtradeException, OperationalException diff --git a/requirements-dev.txt b/requirements-dev.txt index e681274c8..6d7570f67 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -6,9 +6,9 @@ coveralls==2.2.0 flake8==3.8.4 flake8-type-annotations==0.1.0 -flake8-tidy-imports==4.1.0 +flake8-tidy-imports==4.2.0 mypy==0.790 -pytest==6.1.2 +pytest==6.2.0 pytest-asyncio==0.14.0 pytest-cov==2.10.1 pytest-mock==3.3.1 diff --git a/requirements-plot.txt b/requirements-plot.txt index 1c3b03133..3e31a24ae 100644 --- a/requirements-plot.txt +++ b/requirements-plot.txt @@ -1,5 +1,5 @@ # Include all requirements to run the bot. -r requirements.txt -plotly==4.13.0 +plotly==4.14.1 diff --git a/requirements.txt b/requirements.txt index e0c5ac072..2e3a1a36f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,12 +1,12 @@ numpy==1.19.4 -pandas==1.1.4 +pandas==1.1.5 -ccxt==1.39.10 +ccxt==1.39.33 aiohttp==3.7.3 SQLAlchemy==1.3.20 python-telegram-bot==13.1 arrow==0.17.0 -cachetools==4.1.1 +cachetools==4.2.0 requests==2.25.0 urllib3==1.26.2 wrapt==1.12.1 @@ -22,7 +22,7 @@ blosc==1.9.2 py_find_1st==1.1.4 # Load ticker files 30% faster -python-rapidjson==0.9.4 +python-rapidjson==1.0 # Notify systemd sdnotify==0.3.2 diff --git a/setup.py b/setup.py index b47427709..030980c96 100644 --- a/setup.py +++ b/setup.py @@ -3,9 +3,9 @@ from sys import version_info from setuptools import setup -if version_info.major == 3 and version_info.minor < 6 or \ +if version_info.major == 3 and version_info.minor < 7 or \ version_info.major < 3: - print('Your Python interpreter must be 3.6 or greater!') + print('Your Python interpreter must be 3.7 or greater!') exit(1) from pathlib import Path # noqa: E402 @@ -109,7 +109,6 @@ setup(name='freqtrade', 'Environment :: Console', 'Intended Audience :: Science/Research', 'License :: OSI Approved :: GNU General Public License v3 (GPLv3)', - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Operating System :: MacOS', diff --git a/setup.sh b/setup.sh index 881bf9028..b270146c1 100755 --- a/setup.sh +++ b/setup.sh @@ -25,6 +25,14 @@ function check_installed_python() { return fi + which python3.9 + if [ $? -eq 0 ]; then + echo "using Python 3.9" + PYTHON=python3.9 + check_installed_pip + return + fi + which python3.7 if [ $? -eq 0 ]; then echo "using Python 3.7" @@ -33,16 +41,9 @@ function check_installed_python() { return fi - which python3.6 - if [ $? -eq 0 ]; then - echo "using Python 3.6" - PYTHON=python3.6 - check_installed_pip - return - fi if [ -z ${PYTHON} ]; then - echo "No usable python found. Please make sure to have python3.6, python3.7 or python3.8 installed" + echo "No usable python found. Please make sure to have python3.7 or newer installed" exit 1 fi } @@ -302,7 +303,7 @@ function help() { echo " -p,--plot Install dependencies for Plotting scripts." } -# Verify if 3.6 or 3.7 is installed +# Verify if 3.7 or 3.8 is installed check_installed_python case $* in