Extract database cleanup functions to persistence package
This commit is contained in:
@@ -33,7 +33,8 @@ from freqtrade.optimize.optimize_reports import (generate_backtest_stats, genera
|
|||||||
show_backtest_results,
|
show_backtest_results,
|
||||||
store_backtest_analysis_results,
|
store_backtest_analysis_results,
|
||||||
store_backtest_stats)
|
store_backtest_stats)
|
||||||
from freqtrade.persistence import LocalTrade, Order, PairLocks, Trade
|
from freqtrade.persistence import (LocalTrade, Order, PairLocks, Trade, disable_database_use,
|
||||||
|
enable_database_use)
|
||||||
from freqtrade.plugins.pairlistmanager import PairListManager
|
from freqtrade.plugins.pairlistmanager import PairListManager
|
||||||
from freqtrade.plugins.protectionmanager import ProtectionManager
|
from freqtrade.plugins.protectionmanager import ProtectionManager
|
||||||
from freqtrade.resolvers import ExchangeResolver, StrategyResolver
|
from freqtrade.resolvers import ExchangeResolver, StrategyResolver
|
||||||
@@ -177,8 +178,7 @@ class Backtesting:
|
|||||||
@staticmethod
|
@staticmethod
|
||||||
def cleanup():
|
def cleanup():
|
||||||
LoggingMixin.show_output = True
|
LoggingMixin.show_output = True
|
||||||
PairLocks.use_db = True
|
enable_database_use()
|
||||||
Trade.use_db = True
|
|
||||||
|
|
||||||
def init_backtest_detail(self) -> None:
|
def init_backtest_detail(self) -> None:
|
||||||
# Load detail timeframe if specified
|
# Load detail timeframe if specified
|
||||||
@@ -325,9 +325,7 @@ class Backtesting:
|
|||||||
self.futures_data = {}
|
self.futures_data = {}
|
||||||
|
|
||||||
def disable_database_use(self):
|
def disable_database_use(self):
|
||||||
PairLocks.use_db = False
|
disable_database_use(self.timeframe)
|
||||||
PairLocks.timeframe = self.timeframe
|
|
||||||
Trade.use_db = False
|
|
||||||
|
|
||||||
def prepare_backtest(self, enable_protections):
|
def prepare_backtest(self, enable_protections):
|
||||||
"""
|
"""
|
||||||
|
|||||||
@@ -4,3 +4,4 @@ from freqtrade.persistence.key_value_store import KeyStoreKeys, KeyValueStore
|
|||||||
from freqtrade.persistence.models import init_db
|
from freqtrade.persistence.models import init_db
|
||||||
from freqtrade.persistence.pairlock_middleware import PairLocks
|
from freqtrade.persistence.pairlock_middleware import PairLocks
|
||||||
from freqtrade.persistence.trade_model import LocalTrade, Order, Trade
|
from freqtrade.persistence.trade_model import LocalTrade, Order, Trade
|
||||||
|
from freqtrade.persistence.usedb_context import disable_database_use, enable_database_use
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
|
||||||
|
from freqtrade.persistence.pairlock_middleware import PairLocks
|
||||||
|
from freqtrade.persistence.trade_model import Trade
|
||||||
|
|
||||||
|
|
||||||
|
def disable_database_use(timeframe: str) -> None:
|
||||||
|
"""
|
||||||
|
Disable database usage for PairLocks and Trade models.
|
||||||
|
Used for backtesting, and some other utility commands.
|
||||||
|
"""
|
||||||
|
PairLocks.use_db = False
|
||||||
|
PairLocks.timeframe = timeframe
|
||||||
|
Trade.use_db = False
|
||||||
|
|
||||||
|
|
||||||
|
def enable_database_use() -> None:
|
||||||
|
"""
|
||||||
|
Cleanup function to restore database usage.
|
||||||
|
"""
|
||||||
|
PairLocks.use_db = True
|
||||||
|
PairLocks.timeframe = ''
|
||||||
|
Trade.use_db = True
|
||||||
Reference in New Issue
Block a user