Expected behavior
At least installation and launch.
Steps to reproduce:
Output when running the executable:
pi@raspberrypi:~/Desktop/OctoFile $ sudo chmod +x OctoBot_linux_arm64
pi@raspberrypi:~/Desktop/OctoFile $ ./OctoBot_linux_arm64
Traceback (most recent call last):
File "start.py", line 18, in <module>
File "PyInstaller/loader/pyimod03_importers.py", line 495, in exec_module
File "octobot/cli.py", line 17, in <module>
ModuleNotFoundError: No module named 'packaging'
[9224] Failed to execute script 'start' due to unhandled exception!
Output when install "requirements.txt" for a cloned repository:
pi@raspberrypi:~/Desktop/Octobot/OctoBot $ python -m pip install -Ur requirements.txt
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting cython==0.29.32
Using cached Cython-0.29.32-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl (1.8 MB)
Collecting OctoBot-Commons==1.8.23
Using cached OctoBot-Commons-1.8.23.tar.gz (117 kB)
Preparing metadata (setup.py) ... done
Collecting OctoBot-Trading==2.3.35
Using cached OctoBot-Trading-2.3.35.tar.gz (427 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [345 lines of output]
Compiling octobot_trading/octobot_channel_consumer.py because it changed.
Compiling octobot_trading/util/initializable.py because it changed.
Compiling octobot_trading/util/config_util.py because it changed.
Compiling octobot_trading/exchange_data/exchange_symbols_data.py because it changed.
Compiling octobot_trading/exchange_data/exchange_symbol_data.py because it changed.
Compiling octobot_trading/exchange_data/ticker/ticker_manager.py because it changed.
Compiling octobot_trading/exchange_data/ticker/channel/ticker.py because it changed.
Compiling octobot_trading/exchange_data/ticker/channel/ticker_updater.py because it changed.
Compiling octobot_trading/exchange_data/ticker/channel/ticker_updater_simulator.py because it changed.
Compiling octobot_trading/exchange_data/contracts/margin_contract.py because it changed.
Compiling octobot_trading/exchange_data/contracts/future_contract.py because it changed.
Compiling octobot_trading/exchange_data/order_book/order_book_manager.py because it changed.
Compiling octobot_trading/exchange_data/order_book/channel/order_book.py because it changed.
Compiling octobot_trading/exchange_data/order_book/channel/order_book_updater_simulator.py because it changed.
Compiling octobot_trading/exchange_data/order_book/channel/order_book_updater.py because it changed.
Compiling octobot_trading/exchange_data/funding/funding_manager.py because it changed.
Compiling octobot_trading/exchange_data/funding/channel/funding.py because it changed.
Compiling octobot_trading/exchange_data/funding/channel/funding_updater.py because it changed.
Compiling octobot_trading/exchange_data/funding/channel/funding_updater_simulator.py because it changed.
Compiling octobot_trading/exchange_data/kline/kline_manager.py because it changed.
Compiling octobot_trading/exchange_data/kline/channel/kline.py because it changed.
Compiling octobot_trading/exchange_data/kline/channel/kline_updater.py because it changed.
Compiling octobot_trading/exchange_data/kline/channel/kline_updater_simulator.py because it changed.
Compiling octobot_trading/exchange_data/recent_trades/recent_trades_manager.py because it changed.
Compiling octobot_trading/exchange_data/recent_trades/channel/recent_trade.py because it changed.
Compiling octobot_trading/exchange_data/recent_trades/channel/recent_trade_updater_simulator.py because it changed.
Compiling octobot_trading/exchange_data/recent_trades/channel/recent_trade_updater.py because it changed.
Compiling octobot_trading/exchange_data/prices/price_events_manager.py because it changed.
Compiling octobot_trading/exchange_data/prices/prices_manager.py because it changed.
Compiling octobot_trading/exchange_data/prices/channel/price.py because it changed.
Compiling octobot_trading/exchange_data/prices/channel/prices_updater_simulator.py because it changed.
Compiling octobot_trading/exchange_data/prices/channel/prices_updater.py because it changed.
Compiling octobot_trading/exchange_data/ohlcv/candles_manager.py because it changed.
Compiling octobot_trading/exchange_data/ohlcv/preloaded_candles_manager.py because it changed.
Compiling octobot_trading/exchange_data/ohlcv/candles_adapter.py because it changed.
Compiling octobot_trading/exchange_data/ohlcv/channel/ohlcv_updater.py because it changed.
Compiling octobot_trading/exchange_data/ohlcv/channel/ohlcv_updater_simulator.py because it changed.
Compiling octobot_trading/exchange_data/ohlcv/channel/ohlcv.py because it changed.
Compiling octobot_trading/personal_data/exchange_personal_data.py because it changed.
Compiling octobot_trading/personal_data/state.py because it changed.
Compiling octobot_trading/personal_data/trades/trades_manager.py because it changed.
Compiling octobot_trading/personal_data/trades/trade.py because it changed.
Compiling octobot_trading/personal_data/trades/trade_factory.py because it changed.
Compiling octobot_trading/personal_data/trades/channel/trades_updater.py because it changed.
Compiling octobot_trading/personal_data/trades/channel/trades.py because it changed.
Compiling octobot_trading/personal_data/orders/order.py because it changed.
Compiling octobot_trading/personal_data/orders/order_adapter.py because it changed.
Compiling octobot_trading/personal_data/orders/decimal_order_adapter.py because it changed.
Compiling octobot_trading/personal_data/orders/orders_manager.py because it changed.
Compiling octobot_trading/personal_data/orders/order_state.py because it changed.
Compiling octobot_trading/personal_data/orders/order_group.py because it changed.
Compiling octobot_trading/personal_data/orders/order_util.py because it changed.
Compiling octobot_trading/personal_data/orders/order_factory.py because it changed.
Compiling octobot_trading/personal_data/orders/groups/balanced_take_profit_and_stop_order_group.py because it changed.
Compiling octobot_trading/personal_data/orders/groups/one_cancels_the_other_order_group.py because it changed.
Compiling octobot_trading/personal_data/orders/states/pending_creation_order_state.py because it changed.
Compiling octobot_trading/personal_data/orders/states/pending_creation_chained_order_state.py because it changed.
Compiling octobot_trading/personal_data/orders/states/fill_order_state.py because it changed.
Compiling octobot_trading/personal_data/orders/states/cancel_order_state.py because it changed.
Compiling octobot_trading/personal_data/orders/states/close_order_state.py because it changed.
Compiling octobot_trading/personal_data/orders/states/order_state_factory.py because it changed.
Compiling octobot_trading/personal_data/orders/states/open_order_state.py because it changed.
Compiling octobot_trading/personal_data/orders/types/unknown_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/unsupported_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/market/buy_market_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/market/market_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/market/sell_market_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/trailing/trailing_stop_limit_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/trailing/trailing_stop_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/limit/take_profit_limit_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/limit/stop_loss_limit_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/limit/limit_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/limit/sell_limit_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/limit/stop_loss_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/limit/buy_limit_order.py because it changed.
Compiling octobot_trading/personal_data/orders/types/limit/take_profit_order.py because it changed.
Compiling octobot_trading/personal_data/orders/channel/orders_updater_simulator.py because it changed.
Compiling octobot_trading/personal_data/orders/channel/orders.py because it changed.
Compiling octobot_trading/personal_data/orders/channel/orders_updater.py because it changed.
Compiling octobot_trading/personal_data/portfolios/value_converter.py because it changed.
Compiling octobot_trading/personal_data/portfolios/portfolio_value_holder.py because it changed.
Compiling octobot_trading/personal_data/portfolios/portfolio_manager.py because it changed.
Compiling octobot_trading/personal_data/portfolios/sub_portfolio.py because it changed.
Compiling octobot_trading/personal_data/portfolios/portfolio.py because it changed.
Compiling octobot_trading/personal_data/portfolios/asset.py because it changed.
Compiling octobot_trading/personal_data/portfolios/portfolio_factory.py because it changed.
Compiling octobot_trading/personal_data/portfolios/portfolio_profitability.py because it changed.
Compiling octobot_trading/personal_data/portfolios/portfolio_util.py because it changed.
Compiling octobot_trading/personal_data/portfolios/assets/future_asset.py because it changed.
Error compiling Cython file:
------------------------------------------------------------
...
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library.
cimport async_channel.channels as channels
^
------------------------------------------------------------
octobot_trading/exchange_channel.pxd:17:8: 'async_channel/channels.pxd' not found
Error compiling Cython file:
------------------------------------------------------------
...
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library.
cimport async_channel.channels as channels
cimport async_channel.consumer as consumers
^
------------------------------------------------------------
octobot_trading/exchange_channel.pxd:18:8: 'async_channel/consumer.pxd' not found
Error compiling Cython file:
------------------------------------------------------------
...
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library.
cimport async_channel.channels as channels
cimport async_channel.consumer as consumers
cimport async_channel.producer as producers
^
------------------------------------------------------------
octobot_trading/exchange_channel.pxd:19:8: 'async_channel/producer.pxd' not found
Error compiling Cython file:
------------------------------------------------------------
...
# License along with this library.
cimport async_channel.channels as channels
cimport async_channel.consumer as consumers
cimport async_channel.producer as producers
cdef class ExchangeChannel(channels.Channel):
^
------------------------------------------------------------
octobot_trading/exchange_channel.pxd:21:35: First base of 'ExchangeChannel' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
cpdef object get_filtered_consumers(self, str cryptocurrency=*, str symbol=*)
cdef class TimeFrameExchangeChannel(ExchangeChannel):
cpdef object get_filtered_consumers(self, str cryptocurrency=*, str symbol=*, str time_frame=*)
cdef class ExchangeChannelConsumer(consumers.Consumer):
^
------------------------------------------------------------
octobot_trading/exchange_channel.pxd:33:44: First base of 'ExchangeChannelConsumer' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
cpdef object get_filtered_consumers(self, str cryptocurrency=*, str symbol=*, str time_frame=*)
cdef class ExchangeChannelConsumer(consumers.Consumer):
pass
cdef class ExchangeChannelProducer(producers.Producer):
^
------------------------------------------------------------
octobot_trading/exchange_channel.pxd:36:44: First base of 'ExchangeChannelProducer' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
pass
cdef class ExchangeChannelProducer(producers.Producer):
cpdef void trigger_single_update(self)
cdef class ExchangeChannelInternalConsumer(consumers.InternalConsumer):
^
------------------------------------------------------------
octobot_trading/exchange_channel.pxd:39:52: First base of 'ExchangeChannelInternalConsumer' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
cpdef void trigger_single_update(self)
cdef class ExchangeChannelInternalConsumer(consumers.InternalConsumer):
pass
cdef class ExchangeChannelSupervisedConsumer(consumers.SupervisedConsumer):
^
------------------------------------------------------------
octobot_trading/exchange_channel.pxd:42:54: First base of 'ExchangeChannelSupervisedConsumer' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
import async_channel.producer as producers
import octobot_commons.logging as logging
class ExchangeChannelConsumer(consumers.Consumer):
^
------------------------------------------------------------
octobot_trading/exchange_channel.py:30:39: First base of 'ExchangeChannelConsumer' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
"""
Consumer adapted for ExchangeChannel
"""
class ExchangeChannelInternalConsumer(consumers.InternalConsumer):
^
------------------------------------------------------------
octobot_trading/exchange_channel.py:36:47: First base of 'ExchangeChannelInternalConsumer' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
"""
InternalConsumer adapted for ExchangeChannel
"""
class ExchangeChannelSupervisedConsumer(consumers.SupervisedConsumer):
^
------------------------------------------------------------
octobot_trading/exchange_channel.py:42:49: First base of 'ExchangeChannelSupervisedConsumer' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
"""
SupervisedConsumer adapted for ExchangeChannel
"""
class ExchangeChannelProducer(producers.Producer):
^
------------------------------------------------------------
octobot_trading/exchange_channel.py:48:39: First base of 'ExchangeChannelProducer' is not an extension type
Error compiling Cython file:
------------------------------------------------------------
...
):
return False
return True
class ExchangeChannel(channels.Channel):
^
------------------------------------------------------------
octobot_trading/exchange_channel.py:74:30: First base of 'ExchangeChannel' is not an extension type
Traceback (most recent call last):
File "<string>", line 2, in <module>
File "<pip-setuptools-caller>", line 34, in <module>
File "/tmp/pip-install-zzp2_95e/octobot-trading_d915ada1507a4461b1cdadb23956752c/setup.py", line 237, in <module>
ext_modules=cythonize(ext_modules, gdb_debug=CYTHON_DEBUG),
File "/tmp/pip-install-zzp2_95e/octobot-trading_d915ada1507a4461b1cdadb23956752c/.eggs/Cython-0.29.34-py3.9-linux-aarch64.egg/Cython/Build/Dependencies.py", line 1115, in cythonize
cythonize_one(*args)
File "/tmp/pip-install-zzp2_95e/octobot-trading_d915ada1507a4461b1cdadb23956752c/.eggs/Cython-0.29.34-py3.9-linux-aarch64.egg/Cython/Build/Dependencies.py", line 1238, in cythonize_one
raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: octobot_trading/exchange_channel.py
Compiling octobot_trading/personal_data/portfolios/assets/margin_asset.py because it changed.
Compiling octobot_trading/personal_data/portfolios/assets/spot_asset.py because it changed.
Compiling octobot_trading/personal_data/portfolios/types/spot_portfolio.py because it changed.
Compiling octobot_trading/personal_data/portfolios/types/future_portfolio.py because it changed.
Compiling octobot_trading/personal_data/portfolios/types/margin_portfolio.py because it changed.
Compiling octobot_trading/personal_data/portfolios/channel/balance_updater.py because it changed.
Compiling octobot_trading/personal_data/portfolios/channel/balance_updater_simulator.py because it changed.
Compiling octobot_trading/personal_data/portfolios/channel/balance.py because it changed.
Compiling octobot_trading/personal_data/portfolios/history/historical_asset_value.py because it changed.
Compiling octobot_trading/personal_data/portfolios/history/historical_asset_value_factory.py because it changed.
Compiling octobot_trading/personal_data/portfolios/history/historical_portfolio_value_manager.py because it changed.
Compiling octobot_trading/personal_data/positions/position.py because it changed.
Compiling octobot_trading/personal_data/positions/position_factory.py because it changed.
Compiling octobot_trading/personal_data/positions/position_state.py because it changed.
Compiling octobot_trading/personal_data/positions/position_util.py because it changed.
Compiling octobot_trading/personal_data/positions/positions_manager.py because it changed.
Compiling octobot_trading/personal_data/positions/channel/positions.py because it changed.
Compiling octobot_trading/personal_data/positions/channel/positions_updater.py because it changed.
Compiling octobot_trading/personal_data/positions/channel/positions_updater_simulator.py because it changed.
Compiling octobot_trading/personal_data/positions/types/inverse_position.py because it changed.
Compiling octobot_trading/personal_data/positions/types/linear_position.py because it changed.
Compiling octobot_trading/personal_data/positions/states/liquidate_position_state.py because it changed.
Compiling octobot_trading/personal_data/positions/states/idle_position_state.py because it changed.
Compiling octobot_trading/personal_data/positions/states/active_position_state.py because it changed.
Compiling octobot_trading/personal_data/positions/states/position_state_factory.py because it changed.
Compiling octobot_trading/personal_data/transactions/transaction.py because it changed.
Compiling octobot_trading/personal_data/transactions/transaction_factory.py because it changed.
Compiling octobot_trading/personal_data/transactions/transactions_manager.py because it changed.
Compiling octobot_trading/personal_data/transactions/types/blockchain_transaction.py because it changed.
Compiling octobot_trading/personal_data/transactions/types/fee_transaction.py because it changed.
Compiling octobot_trading/personal_data/transactions/types/realised_pnl_transaction.py because it changed.
Compiling octobot_trading/personal_data/transactions/types/transfer_transaction.py because it changed.
Compiling octobot_trading/modes/modes_factory.py because it changed.
Compiling octobot_trading/modes/modes_util.py because it changed.
Compiling octobot_trading/modes/channel/abstract_mode_producer.py because it changed.
Compiling octobot_trading/modes/channel/mode.py because it changed.
Compiling octobot_trading/modes/channel/abstract_mode_consumer.py because it changed.
Compiling octobot_trading/exchanges/exchanges.py because it changed.
Compiling octobot_trading/exchanges/exchange_manager.py because it changed.
Compiling octobot_trading/exchanges/abstract_exchange.py because it changed.
Compiling octobot_trading/exchanges/abstract_websocket_exchange.py because it changed.
Compiling octobot_trading/exchanges/basic_exchange_wrapper.py because it changed.
Compiling octobot_trading/exchanges/exchange_websocket_factory.py because it changed.
Compiling octobot_trading/exchanges/config/exchange_config_data.py because it changed.
Compiling octobot_trading/exchanges/config/backtesting_exchange_config.py because it changed.
Compiling octobot_trading/exchanges/exchange_builder.py because it changed.
Compiling octobot_trading/exchanges/exchange_channels.py because it changed.
Compiling octobot_trading/exchanges/exchange_factory.py because it changed.
Compiling octobot_trading/exchanges/connectors/ccxt/ccxt_client_util.py because it changed.
Compiling octobot_trading/exchanges/connectors/ccxt/ccxt_connector.py because it changed.
Compiling octobot_trading/exchanges/connectors/ccxt/ccxt_websocket_connector.py because it changed.
Compiling octobot_trading/exchanges/connectors/simulator/exchange_simulator_connector.py because it changed.
Compiling octobot_trading/exchanges/traders/trader.py because it changed.
Compiling octobot_trading/exchanges/traders/trader_simulator.py because it changed.
Compiling octobot_trading/exchanges/util/exchange_market_status_fixer.py because it changed.
Compiling octobot_trading/exchanges/util/websockets_util.py because it changed.
Compiling octobot_trading/exchanges/util/exchange_util.py because it changed.
Compiling octobot_trading/exchanges/types/rest_exchange.py because it changed.
Compiling octobot_trading/exchanges/types/websocket_exchange.py because it changed.
Compiling octobot_trading/exchanges/implementations/default_websocket_exchange.py because it changed.
Compiling octobot_trading/exchanges/implementations/default_rest_exchange.py because it changed.
Compiling octobot_trading/exchanges/implementations/exchange_simulator.py because it changed.
Compiling octobot_trading/exchange_channel.py because it changed.
[ 1/152] Cythonizing octobot_trading/exchange_channel.py
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
Output from pip install Octobot:
pi@raspberrypi:~/Desktop/OctoFile $ pip install Octobot
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting Octobot
Using cached OctoBot-0.4.46.tar.gz (8.9 MB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [104 lines of output]
Error compiling Cython file:
------------------------------------------------------------
...
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library.
cimport octobot_backtesting.backtest_data as backtest_data
^
------------------------------------------------------------
octobot/backtesting/octobot_backtesting.pxd:17:8: 'octobot_backtesting/backtest_data.pxd' not found
Error compiling Cython file:
------------------------------------------------------------
...
cdef public dict symbols_to_create_exchange_classes
cdef public list evaluators
cdef public list service_feeds
cdef public dict fees_config
cdef public list backtesting_files
cdef public backtest_data.BacktestData backtesting_data
^
------------------------------------------------------------
octobot/backtesting/octobot_backtesting.pxd:34:16: 'BacktestData' is not a type identifier
Error compiling Cython file:
------------------------------------------------------------
...
cdef public dict symbols_to_create_exchange_classes
cdef public list evaluators
cdef public list service_feeds
cdef public dict fees_config
cdef public list backtesting_files
cdef public backtest_data.BacktestData backtesting_data
^
------------------------------------------------------------
octobot/backtesting/octobot_backtesting.pxd:34:43: C attribute of type '<error>' cannot be accessed from Python
Error compiling Cython file:
------------------------------------------------------------
...
cdef public object previous_log_level
cdef public object previous_handlers_log_level
cdef public object stopped_event
cdef public bint enforce_total_databases_max_size_after_run
cdef public backtest_data.BacktestData backtesting_data
^
------------------------------------------------------------
octobot/backtesting/independent_backtesting.pxd:50:16: 'BacktestData' is not a type identifier
Error compiling Cython file:
------------------------------------------------------------
...
cdef public object previous_log_level
cdef public object previous_handlers_log_level
cdef public object stopped_event
cdef public bint enforce_total_databases_max_size_after_run
cdef public backtest_data.BacktestData backtesting_data
^
------------------------------------------------------------
octobot/backtesting/independent_backtesting.pxd:50:43: C attribute of type '<error>' cannot be accessed from Python
Traceback (most recent call last):
File "<string>", line 2, in <module>
File "<pip-setuptools-caller>", line 34, in <module>
File "/tmp/pip-install-md7pn2gh/octobot_119ce0d8660c4f84a3026a2c8f106153/setup.py", line 104, in <module>
ext_modules=cythonize(ext_modules, gdb_debug=CYTHON_DEBUG),
File "/tmp/pip-install-md7pn2gh/octobot_119ce0d8660c4f84a3026a2c8f106153/.eggs/Cython-0.29.32-py3.9-linux-aarch64.egg/Cython/Build/Dependencies.py", line 1127, in cythonize
cythonize_one(*args)
File "/tmp/pip-install-md7pn2gh/octobot_119ce0d8660c4f84a3026a2c8f106153/.eggs/Cython-0.29.32-py3.9-linux-aarch64.egg/Cython/Build/Dependencies.py", line 1250, in cythonize_one
raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: octobot/backtesting/independent_backtesting.py
Compiling octobot/configuration_manager.py because it changed.
Compiling octobot/octobot_backtesting_factory.py because it changed.
Compiling octobot/octobot_api.py because it changed.
Compiling octobot/task_manager.py because it changed.
Compiling octobot/octobot_channel_consumer.py because it changed.
Compiling octobot/initializer.py because it changed.
Compiling octobot/octobot.py because it changed.
Compiling octobot/backtesting/independent_backtesting.py because it changed.
Compiling octobot/backtesting/abstract_backtesting_test.py because it changed.
Compiling octobot/backtesting/octobot_backtesting.py because it changed.
Compiling octobot/channels/octobot_channel.py because it changed.
Compiling octobot/strategy_optimizer/strategy_test_suite.py because it changed.
Compiling octobot/strategy_optimizer/test_suite_result.py because it changed.
Compiling octobot/strategy_optimizer/strategy_optimizer.py because it changed.
Compiling octobot/producers/interface_producer.py because it changed.
Compiling octobot/producers/service_feed_producer.py because it changed.
Compiling octobot/producers/evaluator_producer.py because it changed.
Compiling octobot/producers/exchange_producer.py because it changed.
Compiling octobot/updater/binary_updater.py because it changed.
Compiling octobot/updater/python_updater.py because it changed.
Compiling octobot/updater/updater.py because it changed.
Compiling octobot/updater/updater_factory.py because it changed.
[ 1/22] Cythonizing octobot/backtesting/abstract_backtesting_test.py
[ 2/22] Cythonizing octobot/backtesting/independent_backtesting.py
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
I have a Raspberry Pi 4 8Gb. I didn’t touch this little kid for a couple of years, but then I met this project on the open spaces of GitHub and decided that this was definitely a chance for him. I installed the latest OS for it and tried to run it in the ways described. Can you help me with this? I would be very grateful to you for this. A google search turned up no results.
Step 2: Describe your environment
Step 3: Describe the problem:
pip install Octobot
- fails, error description below.Expected behavior At least installation and launch.
Steps to reproduce:
Output when running the executable:
Output when install "requirements.txt" for a cloned repository:
Output from
pip install Octobot
:I have a Raspberry Pi 4 8Gb. I didn’t touch this little kid for a couple of years, but then I met this project on the open spaces of GitHub and decided that this was definitely a chance for him. I installed the latest OS for it and tried to run it in the ways described. Can you help me with this? I would be very grateful to you for this. A google search turned up no results.