Simplify by extracting progressbar definition
This commit is contained in:
@@ -5,14 +5,6 @@ from pathlib import Path
|
|||||||
from typing import Dict, List, Optional, Tuple
|
from typing import Dict, List, Optional, Tuple
|
||||||
|
|
||||||
from pandas import DataFrame, concat
|
from pandas import DataFrame, concat
|
||||||
from rich.progress import (
|
|
||||||
BarColumn,
|
|
||||||
MofNCompleteColumn,
|
|
||||||
TaskProgressColumn,
|
|
||||||
TextColumn,
|
|
||||||
TimeElapsedColumn,
|
|
||||||
TimeRemainingColumn,
|
|
||||||
)
|
|
||||||
|
|
||||||
from freqtrade.configuration import TimeRange
|
from freqtrade.configuration import TimeRange
|
||||||
from freqtrade.constants import (
|
from freqtrade.constants import (
|
||||||
@@ -34,10 +26,8 @@ from freqtrade.enums import CandleType, TradingMode
|
|||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange import Exchange
|
from freqtrade.exchange import Exchange
|
||||||
from freqtrade.plugins.pairlist.pairlist_helpers import dynamic_expand_pairlist
|
from freqtrade.plugins.pairlist.pairlist_helpers import dynamic_expand_pairlist
|
||||||
from freqtrade.util import dt_ts, format_ms_time
|
from freqtrade.util import dt_now, dt_ts, format_ms_time, get_progress_tracker
|
||||||
from freqtrade.util.datetime_helpers import dt_now
|
|
||||||
from freqtrade.util.migrations import migrate_data
|
from freqtrade.util.migrations import migrate_data
|
||||||
from freqtrade.util.rich_progress import CustomProgress
|
|
||||||
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
@@ -351,17 +341,7 @@ def refresh_backtest_ohlcv_data(
|
|||||||
pairs_not_available = []
|
pairs_not_available = []
|
||||||
data_handler = get_datahandler(datadir, data_format)
|
data_handler = get_datahandler(datadir, data_format)
|
||||||
candle_type = CandleType.get_default(trading_mode)
|
candle_type = CandleType.get_default(trading_mode)
|
||||||
with CustomProgress(
|
with get_progress_tracker() as progress:
|
||||||
TextColumn("[progress.description]{task.description}"),
|
|
||||||
BarColumn(bar_width=None),
|
|
||||||
MofNCompleteColumn(),
|
|
||||||
TaskProgressColumn(),
|
|
||||||
"•",
|
|
||||||
TimeElapsedColumn(),
|
|
||||||
"•",
|
|
||||||
TimeRemainingColumn(),
|
|
||||||
expand=True,
|
|
||||||
) as progress:
|
|
||||||
tf_length = len(timeframes) if trading_mode != "futures" else len(timeframes) + 2
|
tf_length = len(timeframes) if trading_mode != "futures" else len(timeframes) + 2
|
||||||
timeframe_task = progress.add_task("Timeframe", total=tf_length)
|
timeframe_task = progress.add_task("Timeframe", total=tf_length)
|
||||||
pair_task = progress.add_task("Downloading data...", total=len(pairs))
|
pair_task = progress.add_task("Downloading data...", total=len(pairs))
|
||||||
|
|||||||
@@ -19,14 +19,6 @@ from joblib.externals import cloudpickle
|
|||||||
from pandas import DataFrame
|
from pandas import DataFrame
|
||||||
from rich.align import Align
|
from rich.align import Align
|
||||||
from rich.console import Console
|
from rich.console import Console
|
||||||
from rich.progress import (
|
|
||||||
BarColumn,
|
|
||||||
MofNCompleteColumn,
|
|
||||||
TaskProgressColumn,
|
|
||||||
TextColumn,
|
|
||||||
TimeElapsedColumn,
|
|
||||||
TimeRemainingColumn,
|
|
||||||
)
|
|
||||||
|
|
||||||
from freqtrade.constants import DATETIME_PRINT_FORMAT, FTHYPT_FILEVERSION, LAST_BT_RESULT_FN, Config
|
from freqtrade.constants import DATETIME_PRINT_FORMAT, FTHYPT_FILEVERSION, LAST_BT_RESULT_FN, Config
|
||||||
from freqtrade.data.converter import trim_dataframes
|
from freqtrade.data.converter import trim_dataframes
|
||||||
@@ -48,7 +40,7 @@ from freqtrade.optimize.hyperopt_tools import (
|
|||||||
)
|
)
|
||||||
from freqtrade.optimize.optimize_reports import generate_strategy_stats
|
from freqtrade.optimize.optimize_reports import generate_strategy_stats
|
||||||
from freqtrade.resolvers.hyperopt_resolver import HyperOptLossResolver
|
from freqtrade.resolvers.hyperopt_resolver import HyperOptLossResolver
|
||||||
from freqtrade.util import CustomProgress
|
from freqtrade.util import get_progress_tracker
|
||||||
|
|
||||||
|
|
||||||
# Suppress scikit-learn FutureWarnings from skopt
|
# Suppress scikit-learn FutureWarnings from skopt
|
||||||
@@ -634,16 +626,7 @@ class Hyperopt:
|
|||||||
)
|
)
|
||||||
|
|
||||||
# Define progressbar
|
# Define progressbar
|
||||||
with CustomProgress(
|
with get_progress_tracker(
|
||||||
TextColumn("[progress.description]{task.description}"),
|
|
||||||
BarColumn(bar_width=None),
|
|
||||||
MofNCompleteColumn(),
|
|
||||||
TaskProgressColumn(),
|
|
||||||
"•",
|
|
||||||
TimeElapsedColumn(),
|
|
||||||
"•",
|
|
||||||
TimeRemainingColumn(),
|
|
||||||
expand=True,
|
|
||||||
console=console,
|
console=console,
|
||||||
cust_objs=[Align.center(self._hyper_out.table)],
|
cust_objs=[Align.center(self._hyper_out.table)],
|
||||||
) as pbar:
|
) as pbar:
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ from freqtrade.util.formatters import decimals_per_coin, fmt_coin, round_value
|
|||||||
from freqtrade.util.ft_precise import FtPrecise
|
from freqtrade.util.ft_precise import FtPrecise
|
||||||
from freqtrade.util.measure_time import MeasureTime
|
from freqtrade.util.measure_time import MeasureTime
|
||||||
from freqtrade.util.periodic_cache import PeriodicCache
|
from freqtrade.util.periodic_cache import PeriodicCache
|
||||||
|
from freqtrade.util.progress_tracker import get_progress_tracker # noqa F401
|
||||||
from freqtrade.util.rich_progress import CustomProgress
|
from freqtrade.util.rich_progress import CustomProgress
|
||||||
from freqtrade.util.rich_tables import print_df_rich_table, print_rich_table
|
from freqtrade.util.rich_tables import print_df_rich_table, print_rich_table
|
||||||
from freqtrade.util.template_renderer import render_template, render_template_with_fallback # noqa
|
from freqtrade.util.template_renderer import render_template, render_template_with_fallback # noqa
|
||||||
|
|||||||
@@ -0,0 +1,28 @@
|
|||||||
|
from rich.progress import (
|
||||||
|
BarColumn,
|
||||||
|
MofNCompleteColumn,
|
||||||
|
TaskProgressColumn,
|
||||||
|
TextColumn,
|
||||||
|
TimeElapsedColumn,
|
||||||
|
TimeRemainingColumn,
|
||||||
|
)
|
||||||
|
|
||||||
|
from freqtrade.util.rich_progress import CustomProgress
|
||||||
|
|
||||||
|
|
||||||
|
def get_progress_tracker(**kwargs):
|
||||||
|
"""
|
||||||
|
Get progress Bar with custom columns.
|
||||||
|
"""
|
||||||
|
return CustomProgress(
|
||||||
|
TextColumn("[progress.description]{task.description}"),
|
||||||
|
BarColumn(bar_width=None),
|
||||||
|
MofNCompleteColumn(),
|
||||||
|
TaskProgressColumn(),
|
||||||
|
"•",
|
||||||
|
TimeElapsedColumn(),
|
||||||
|
"•",
|
||||||
|
TimeRemainingColumn(),
|
||||||
|
expand=True,
|
||||||
|
**kwargs,
|
||||||
|
)
|
||||||
Reference in New Issue
Block a user