diff --git a/freqtrade/exchange/__init__.py b/freqtrade/exchange/__init__.py index e06ab5207..dc9dfa427 100644 --- a/freqtrade/exchange/__init__.py +++ b/freqtrade/exchange/__init__.py @@ -4,6 +4,7 @@ from random import randint from typing import List, Dict, Any, Optional import arrow +from cachetools import cached, TTLCache from freqtrade.exchange.bittrex import Bittrex from freqtrade.exchange.interface import Exchange @@ -127,6 +128,7 @@ def get_ticker(pair: str) -> dict: return _API.get_ticker(pair) +@cached(TTLCache(maxsize=100, ttl=30)) def get_ticker_history(pair: str, tick_interval: Optional[int] = 5) -> List: return _API.get_ticker_history(pair, tick_interval) diff --git a/freqtrade/exchange/bittrex.py b/freqtrade/exchange/bittrex.py index 88b2bce6b..d65c49d42 100644 --- a/freqtrade/exchange/bittrex.py +++ b/freqtrade/exchange/bittrex.py @@ -28,7 +28,7 @@ class Bittrex(Exchange): _API = _Bittrex( api_key=_EXCHANGE_CONF['key'], api_secret=_EXCHANGE_CONF['secret'], - calls_per_second=5, + calls_per_second=3, ) @property diff --git a/freqtrade/main.py b/freqtrade/main.py index 3c7c74355..ef25f2378 100755 --- a/freqtrade/main.py +++ b/freqtrade/main.py @@ -299,6 +299,7 @@ def main(): time.sleep(1) elif new_state == State.RUNNING: _process() + time.sleep(5) old_state = new_state diff --git a/requirements.txt b/requirements.txt index 334afb3b9..1ed05807b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,6 +2,7 @@ SQLAlchemy==1.1.14 python-telegram-bot==8.1.1 arrow==0.10.0 +cachetools==2.0.1 requests==2.18.4 urllib3==1.22 wrapt==1.10.11 diff --git a/setup.py b/setup.py index 767783f1c..2c4a3f4c9 100644 --- a/setup.py +++ b/setup.py @@ -34,6 +34,7 @@ setup(name='freqtrade', 'jsonschema', 'TA-Lib', 'tabulate', + 'cachetools', ], dependency_links=[ "git+https://github.com/ericsomdahl/python-bittrex.git@0.2.0#egg=python-bittrex"