jesse-ai/jesse

Maximum recursion error when gathering historical data

gister9000 opened this issue · 1 comments

To Reproduce
Steps to reproduce the behavior:

  1. Import candles: LTC-USD, Bitfinex spot, start date: 2013-05-20
  2. Start importing and wait for error:
Unhandled exception in the process:
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/jesse/services/multiprocessing.py", line 20, in run
    mp.Process.run(self)
  File "/usr/lib/python3.10/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python3.10/dist-packages/jesse/modes/import_candles_mode/__init__.py", line 141, in run
    run(exchange, symbol, jh.timestamp_to_time(first_existing_timestamp)[:10], mode, running_via_dashboard, show_progressbar)
  File "/usr/local/lib/python3.10/dist-packages/jesse/modes/import_candles_mode/__init__.py", line 141, in run
    run(exchange, symbol, jh.timestamp_to_time(first_existing_timestamp)[:10], mode, running_via_dashboard, show_progressbar)
  File "/usr/local/lib/python3.10/dist-packages/jesse/modes/import_candles_mode/__init__.py", line 141, in run
    run(exchange, symbol, jh.timestamp_to_time(first_existing_timestamp)[:10], mode, running_via_dashboard, show_progressbar)
  [Previous line repeated 952 more times]
  File "/usr/local/lib/python3.10/dist-packages/jesse/modes/import_candles_mode/__init__.py", line 98, in run
    ).count()
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1911, in inner
    return method(self, database, *args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 2189, in count
    return Select([clone], [fn.COUNT(SQL('1'))]).scalar(database)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1911, in inner
    return method(self, database, *args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 2174, in scalar
    row = self.tuples().peek(database)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1911, in inner
    return method(self, database, *args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 2161, in peek
    rows = self.execute(database)[:n]
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1911, in inner
    return method(self, database, *args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1982, in execute
    return self._execute(database)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 2155, in _execute
    cursor = database.execute(self)
  File "/usr/local/lib/python3.10/dist-packages/playhouse/postgres_ext.py", line 485, in execute
    sql, params = ctx.sql(query).query()
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 2421, in __sql__
    ctx.literal(' FROM ').sql(CommaNodeList(self._from_list))
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1777, in __sql__
    ctx.sql(self.nodes[n_nodes - 1])
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 2424, in __sql__
    ctx.literal(' WHERE ').sql(self._where)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1481, in __sql__
    .sql(self.lhs)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1481, in __sql__
    .sql(self.lhs)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1481, in __sql__
    .sql(self.lhs)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1481, in __sql__
    .sql(self.lhs)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 4581, in __sql__
    return ctx.sql(self.column)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 614, in sql
    return obj.__sql__(self)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 1266, in __sql__
    with ctx.scope_column():
  File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__
    return next(self.gen)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 549, in inner
    with self(scope=scope, **kwargs):
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 587, in __call__
    self.state = self.state(**overrides)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 540, in __call__
    return State(scope, parentheses, **settings)
  File "/usr/local/lib/python3.10/dist-packages/peewee.py", line 526, in __new__
    return super(State, cls).__new__(cls, scope, parentheses, kwargs)
  File "<string>", line 1, in <lambda>
RecursionError: maximum recursion depth exceeded while calling a Python object

Enviroment (please complete the following information):

  • OS: Ubuntu 22.04 LTS
  • Version
Name: jesse
Version: 0.45.0
Summary: A trading framework for cryptocurrencies
Home-page: https://jesse.trade
Author: Saleh Mir
Author-email: saleh@jesse.trade
License: 
Location: /usr/local/lib/python3.10/dist-packages
Requires: aiofiles, aioredis, arrow, blinker, click, fastapi, jesse-dydx-v3-python, matplotlib, mplfinance, newtulipy, numpy, numpy-groupies, pandas, peewee, psycopg2-binary, pydash, pytest, python-dotenv, PyWavelets, quantstats, redis, requests, scipy, simplejson, statsmodels, TA-Lib, tabulate, timeloop, uvicorn, websocket-client, websockets
Required-by: 

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.