diff --git a/freqtrade/data/btanalysis/bt_fileutils.py b/freqtrade/data/btanalysis/bt_fileutils.py index 2e6b23662..9328ba428 100644 --- a/freqtrade/data/btanalysis/bt_fileutils.py +++ b/freqtrade/data/btanalysis/bt_fileutils.py @@ -10,7 +10,6 @@ from io import BytesIO, StringIO from pathlib import Path from typing import Any, Literal -import numpy as np import pandas as pd from freqtrade.constants import LAST_BT_RESULT_FN @@ -308,7 +307,7 @@ def get_backtest_market_change(filename: Path, include_ts: bool = True) -> pd.Da else: df = pd.read_feather(filename) if include_ts: - df.loc[:, "__date_ts"] = df.loc[:, "date"].dt.as_unit("ms").astype(np.int64) + df.loc[:, "__date_ts"] = df.loc[:, "date"].dt.as_unit("ms").astype("int64") return df @@ -326,7 +325,7 @@ def get_backtest_wallet_change(filename: Path, strategy_name: str) -> pd.DataFra data = load_file_from_zip(filename, f"{filename.stem}_{strategy_name}_wallet.feather") df = pd.read_feather(BytesIO(data)) - df.loc[:, "__date_ts"] = df.loc[:, "date"].dt.as_unit("ms").astype(np.int64) + df.loc[:, "__date_ts"] = df.loc[:, "date"].dt.as_unit("ms").astype("int64") return df except ValueError: pass diff --git a/freqtrade/data/history/datahandlers/jsondatahandler.py b/freqtrade/data/history/datahandlers/jsondatahandler.py index e2ab5c408..332b687b4 100644 --- a/freqtrade/data/history/datahandlers/jsondatahandler.py +++ b/freqtrade/data/history/datahandlers/jsondatahandler.py @@ -1,6 +1,5 @@ import logging -import numpy as np from pandas import DataFrame, read_json, to_datetime from freqtrade import misc @@ -36,7 +35,7 @@ class JsonDataHandler(IDataHandler): self.create_dir_if_needed(filename) _data = data.copy() # Convert date to int (milliseconds) - _data["date"] = _data["date"].dt.as_unit("ms").astype(np.int64) + _data["date"] = _data["date"].dt.as_unit("ms").astype("int64") # Reset index, select only appropriate columns and save as json _data.reset_index(drop=True).loc[:, self._columns].to_json( diff --git a/freqtrade/optimize/analysis/lookahead_helpers.py b/freqtrade/optimize/analysis/lookahead_helpers.py index c9434c3d8..affa0c652 100644 --- a/freqtrade/optimize/analysis/lookahead_helpers.py +++ b/freqtrade/optimize/analysis/lookahead_helpers.py @@ -126,14 +126,14 @@ class LookaheadAnalysisSubFunctions: csv_df = add_or_update_row(csv_df, new_row_data) # Fill NaN values with a default value (e.g., 0) - csv_df["total_signals"] = csv_df["total_signals"].astype(int).fillna(0) - csv_df["biased_entry_signals"] = csv_df["biased_entry_signals"].astype(int).fillna(0) - csv_df["biased_exit_signals"] = csv_df["biased_exit_signals"].astype(int).fillna(0) + csv_df["total_signals"] = csv_df["total_signals"].astype("int64").fillna(0) + csv_df["biased_entry_signals"] = csv_df["biased_entry_signals"].astype("int64").fillna(0) + csv_df["biased_exit_signals"] = csv_df["biased_exit_signals"].astype("int64").fillna(0) # Convert columns to integers - csv_df["total_signals"] = csv_df["total_signals"].astype(int) - csv_df["biased_entry_signals"] = csv_df["biased_entry_signals"].astype(int) - csv_df["biased_exit_signals"] = csv_df["biased_exit_signals"].astype(int) + csv_df["total_signals"] = csv_df["total_signals"].astype("int64") + csv_df["biased_entry_signals"] = csv_df["biased_entry_signals"].astype("int64") + csv_df["biased_exit_signals"] = csv_df["biased_exit_signals"].astype("int64") logger.info(f"saving {config['lookahead_analysis_exportfilename']}") csv_df.to_csv(config["lookahead_analysis_exportfilename"], index=False) diff --git a/tests/exchange_online/test_ccxt_compat.py b/tests/exchange_online/test_ccxt_compat.py index c44bb216a..556d5edf6 100644 --- a/tests/exchange_online/test_ccxt_compat.py +++ b/tests/exchange_online/test_ccxt_compat.py @@ -287,7 +287,7 @@ class TestCCXTExchange: # Check if last-timeframe is within the last 2 intervals now = datetime.now(UTC) - timedelta(minutes=(timeframe_to_minutes(timeframe) * 2)) assert exch.klines(pair_tf).iloc[-1]["date"] >= timeframe_to_prev_date(timeframe, now) - assert exch.klines(pair_tf)["date"].astype(int).iloc[0] // 1e6 == since_ms + assert exch.klines(pair_tf)["date"].dt.as_unit("ms").astype("int64").iloc[0] == since_ms def _ccxt__async_get_candle_history( self, exchange, pair: str, timeframe: str, candle_type: CandleType, factor: float = 0.9