reduce complexity of start_download_data() for flake8
This commit is contained in:
parent
aca03e38f6
commit
c31f322349
@ -11,7 +11,7 @@ from freqtrade.data.history import (convert_trades_to_ohlcv, refresh_backtest_oh
|
|||||||
refresh_backtest_trades_data)
|
refresh_backtest_trades_data)
|
||||||
from freqtrade.enums import CandleType, RunMode, TradingMode
|
from freqtrade.enums import CandleType, RunMode, TradingMode
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange import market_is_active, timeframe_to_minutes
|
from freqtrade.exchange import Exchange, market_is_active, timeframe_to_minutes
|
||||||
from freqtrade.freqai.utils import setup_freqai_spice_rack
|
from freqtrade.freqai.utils import setup_freqai_spice_rack
|
||||||
from freqtrade.plugins.pairlist.pairlist_helpers import dynamic_expand_pairlist, expand_pairlist
|
from freqtrade.plugins.pairlist.pairlist_helpers import dynamic_expand_pairlist, expand_pairlist
|
||||||
from freqtrade.resolvers import ExchangeResolver
|
from freqtrade.resolvers import ExchangeResolver
|
||||||
@ -68,37 +68,7 @@ def start_download_data(args: Dict[str, Any]) -> None:
|
|||||||
exchange.validate_timeframes(timeframe)
|
exchange.validate_timeframes(timeframe)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
pairs_not_available = download_trades(exchange, expanded_pairs, config, timerange)
|
||||||
if config.get('download_trades'):
|
|
||||||
if config.get('trading_mode') == 'futures':
|
|
||||||
raise OperationalException("Trade download not supported for futures.")
|
|
||||||
pairs_not_available = refresh_backtest_trades_data(
|
|
||||||
exchange, pairs=expanded_pairs, datadir=config['datadir'],
|
|
||||||
timerange=timerange, new_pairs_days=config['new_pairs_days'],
|
|
||||||
erase=bool(config.get('erase')), data_format=config['dataformat_trades'])
|
|
||||||
|
|
||||||
# Convert downloaded trade data to different timeframes
|
|
||||||
convert_trades_to_ohlcv(
|
|
||||||
pairs=expanded_pairs, timeframes=config['timeframes'],
|
|
||||||
datadir=config['datadir'], timerange=timerange, erase=bool(config.get('erase')),
|
|
||||||
data_format_ohlcv=config['dataformat_ohlcv'],
|
|
||||||
data_format_trades=config['dataformat_trades'],
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
if not exchange.get_option('ohlcv_has_history', True):
|
|
||||||
raise OperationalException(
|
|
||||||
f"Historic klines not available for {exchange.name}. "
|
|
||||||
"Please use `--dl-trades` instead for this exchange "
|
|
||||||
"(will unfortunately take a long time)."
|
|
||||||
)
|
|
||||||
pairs_not_available = refresh_backtest_ohlcv_data(
|
|
||||||
exchange, pairs=expanded_pairs, timeframes=config['timeframes'],
|
|
||||||
datadir=config['datadir'], timerange=timerange,
|
|
||||||
new_pairs_days=config['new_pairs_days'],
|
|
||||||
erase=bool(config.get('erase')), data_format=config['dataformat_ohlcv'],
|
|
||||||
trading_mode=config.get('trading_mode', 'spot'),
|
|
||||||
prepend=config.get('prepend_data', False)
|
|
||||||
)
|
|
||||||
|
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
sys.exit("SIGINT received, aborting ...")
|
sys.exit("SIGINT received, aborting ...")
|
||||||
@ -109,6 +79,42 @@ def start_download_data(args: Dict[str, Any]) -> None:
|
|||||||
f"on exchange {exchange.name}.")
|
f"on exchange {exchange.name}.")
|
||||||
|
|
||||||
|
|
||||||
|
def download_trades(exchange: Exchange, expanded_pairs: list,
|
||||||
|
config: Dict[str, Any], timerange: TimeRange) -> list:
|
||||||
|
if config.get('download_trades'):
|
||||||
|
if config.get('trading_mode') == 'futures':
|
||||||
|
raise OperationalException("Trade download not supported for futures.")
|
||||||
|
pairs_not_available = refresh_backtest_trades_data(
|
||||||
|
exchange, pairs=expanded_pairs, datadir=config['datadir'],
|
||||||
|
timerange=timerange, new_pairs_days=config['new_pairs_days'],
|
||||||
|
erase=bool(config.get('erase')), data_format=config['dataformat_trades'])
|
||||||
|
|
||||||
|
# Convert downloaded trade data to different timeframes
|
||||||
|
convert_trades_to_ohlcv(
|
||||||
|
pairs=expanded_pairs, timeframes=config['timeframes'],
|
||||||
|
datadir=config['datadir'], timerange=timerange, erase=bool(config.get('erase')),
|
||||||
|
data_format_ohlcv=config['dataformat_ohlcv'],
|
||||||
|
data_format_trades=config['dataformat_trades'],
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
if not exchange.get_option('ohlcv_has_history', True):
|
||||||
|
raise OperationalException(
|
||||||
|
f"Historic klines not available for {exchange.name}. "
|
||||||
|
"Please use `--dl-trades` instead for this exchange "
|
||||||
|
"(will unfortunately take a long time)."
|
||||||
|
)
|
||||||
|
pairs_not_available = refresh_backtest_ohlcv_data(
|
||||||
|
exchange, pairs=expanded_pairs, timeframes=config['timeframes'],
|
||||||
|
datadir=config['datadir'], timerange=timerange,
|
||||||
|
new_pairs_days=config['new_pairs_days'],
|
||||||
|
erase=bool(config.get('erase')), data_format=config['dataformat_ohlcv'],
|
||||||
|
trading_mode=config.get('trading_mode', 'spot'),
|
||||||
|
prepend=config.get('prepend_data', False)
|
||||||
|
)
|
||||||
|
|
||||||
|
return pairs_not_available
|
||||||
|
|
||||||
|
|
||||||
def start_convert_trades(args: Dict[str, Any]) -> None:
|
def start_convert_trades(args: Dict[str, Any]) -> None:
|
||||||
|
|
||||||
config = setup_utils_configuration(args, RunMode.UTIL_EXCHANGE)
|
config = setup_utils_configuration(args, RunMode.UTIL_EXCHANGE)
|
||||||
|
Loading…
Reference in New Issue
Block a user