From 654c69c0153082ab0352eccf756aedd18581fd89 Mon Sep 17 00:00:00 2001 From: Nullart Date: Fri, 15 Jun 2018 11:07:25 +0800 Subject: [PATCH] book order download limit to increase performance even for a little bit --- freqtrade/exchange/__init__.py | 2 +- freqtrade/freqtradebot.py | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/freqtrade/exchange/__init__.py b/freqtrade/exchange/__init__.py index c0fc32633..e25f4c8b9 100644 --- a/freqtrade/exchange/__init__.py +++ b/freqtrade/exchange/__init__.py @@ -241,7 +241,7 @@ def get_balances() -> dict: @retrier -def get_order_book(pair: str, limit: Optional[int] = 1000) -> dict: +def get_order_book(pair: str, limit: Optional[int] = 100) -> dict: try: return _API.fetch_order_book(pair, limit) except ccxt.NotSupported as e: diff --git a/freqtrade/freqtradebot.py b/freqtrade/freqtradebot.py index be319cff5..a8fb11934 100644 --- a/freqtrade/freqtradebot.py +++ b/freqtrade/freqtradebot.py @@ -253,7 +253,7 @@ class FreqtradeBot(object): if self.config['bid_strategy']['use_book_order']: logger.info('Getting price from Order Book') - orderBook = exchange.get_order_book(pair) + orderBook = exchange.get_order_book(pair,self.config['bid_strategy']['book_order_top']) orderBook_rate = orderBook['bids'][self.config['bid_strategy']['book_order_top']][0] # if ticker has lower rate, then use ticker ( usefull if down trending ) if ticker_rate < orderBook_rate: @@ -447,10 +447,13 @@ with limit `{buy_limit:.8f} ({stake_amount:.6f} \ if self.config['ask_strategy']['use_book_order']: logger.info('Using order book for selling...') - orderBook = exchange.get_order_book(trade.pair) + # logger.debug('Order book %s',orderBook) orderBook_min = self.config['ask_strategy']['book_order_min'] orderBook_max = self.config['ask_strategy']['book_order_max'] + + orderBook = exchange.get_order_book(trade.pair,orderBook_max) + for i in range(orderBook_min, orderBook_max+1): orderBook_rate = orderBook['asks'][i-1][0] # if orderbook has higher rate (high profit),