[Bug] ошибка в MarketDataCache при возвращении данных из кеша
keepitsimple opened this issue · 1 comments
keepitsimple commented
Что случилось?
Ваш пример examples/download_all_candles.py при повторном запуске возвращает РАЗНОЕ кол-во данных
- Для наглядности проблемы нужно увеличить интервал с 1 минуты на 1 день и проблема сразу станет видна (см код).
- Запустить код первый раз - код возвращает данные для 4 дней (как и запрошено)
- Запустить код повторно (будет использоваться кеш) - в этот раз код вернет данные только для 2 дней
я проверил автотесты для MarketDataCache и я не нашел теста сравнения данных возвращаемых первый раз и из кеша.
Воспроизведение
def main():
with Client(TOKEN) as client:
settings = MarketDataCacheSettings(base_cache_dir=Path("market_data_cache"))
market_data_cache = MarketDataCache(settings=settings, services=client)
for candle in market_data_cache.get_all_candles(
figi="BBG004730N88",
from_=now() - timedelta(days=3),
interval=CandleInterval.CANDLE_INTERVAL_DAY,
):
print(candle.time)
return 0
Tinkoff Invest Version
0.2.0-beta58
Python Version
3.8
OS
Mac OS
Логи
# 1ый запуск - правильный ответ
2023-07-19 07:00:00+00:00
2023-07-20 07:00:00+00:00
2023-07-21 07:00:00+00:00
2023-07-22 07:00:00+00:00
# 2ой запуск - неправильный ответ
2023-07-20 07:00:00+00:00
2023-07-21 07:00:00+00:00
irusland commented
Поведение воспроизвел, тест на это есть - test_loads_from_net_then_from_cache
. Сейчас буду разбираться.