Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/add grid strike #190

Merged
merged 13 commits into from
Nov 15, 2024
Merged

Feat/add grid strike #190

merged 13 commits into from
Nov 15, 2024

Conversation

cardosofede
Copy link
Contributor

No description provided.

@rapcmia
Copy link
Contributor

rapcmia commented Nov 6, 2024

PR update:

  • Run tests using docker build
  • Successfully build images for this PR and Feat/add grid strike hummingbot#7285
  • max drawdown pct available
    image
  • Reviewed created GS controller and script
    • Launch bot with controller set to buy side, 3 open orders and amount of 8usd
    • Getting error unexpected error running clock tick
    2024-11-06 12:23:46,743 - 15 - hummingbot.client.hummingbot_application - INFO - Creating the clock with tick size: 1.0
    2024-11-06 12:23:46,746 - 15 - hummingbot.client.hummingbot_application - INFO - start command initiated.
    2024-11-06 12:23:47,001 - 15 - hummingbot.strategy.script_strategy_base - WARNING - okx is not ready. Please wait...
    2024-11-06 12:23:47,350 - 15 - hummingbot.connector.exchange.okx.okx_exchange.OkxExchange - INFO - Network status has changed to NetworkStatus.CONNECTED. Starting networking...
    2024-11-06 12:23:47,652 - 15 - hummingbot.client.hummingbot_application - INFO - MQTT Bridge connected with success.
    2024-11-06 12:23:48,455 - 15 - hummingbot.core.data_type.order_book_tracker - INFO - Initialized order book for SOL-USDT. 1/1 completed.
    2024-11-06 12:23:48,578 - 15 - hummingbot.strategy.script_strategy_base - WARNING - okx is not ready. Please wait...
    2024-11-06 12:23:48,819 - 15 - hummingbot.connector.exchange.okx.okx_api_order_book_data_source.OkxAPIOrderBookDataSource - INFO - Subscribed to public order book and trade channels...
    2024-11-06 12:23:48,896 - 15 - hummingbot.connector.exchange.okx.okx_api_user_stream_data_source.OkxAPIUserStreamDataSource - INFO - Subscribed to private account and orders channels...
    2024-11-06 12:23:49,014 - 15 - hummingbot.strategy.script_strategy_base - WARNING - okx is not ready. Please wait...
    2024-11-06 12:23:49,675 - 15 - hummingbot.connector.client_order_tracker - INFO - Created LIMIT_MAKER SELL order 93027a12dac34fBCSSLUT4be4471c83b for 0.053517 SOL-USDT at 186.86.
    2024-11-06 12:23:49,710 - 15 - hummingbot.core.event.event_reporter - EVENT_LOG - {"timestamp": 1730895829.0, "type": "OrderType.LIMIT_MAKER", "trading_pair": "SOL-USDT", "amount": "0.053517", "price": "186.86", "order_id": "93027a12dac34fBCSSLUT4be4471c83b", "creation_timestamp": 1730895829.0, "exchange_order_id": "1959358365235216384", "leverage": 1, "position": "NIL", "event_name": "SellOrderCreatedEvent", "event_source": "okx"}
    2024-11-06 12:23:50,555 - 15 - hummingbot.core.rate_oracle.rate_oracle - INFO - Network status has changed to NetworkStatus.CONNECTED. Starting networking...
    2024-11-06 12:23:51,013 - 15 - hummingbot.core.clock - ERROR - Unexpected error running clock tick.
    Traceback (most recent call last):
      File "hummingbot/core/clock.pyx", line 119, in hummingbot.core.clock.Clock.run_til
        child_iterator.c_tick(self._current_tick)
      File "hummingbot/strategy/strategy_py_base.pyx", line 44, in hummingbot.strategy.strategy_py_base.StrategyPyBase.c_tick
        self.tick(timestamp)
      File "/home/hummingbot/hummingbot/strategy/script_strategy_base.py", line 75, in tick
        self.on_tick()
      File "/home/hummingbot/scripts/v2_with_controllers.py", line 85, in on_tick
        self.control_rebalance()
      File "/home/hummingbot/scripts/v2_with_controllers.py", line 112, in control_rebalance
        mid_price = connector.get_mid_price(trading_pair)
      File "hummingbot/connector/exchange_base.pyx", line 124, in hummingbot.connector.exchange_base.ExchangeBase.get_mid_price
        return (self.get_price(trading_pair, True) + self.get_price(trading_pair, False)) / Decimal("2")
      File "hummingbot/connector/exchange_base.pyx", line 275, in hummingbot.connector.exchange_base.ExchangeBase.get_price
        return self.c_get_price(trading_pair, is_buy)
      File "hummingbot/connector/exchange_base.pyx", line 158, in hummingbot.connector.exchange_base.ExchangeBase.c_get_price
        OrderBook order_book = self.c_get_order_book(trading_pair)
      File "hummingbot/connector/exchange_base.pyx", line 151, in hummingbot.connector.exchange_base.ExchangeBase.c_get_order_book
        return self.get_order_book(trading_pair)
      File "/home/hummingbot/hummingbot/connector/exchange_py_base.py", line 244, in get_order_book
        raise ValueError(f"No order book exists for '{trading_pair}'.")
    ValueError: No order book exists for 'SOL-8'.
    2024-11-06 12:23:51,577 - 15 - hummingbot.connector.client_order_tracker - INFO - The SELL order 93027a12dac34fBCSSLUT4be4471c83b amounting to 0.053517/0.053517 SOL has been filled at 186.86 USDT.
    2024-11-06 12:23:51,633 - 15 - hummingbot.core.event.event_reporter - EVENT_LOG - {"timestamp": 1730895831.0, "order_id": "93027a12dac34fBCSSLUT4be4471c83b", "trading_pair": "SOL-USDT", "trade_type": "TradeType.SELL", "order_type": "OrderType.LIMIT_MAKER", "price": "186.86", "amount": "0.053517", "trade_fee": {"percent": "0", "percent_token": "USDT", "flat_fees": [{"token": "USDT", "amount": "-0.008000149296"}]}, "exchange_trade_id": "190520231", "exchange_order_id": "1959358365235216384", "leverage": 1, "position": "NIL", "event_name": "OrderFilledEvent", "event_source": "okx"}
    2024-11-06 12:23:51,867 - 15 - hummingbot.core.event.event_reporter - EVENT_LOG - {"timestamp": 1730895831.0, "order_id": "93027a12dac34fBCSSLUT4be4471c83b", "base_asset": "SOL", "quote_asset": "USDT", "base_asset_amount": "0.053517", "quote_asset_amount": "10.00018662", "order_type": "OrderType.LIMIT_MAKER", "exchange_order_id": "1959358365235216384", "event_name": "SellOrderCompletedEvent", "event_source": "okx"}
    2024-11-06 12:23:51,867 - 15 - hummingbot.connector.client_order_tracker - INFO - SELL order 93027a12dac34fBCSSLUT4be4471c83b completely filled.
    2024-11-06 12:23:52,002 - 15 - hummingbot.core.clock - ERROR - Unexpected error running clock tick.
    Traceback (most recent call last):
      File "hummingbot/core/clock.pyx", line 119, in hummingbot.core.clock.Clock.run_til
        child_iterator.c_tick(self._current_tick)
      File "hummingbot/strategy/strategy_py_base.pyx", line 44, in hummingbot.strategy.strategy_py_base.StrategyPyBase.c_tick
        self.tick(timestamp)
      File "/home/hummingbot/hummingbot/strategy/script_strategy_base.py", line 75, in tick
        self.on_tick()
      File "/home/hummingbot/scripts/v2_with_controllers.py", line 85, in on_tick
        self.control_rebalance()
      File "/home/hummingbot/scripts/v2_with_controllers.py", line 112, in control_rebalance
        mid_price = connector.get_mid_price(trading_pair)
      File "hummingbot/connector/exchange_base.pyx", line 124, in hummingbot.connector.exchange_base.ExchangeBase.get_mid_price
        return (self.get_price(trading_pair, True) + self.get_price(trading_pair, False)) / Decimal("2")
      File "hummingbot/connector/exchange_base.pyx", line 275, in hummingbot.connector.exchange_base.ExchangeBase.get_price
        return self.c_get_price(trading_pair, is_buy)
      File "hummingbot/connector/exchange_base.pyx", line 158, in hummingbot.connector.exchange_base.ExchangeBase.c_get_price
        OrderBook order_book = self.c_get_order_book(trading_pair)
      File "hummingbot/connector/exchange_base.pyx", line 151, in hummingbot.connector.exchange_base.ExchangeBase.c_get_order_book
        return self.get_order_book(trading_pair)
      File "/home/hummingbot/hummingbot/connector/exchange_py_base.py", line 244, in get_order_book
        raise ValueError(f"No order book exists for '{trading_pair}'.")
    ValueError: No order book exists for 'SOL-8'.
    2024-11-06 12:23:53,003 - 15 - hummingbot.core.clock - ERROR - Unexpected error running clock tick.
    Traceback (most recent call last):
      File "hummingbot/core/clock.pyx", line 119, in hummingbot.core.clock.Clock.run_til
        child_iterator.c_tick(self._current_tick)
      File "hummingbot/strategy/strategy_py_base.pyx", line 44, in hummingbot.strategy.strategy_py_base.StrategyPyBase.c_tick
        self.tick(timestamp)
      File "/home/hummingbot/hummingbot/strategy/script_strategy_base.py", line 75, in tick
        self.on_tick()
      File "/home/hummingbot/scripts/v2_with_controllers.py", line 85, in on_tick
        self.control_rebalance()
      File "/home/hummingbot/scripts/v2_with_controllers.py", line 112, in control_rebalance
        mid_price = connector.get_mid_price(trading_pair)
      File "hummingbot/connector/exchange_base.pyx", line 124, in hummingbot.connector.exchange_base.ExchangeBase.get_mid_price
        return (self.get_price(trading_pair, True) + self.get_price(trading_pair, False)) / Decimal("2")
      File "hummingbot/connector/exchange_base.pyx", line 275, in hummingbot.connector.exchange_base.ExchangeBase.get_price
        return self.c_get_price(trading_pair, is_buy)
      File "hummingbot/connector/exchange_base.pyx", line 158, in hummingbot.connector.exchange_base.ExchangeBase.c_get_price
        OrderBook order_book = self.c_get_order_book(trading_pair)
      File "hummingbot/connector/exchange_base.pyx", line 151, in hummingbot.connector.exchange_base.ExchangeBase.c_get_order_book
        return self.get_order_book(trading_pair)
      File "/home/hummingbot/hummingbot/connector/exchange_py_base.py", line 244, in get_order_book
        raise ValueError(f"No order book exists for '{trading_pair}'.")
    ValueError: No order book exists for 'SOL-8'.
    
  • It does not show as active on instance
    image

Steps to reproduce:

  1. Use the docker images and modified docker compose on deploy
  2. On config generator, Create GS controller config
  3. On Deploy:
    • Instance1: Create with controller drawback 10%, enabled rebalance 8usd per 120s
    • Instance2: Create with no controller drawback, enabled rebalance 8usd per 120s

11062024.zip

@rapcmia rapcmia self-requested a review November 11, 2024 05:07
Copy link

@rapcmia
Copy link
Contributor

rapcmia commented Nov 11, 2024

Getting error unexpected error running clock tick

  • Related to misconfiguration when the rebalance to asset is set to number rather than USDT
  • Still, it would been better if user cant launch bot or prompted if the value entered is not supported

Restest on both source and docker ok

  • After we successfully launch bot from deploy, the client would return this error:
    2024-11-11 06:16:45,997 - 15 - hummingbot.core.utils.async_utils - ERROR - Unhandled error in background task: 4 validation errors for GenericV2StrategyWithCashOutConfig
    asset_to_rebalance
      extra fields not permitted (type=value_error.extra)
    max_controller_drawdown
      extra fields not permitted (type=value_error.extra)
    max_global_drawdown
      extra fields not permitted (type=value_error.extra)
    rebalance_interval
      extra fields not permitted (type=value_error.extra)
    Traceback (most recent call last):
    
    • This happens on the ff setup:
      • Rebalance enabled only
      • Rebalance with global drawback
      • Rebalance with both global and controller drawback

Steps to reproduce:

  1. Setup this PR with hb7285, [ba46]
    ((feat) update grid strike backend-api#46) with broker on docker compose
  2. Add preferred connectors, create simple GS controller config
  3. Select then add or not globa/controller drawbacks and rebalance
  4. Launch bot

11112024.zip

@rapcmia
Copy link
Contributor

rapcmia commented Nov 12, 2024

PR update:

After we successfully launch bot from deploy, the client would return this error:
2024-11-11 06:16:45,997 - 15 - hummingbot.core.utils.async_utils - ERROR - Unhandled error in background task: 4 validation errors for GenericV2StrategyWithCashOutConfig
asset_to_rebalance
extra fields not permitted (type=value_error.extra)
max_controller_drawdown
extra fields not permitted (type=value_error.extra)
max_global_drawdown
extra fields not permitted (type=value_error.extra)
rebalance_interval
extra fields not permitted (type=value_error.extra)
Traceback (most recent call last):

Found cause of issue was the outdated v2_with_controller.py script from backend-api's script folder
image

  • Workaround: Copy the development branch's v2_with_controller.py script

Test scenario: When user decide to not use the risk management and focus on rebalance config only then launch bot, it will return unhandled error
image

2024-11-12 12:41:58,841 - 15 - hummingbot.core.utils.async_utils - ERROR - Unhandled error in background task: 1 validation error for GenericV2StrategyWithCashOutConfig
max_controller_drawdown
  value is not a valid float (type=type_error.float)
Traceback (most recent call last):
  File "/home/hummingbot/hummingbot/core/utils/async_utils.py", line 9, in safe_wrapper
    return await c
  File "/home/hummingbot/hummingbot/client/command/start_command.py", line 125, in start_check
    self._initialize_strategy(self.strategy_name)
  File "/home/hummingbot/hummingbot/client/command/start_command.py", line 271, in _initialize_strategy
    self.start_script_strategy()
  File "/home/hummingbot/hummingbot/client/command/start_command.py", line 191, in start_script_strategy
    script_strategy, config = self.load_script_class()
  File "/home/hummingbot/hummingbot/client/command/start_command.py", line 226, in load_script_class
    config = config_class(**self.load_script_yaml_config(config_file_path=self.strategy_file_name))
  File "pydantic/main.py", line 342, in pydantic.main.BaseModel.__init__
pydantic.error_wrappers.ValidationError: 1 validation error for GenericV2StrategyWithCashOutConfig
max_controller_drawdown
  value is not a valid float (type=type_error.float)
2024-11-12 12:41:59,688 - 15 - hummingbot.client.hummingbot_application - INFO - MQTT Bridge connected with success.

  • This occurs when a user dont add values on risk management

Steps to repdroduce:

  1. Generate a any controller config
  2. On deploy, add rebalance config only not risk management
  3. Select a controller config, name it then Launch a bot
  4. On your terminal, attach your docker container and see the error

hummingbot-kucoin-07-2024.11.12_20.41.zip


Test scenario: Rebalance kept on posting Skipping rebalance due to low amount to sell that may cause future imbalance
image

  • I think we should change the UI from (minutes) to (seconds) instead because:
    • User might think he needs to add 2 (assuming its already converted to minutes)
    • After launch bot, it will trigger the rebalance issue every 2s causing spam on logs

Steps to reproduce:

  1. Generate a any controller config
  2. On deploy under rebalance configuration, add 2 then launch bots
  3. On your terminal, attach your docker container and see rebalancing behavior

Test scenario: Binance GS returning 'GridStrike' object has no attribute 'grid_levels'
image

2024-11-12 11:07:28,486 - 15 - hummingbot.strategy_v2.runnable_base - ERROR - 'GridStrike' object has no attribute 'grid_levels'
Traceback (most recent call last):
  File "/home/hummingbot/hummingbot/strategy_v2/runnable_base.py", line 69, in control_loop
    await self.control_task()
  File "/home/hummingbot/hummingbot/strategy_v2/controllers/controller_base.py", line 170, in control_task
    executor_actions: List[ExecutorAction] = self.determine_executor_actions()
  File "/home/hummingbot/controllers/generic/grid_strike.py", line 138, in determine_executor_actions
    return self.determine_create_executor_actions() + self.determine_stop_executor_actions()
  File "/home/hummingbot/controllers/generic/grid_strike.py", line 155, in determine_create_executor_actions
    for level in self.grid_levels:
AttributeError: 'GridStrike' object has no attribute 'grid_levels'

Steps to reproduce:

  1. Copy the controller and script config
  2. On deploy, select the controller and name it then launch bot
  3. On your terminal, attach your docker container and see Binance error

hummingbot-binance-03-2024.11.12_19.37.zip


In progress:

  • Kucoin and OKX market pair running overnight

@rapcmia
Copy link
Contributor

rapcmia commented Nov 15, 2024

PR update:

  • Ran tests on source build with (feat) update grid strike backend-api#46 and Feat/add grid strike hummingbot#7285
  • Issue with max_drawdown error float has been fixed ✅
  • Instances created does not copy all scripts ok however deletes all other scripts from bot/conf/scripts
    • Successfully create instance and only import selected script ✅
    • However it also delete all existing scripts and retain only the last created script
    • Users now should be able to view the scripts on both when they need to revise/review it:
      • bot/instances/container-name/conf/scripts
      • bot/archived/container-name/conf/scripts

Now showing prompts when user failed to define the asset to rebalance, however it still successfully launch an instance ❌
image
image

Steps to reproduce:

  1. On deploy, select the controller-config then set Asset to rebalance to any but not string
  2. Launch bot and observe prompt user need to define then check Instances page

Deploy bot to test max_drawdown and grid_strike controller updates from hb7285

  • 2controllers, 2 separate connectors in progress
  • 1 connector, 1 config with 2 grid ranges in progress

@rapcmia
Copy link
Contributor

rapcmia commented Nov 15, 2024

Deploy bot to test max_drawdown and grid_strike controller updates from hb7285

  • 2controllers, 2 separate connectors in progress
  • 1 connector, 1 config with 2 grid ranges in progress
  • Trade data between global performance summary on grid_strike controller and dashboard now matched after monitoring for 5hrs ✅
  • Stop controller, stop instance and archived worked ✅

Scenario: Long term bot for PMM with max_controller_drawdown 5% triggered

2024-11-13 17:14:22,757 - 15 - hummingbot.core.event.event_reporter - EVENT_LOG - {"timestamp": 1731518062.0, "type": "OrderType.LIMIT", "trading_pair": "SOL-USDT", "amount": "0.34000000", "price": "218.02000000", "order_id": "x-MG43PCSNBSLUT626ce770bcfe6d4a2", "creation_timestamp": 1731518062.0, "exchange_order_id": "8360591852", "leverage": 1, "position": "NIL", "event_name": "BuyOrderCreatedEvent", "event_source": "binance"}
2024-11-13 17:14:23,004 - 15 - hummingbot.strategy.script_strategy_base - INFO - Controller pmm-binance-solusdt_0.1 reached max drawdown. Stopping the controller.
2024-11-13 17:14:24,142 - 15 - hummingbot.strategy.script_strategy_base - INFO - Controller pmm-binance-solusdt_0.1 reached max drawdown. Stopping the controller.
2024-11-13 17:14:25,004 - 15 - hummingbot.strategy.script_strategy_base - INFO - Controller pmm-binance-solusdt_0.1 reached max drawdown. Stopping the controller.
...
2024-11-13 17:17:37,005 - 15 - hummingbot.strategy.script_strategy_base - INFO - Controller pmm-binance-solusdt_0.1 reached max drawdown. Stopping the controller.
2024-11-13 17:17:38,037 - 15 - hummingbot.strategy.script_strategy_base - INFO - Controller pmm-binance-solusdt_0.1 reached max drawdown. Stopping the controller.
  • Controller stopped and no orders created after ✅
  • However no controller indicator on logs that its stopped. Only ...stopping the controller 🤔
  • Took 5mins on logs showing ..stopping the controller
  • Orders created prior to the drawdown event and filled after couple of minutes. So active orders are not cancelled until its either filled or in exchange for the longest time (or stop the strategy)
    2024-11-13 17:14:22,749 - 15 - hummingbot.connector.client_order_tracker - INFO - Created LIMIT BUY order x-MG43PCSNBSLUT626ce770bcfe6d4a2 for 0.34000000 SOL-USDT at 218.02000000.
    2024-11-13 17:14:22,757 - 15 - hummingbot.core.event.event_reporter - EVENT_LOG - {"timestamp": 1731518062.0, "type": "OrderType.LIMIT", "trading_pair": "SOL-USDT", "amount": "0.34000000", "price": "218.02000000", "order_id": "x-MG43PCSNBSLUT626ce770bcfe6d4a2", "creation_timestamp": 1731518062.0, "exchange_order_id": "8360591852", "leverage": 1, "position": "NIL", "event_name": "BuyOrderCreatedEvent", "event_source": "binance"}
    2024-11-13 17:14:23,004 - 15 - hummingbot.strategy.script_strategy_base - INFO - Controller pmm-binance-solusdt_0.1 reached max drawdown. Stopping the controller.
    2024-11-13 17:14:24,142 - 15 - hummingbot.strategy.script_strategy_base - INFO - Controller pmm-binance-solusdt_0.1 reached max drawdown. Stopping the controller.
    ...
    
    2024-11-13 17:17:38,037 - 15 - hummingbot.strategy.script_strategy_base - INFO - Controller pmm-binance-solusdt_0.1 reached max drawdown. Stopping the controller.
    2024-11-13 17:18:30,231 - 15 - hummingbot.connector.exchange.binance.binance_api_user_stream_data_source.BinanceAPIUserStreamDataSource - WARNING - The websocket connection was closed (The WS connection was closed unexpectedly. Close code = 1008 msg data: 1008)
    2024-11-13 17:18:35,342 - 15 - hummingbot.connector.exchange.binance.binance_api_user_stream_data_source.BinanceAPIUserStreamDataSource - INFO - Successfully obtained listen key 8pJnB6a8F5yXV9Xlxe9oacZv4uDhzuH44DNU2uuzkxEoErW1Hy30gNxIuR8B
    2024-11-13 17:21:45,174 - 15 - hummingbot.connector.client_order_tracker - INFO - The BUY order x-MG43PCSNBSLUT626ce770bcfe6d4a2 amounting to 0.34000000/0.34000000 SOL has been filled at 218.02000000 USDT.
    2024-11-13 17:21:45,184 - 15 - hummingbot.core.event.event_reporter - EVENT_LOG - {"timestamp": 1731518505.0, "order_id": "x-MG43PCSNBSLUT626ce770bcfe6d4a2", "trading_pair": "SOL-USDT", "trade_type": "TradeType.BUY", "order_type": "OrderType.LIMIT", "price": "218.02000000", "amount": "0.34000000", "trade_fee": {"percent": "0", "percent_token": "BNB", "flat_fees": [{"token": "BNB", "amount": "0.00008840"}]}, "exchange_trade_id": "800630416", "exchange_order_id": "8360591852", "leverage": 1, "position": "NIL", "event_name": "OrderFilledEvent", "event_source": "binance"}
    2024-11-13 17:21:45,189 - 15 - hummingbot.core.event.event_reporter - EVENT_LOG - {"timestamp": 1731518505.0, "order_id": "x-MG43PCSNBSLUT626ce770bcfe6d4a2", "base_asset": "SOL", "quote_asset": "USDT", "base_asset_amount": "0.34000000", "quote_asset_amount": "74.1268000000000000", "order_type": "OrderType.LIMIT", "exchange_order_id": "8360591852", "event_name": "BuyOrderCompletedEvent", "event_source": "binance"}
    2024-11-13 17:21:45,189 - 15 - hummingbot.connector.client_order_tracker - INFO - BUY order x-MG43PCSNBSLUT626ce770bcfe6d4a2 completely filled.
    

@rapcmia
Copy link
Contributor

rapcmia commented Nov 15, 2024

Now showing prompts when user failed to define the asset to rebalance, however it still successfully launch an instance ❌
Fixed ✅

Copy link
Contributor

@rapcmia rapcmia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Setup this PR with with (feat) update grid strike backend-api#46 and Feat/add grid strike hummingbot#7285
  • Run tests on deploy source build
  • Config generator:
    • Setup different config uses cases ok
    • Max possible grid_ranges is 5 for both buy and sell
      • Total amount PCT is 50% by default
    • Candlesticks provide different display lines
    • Review about page ok
  • Deploy
    • Added new risk management options, max global drawdown and max controller drawdown
      • Triggered controller drawdown successfully using PMM controller
    • Added rebalance configuration include rebalance interval (user must set value base on seconds) and asset to rebalance
    • Reported issues to developer (fede) has been fixed
  • Instances
    • Successfully run GS controllers:
      • 2 connectors and 2 controller-configs on one instance
      • 1 controller-config with 2 grid ranges

Note:

  • In the event user runs multiple controller configs, asset to rebalane must be on same quote on all setup else it wont work. e.g all USDT qoute pairs

@cardosofede cardosofede merged commit e75fa29 into main Nov 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Development 2.2.0
Development

Successfully merging this pull request may close these issues.

2 participants