Simplify timeframe-transition

This commit is contained in:
Matthias 2022-05-16 19:53:01 +02:00
parent 2e65a1793d
commit 76637d3939
4 changed files with 14 additions and 13 deletions

View File

@ -77,8 +77,7 @@ class HDF5DataHandler(IDataHandler):
key = self._pair_ohlcv_key(pair, timeframe)
_data = data.copy()
filename = self._pair_data_filename(
self._datadir, pair, self.timeframe_to_file(timeframe), candle_type)
filename = self._pair_data_filename(self._datadir, pair, timeframe, candle_type)
self.create_dir_if_needed(filename)
_data.loc[:, self._columns].to_hdf(
@ -105,14 +104,14 @@ class HDF5DataHandler(IDataHandler):
filename = self._pair_data_filename(
self._datadir,
pair,
self.timeframe_to_file(timeframe),
timeframe,
candle_type=candle_type
)
if not filename.exists():
# Fallback mode for 1M files
filename = self._pair_data_filename(
self._datadir, pair, timeframe, candle_type=candle_type)
self._datadir, pair, timeframe, candle_type=candle_type, no_timeframe_modify=True)
if not filename.exists():
return pd.DataFrame(columns=self._columns)
where = []

View File

@ -98,8 +98,7 @@ class IDataHandler(ABC):
:param candle_type: Any of the enum CandleType (must match trading mode!)
:return: True when deleted, false if file did not exist.
"""
filename = self._pair_data_filename(
self._datadir, pair, self.timeframe_to_file(timeframe), candle_type)
filename = self._pair_data_filename(self._datadir, pair, timeframe, candle_type)
if filename.exists():
filename.unlink()
return True
@ -194,10 +193,14 @@ class IDataHandler(ABC):
datadir: Path,
pair: str,
timeframe: str,
candle_type: CandleType
candle_type: CandleType,
no_timeframe_modify: bool = False
) -> Path:
pair_s = misc.pair_to_filename(pair)
candle = ""
if not no_timeframe_modify:
timeframe = cls.timeframe_to_file(timeframe)
if candle_type != CandleType.SPOT:
datadir = datadir.joinpath('futures')
candle = f"-{candle_type}"

View File

@ -77,8 +77,7 @@ class JsonDataHandler(IDataHandler):
:param candle_type: Any of the enum CandleType (must match trading mode!)
:return: None
"""
filename = self._pair_data_filename(
self._datadir, pair, self.timeframe_to_file(timeframe), candle_type)
filename = self._pair_data_filename(self._datadir, pair, timeframe, candle_type)
self.create_dir_if_needed(filename)
_data = data.copy()
# Convert date to int
@ -105,11 +104,11 @@ class JsonDataHandler(IDataHandler):
:return: DataFrame with ohlcv data, or empty DataFrame
"""
filename = self._pair_data_filename(
self._datadir, pair, self.timeframe_to_file(timeframe), candle_type=candle_type)
self._datadir, pair, timeframe, candle_type=candle_type)
if not filename.exists():
# Fallback mode for 1M files
filename = self._pair_data_filename(
self._datadir, pair, timeframe, candle_type=candle_type)
self._datadir, pair, timeframe, candle_type=candle_type, no_timeframe_modify=True)
if not filename.exists():
return DataFrame(columns=self._columns)
try:

View File

@ -173,7 +173,7 @@ def test_json_pair_data_filename(pair, timeframe, expected_result, candle_type):
fn = JsonDataHandler._pair_data_filename(
Path('freqtrade/hello/world'),
pair,
JsonDataHandler.timeframe_to_file(timeframe),
timeframe,
CandleType.from_string(candle_type)
)
assert isinstance(fn, Path)
@ -181,7 +181,7 @@ def test_json_pair_data_filename(pair, timeframe, expected_result, candle_type):
fn = JsonGzDataHandler._pair_data_filename(
Path('freqtrade/hello/world'),
pair,
JsonGzDataHandler.timeframe_to_file(timeframe),
timeframe,
candle_type=CandleType.from_string(candle_type)
)
assert isinstance(fn, Path)