修复_now_is_time_to_refresh函数:当ohlcv_partial_candle=False时,不需要再加interval_in_sec,否则会导致数据刷新周期翻倍

This commit is contained in:
zhangkun9038@dingtalk.com 2026-02-26 04:16:24 +08:00
parent 768a33dbeb
commit 95f62b334f

View File

@ -2904,7 +2904,12 @@ class Exchange:
def _now_is_time_to_refresh(self, pair: str, timeframe: str, candle_type: CandleType) -> bool: def _now_is_time_to_refresh(self, pair: str, timeframe: str, candle_type: CandleType) -> bool:
# Timeframe in seconds # Timeframe in seconds
interval_in_sec = timeframe_to_msecs(timeframe) interval_in_sec = timeframe_to_msecs(timeframe)
plr = self._pairs_last_refresh_time.get((pair, timeframe, candle_type), 0) + interval_in_sec # 当 ohlcv_partial_candle=False 时,不需要再加 interval_in_sec
# 因为此时 _pairs_last_refresh_time 已经是最后一根完整蜡烛的时间
if self._ohlcv_partial_candle:
plr = self._pairs_last_refresh_time.get((pair, timeframe, candle_type), 0) + interval_in_sec
else:
plr = self._pairs_last_refresh_time.get((pair, timeframe, candle_type), 0)
# current,active candle open date # current,active candle open date
now = dt_ts(timeframe_to_prev_date(timeframe)) now = dt_ts(timeframe_to_prev_date(timeframe))
return plr < now return plr < now