From 354401bb1ee234533431df1d50bbcff0a28bbeeb Mon Sep 17 00:00:00 2001 From: creslin Date: Fri, 3 Aug 2018 07:13:37 +0000 Subject: [PATCH] Made ta_on_candle and optional No change to existing bot behaviour. IF a user sets `ta_on_candle": true,` in their config.json then only when new candle-for-pair is recieved are TA functions called. --- freqtrade/constants.py | 1 + freqtrade/strategy/interface.py | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/freqtrade/constants.py b/freqtrade/constants.py index 87e354455..189b78617 100644 --- a/freqtrade/constants.py +++ b/freqtrade/constants.py @@ -53,6 +53,7 @@ CONF_SCHEMA = { }, 'fiat_display_currency': {'type': 'string', 'enum': SUPPORTED_FIAT}, 'dry_run': {'type': 'boolean'}, + 'ta_on_candle': {'type': 'boolean'}, 'minimal_roi': { 'type': 'object', 'patternProperties': { diff --git a/freqtrade/strategy/interface.py b/freqtrade/strategy/interface.py index d9919a565..54bd4d816 100644 --- a/freqtrade/strategy/interface.py +++ b/freqtrade/strategy/interface.py @@ -138,9 +138,9 @@ class IStrategy(ABC): last_seen = metadata['pair'] + str(dataframe.iloc[-1]['date']) last_candle_processed = self.r.get_candle_row() - if last_candle_processed != last_seen: - # Defs that only make change on new candle data here - logging.info("New Candle Analysis Launched") + if last_candle_processed != last_seen or self.config.get('ta_on_candle') == False: + # Defs that only make change on new candle data. + logging.info("TA Analysis Launched") dataframe = self.advise_indicators(dataframe, metadata) dataframe = self.advise_buy(dataframe, metadata) dataframe = self.advise_sell(dataframe, metadata)