mirror of
https://github.com/freqtrade/freqtrade.git
synced 2026-01-20 14:00:38 +00:00
feat: list-exchanges to show futures "has" problematics
This commit is contained in:
@@ -103,7 +103,13 @@ ARGS_BACKTEST_SHOW = [
|
||||
"backtest_breakdown",
|
||||
]
|
||||
|
||||
ARGS_LIST_EXCHANGES = ["print_one_column", "list_exchanges_all", "trading_mode", "dex_exchanges"]
|
||||
ARGS_LIST_EXCHANGES = [
|
||||
"print_one_column",
|
||||
"list_exchanges_all",
|
||||
"trading_mode",
|
||||
"dex_exchanges",
|
||||
"list_exchanges_futures_options",
|
||||
]
|
||||
|
||||
ARGS_LIST_TIMEFRAMES = ["exchange", "print_one_column", "trading_mode"]
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
Definition of cli arguments used in arguments.py
|
||||
"""
|
||||
|
||||
from argparse import ArgumentTypeError
|
||||
from argparse import SUPPRESS, ArgumentTypeError
|
||||
|
||||
from freqtrade import constants
|
||||
from freqtrade.constants import (
|
||||
@@ -388,6 +388,13 @@ AVAILABLE_CLI_OPTIONS = {
|
||||
help="Print only DEX exchanges.",
|
||||
action="store_true",
|
||||
),
|
||||
"list_exchanges_futures_options": Arg(
|
||||
"--ccxt-show-futures-options-exchanges",
|
||||
help=SUPPRESS,
|
||||
# Show compatibility with ccxt for futures functionality
|
||||
# Doesn't show in help as it's an internal/debug option.
|
||||
action="store_true",
|
||||
),
|
||||
# List pairs / markets
|
||||
"list_pairs_all": Arg(
|
||||
"-a",
|
||||
|
||||
@@ -38,13 +38,15 @@ def start_list_exchanges(args: dict[str, Any]) -> None:
|
||||
else:
|
||||
available_exchanges = [e for e in available_exchanges if e["valid"] is not False]
|
||||
title = f"Exchanges available for Freqtrade ({len(available_exchanges)} exchanges):"
|
||||
|
||||
show_fut_reasons = args.get("list_exchanges_futures_options", False)
|
||||
table = Table(title=title)
|
||||
|
||||
table.add_column("Exchange Name")
|
||||
table.add_column("Class Name")
|
||||
table.add_column("Markets")
|
||||
table.add_column("Reason")
|
||||
if show_fut_reasons:
|
||||
table.add_column("Futures Reason")
|
||||
|
||||
trading_mode = args.get("trading_mode", None)
|
||||
dex_only = args.get("dex_exchanges", False)
|
||||
@@ -78,12 +80,14 @@ def start_list_exchanges(args: dict[str, Any]) -> None:
|
||||
if exchange["dex"]:
|
||||
trade_modes = Text("DEX: ") + trade_modes
|
||||
trade_modes.stylize("bold", 0, 3)
|
||||
futcol = [] if not show_fut_reasons else [exchange["comment_futures"]]
|
||||
|
||||
table.add_row(
|
||||
name,
|
||||
classname,
|
||||
trade_modes,
|
||||
exchange["comment"],
|
||||
*futcol,
|
||||
style=None if exchange["valid"] else "red",
|
||||
)
|
||||
# table.add_row(*[exchange[header] for header in headers])
|
||||
|
||||
Reference in New Issue
Block a user