@@ -191,7 +191,16 @@ async def get_forced_updater_channels(
191191 @classmethod
192192 def get_is_trading_on_exchange (cls , exchange_name , tentacles_setup_config ) -> bool :
193193 """
194- returns True if exchange_name is not in price sources
194+ returns True if exchange_name is trading exchange or the hedging exchange
195+ """
196+ return cls .has_trading_exchange_configuration (
197+ exchange_name , octobot_tentacles_manager .api .get_tentacle_config (tentacles_setup_config , cls )
198+ )
199+
200+ @classmethod
201+ def get_is_using_trading_mode_on_exchange (cls , exchange_name , tentacles_setup_config ) -> bool :
202+ """
203+ returns True if exchange_name is a trading exchange that is not the hedging exchange
195204 """
196205 return cls .has_trading_exchange_configuration (
197206 exchange_name , octobot_tentacles_manager .api .get_tentacle_config (tentacles_setup_config , cls )
@@ -762,8 +771,8 @@ async def _handle_market_making_orders(
762771 outdated_orders = self ._get_orders_to_cancel (sorted_orders , reference_price )
763772 if outdated_orders :
764773 self .logger .info (
765- f"{ len (outdated_orders )} outdated orders for { self .symbol } { self .exchange_manager .exchange_name } : "
766- f"{ [str (o ) for o in outdated_orders ]} [trigger source: { trigger_source } ] "
774+ f"{ len (outdated_orders )} outdated orders for { self .symbol } on { self .exchange_manager .exchange_name } (trigger_source: { trigger_source } ) : "
775+ f"{ [str (o ) for o in outdated_orders ]} "
767776 )
768777
769778 # get ideal distribution
@@ -1071,12 +1080,11 @@ def _get_orders_to_cancel(
10711080 ]
10721081
10731082 def _is_outdated (
1074- self , price : decimal .Decimal , side : trading_enums .TradeOrderSide , reference_price : decimal .Decimal
1083+ self , order_price : decimal .Decimal , side : trading_enums .TradeOrderSide , reference_price : decimal .Decimal
10751084 ) -> bool :
1076- return (
1077- (side == trading_enums .TradeOrderSide .BUY and price > reference_price )
1078- or (side == trading_enums .TradeOrderSide .SELL and price < reference_price )
1079- )
1085+ if side == trading_enums .TradeOrderSide .BUY :
1086+ return order_price > reference_price
1087+ return order_price < reference_price
10801088
10811089 def _sort_orders (self , open_orders : list ) -> list :
10821090 """
@@ -1292,7 +1300,7 @@ async def _get_reference_price(self) -> decimal.Decimal:
12921300 local_exchange_name , self .exchange_manager .id
12931301 ):
12941302 exchange_manager = trading_api .get_exchange_manager_from_exchange_id (exchange_id )
1295- if exchange_manager .is_trading and exchange_manager is not self .exchange_manager :
1303+ if exchange_manager .trading_modes and exchange_manager is not self .exchange_manager :
12961304 await self .sent_once_critical_notification (
12971305 "Configuration issue" ,
12981306 f"Multiple simultaneous trading exchanges is not supported on { self .trading_mode .get_name ()} "
0 commit comments