Skip to content

Commit bc516db

Browse files
committed
refactor: add generic "migrate" method
1 parent 5c0cf8f commit bc516db

File tree

3 files changed

+19
-4
lines changed

3 files changed

+19
-4
lines changed

freqtrade/freqtradebot.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363
from freqtrade.strategy.interface import IStrategy
6464
from freqtrade.strategy.strategy_wrapper import strategy_safe_wrapper
6565
from freqtrade.util import FtPrecise, MeasureTime, PeriodicCache, dt_from_ts, dt_now
66-
from freqtrade.util.migrations.binance_mig import migrate_binance_futures_names
66+
from freqtrade.util.migrations import migrate_live_content
6767
from freqtrade.wallets import Wallets
6868

6969

@@ -229,7 +229,7 @@ def startup(self) -> None:
229229
Called on startup and after reloading the bot - triggers notifications and
230230
performs startup tasks
231231
"""
232-
migrate_binance_futures_names(self.config)
232+
migrate_live_content(self.config, self.exchange)
233233
set_startup_time()
234234

235235
self.rpc.startup_messages(self.config, self.pairlists, self.protections)
Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,23 @@
11
from freqtrade.exchange import Exchange
2-
from freqtrade.util.migrations.binance_mig import migrate_binance_futures_data
2+
from freqtrade.util.migrations.binance_mig import (
3+
migrate_binance_futures_data,
4+
migrate_binance_futures_names,
5+
)
36
from freqtrade.util.migrations.funding_rate_mig import migrate_funding_fee_timeframe
47

58

6-
def migrate_data(config, exchange: Exchange | None = None):
9+
def migrate_data(config, exchange: Exchange | None = None) -> None:
710
"""
811
Migrate persisted data from old formats to new formats
912
"""
1013
migrate_binance_futures_data(config)
1114

1215
migrate_funding_fee_timeframe(config, exchange)
16+
17+
18+
def migrate_live_content(config, exchange: Exchange | None = None) -> None:
19+
"""
20+
Migrate database content from old formats to new formats
21+
Used for dry/live mode.
22+
"""
23+
migrate_binance_futures_names(config)

freqtrade/util/migrations/binance_mig.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@
1414

1515

1616
def migrate_binance_futures_names(config: Config):
17+
"""
18+
Migrate binance futures names in both database and data files.
19+
This is needed because ccxt naming changed from "BTC/USDT" to "BTC/USDT:USDT"
20+
"""
1721
if not (
1822
config.get("trading_mode", TradingMode.SPOT) == TradingMode.FUTURES
1923
and config["exchange"]["name"] == "binance"

0 commit comments

Comments
 (0)