diff --git a/client/mm/exchange_adaptor.go b/client/mm/exchange_adaptor.go index 79f9f8738f..7abbb6336d 100644 --- a/client/mm/exchange_adaptor.go +++ b/client/mm/exchange_adaptor.go @@ -2297,6 +2297,7 @@ func (u *unifiedExchangeAdaptor) cancelAllOrders(ctx context.Context) { u.tryCancelOrders(ctx, nil, true) return } + defer bookFeed.Close() mktCfg, err := u.clientCore.ExchangeMarket(u.host, u.baseID, u.quoteID) if err != nil { diff --git a/client/mm/mm_arb_market_maker.go b/client/mm/mm_arb_market_maker.go index 13c1a28a8c..cf69f70edb 100644 --- a/client/mm/mm_arb_market_maker.go +++ b/client/mm/mm_arb_market_maker.go @@ -448,6 +448,7 @@ func (a *arbMarketMaker) botLoop(ctx context.Context) (*sync.WaitGroup, error) { a.rebalance(epoch.Current) } case <-ctx.Done(): + bookFeed.Close() return } } diff --git a/client/mm/mm_basic.go b/client/mm/mm_basic.go index 6ba79ace5c..38aab6f30a 100644 --- a/client/mm/mm_basic.go +++ b/client/mm/mm_basic.go @@ -395,6 +395,7 @@ func (m *basicMarketMaker) botLoop(ctx context.Context) (*sync.WaitGroup, error) m.rebalance(epoch.Current) } case <-ctx.Done(): + bookFeed.Close() return } } diff --git a/client/mm/mm_simple_arb.go b/client/mm/mm_simple_arb.go index bd138a40e0..cf16507ec5 100644 --- a/client/mm/mm_simple_arb.go +++ b/client/mm/mm_simple_arb.go @@ -465,6 +465,7 @@ func (a *simpleArbMarketMaker) botLoop(ctx context.Context) (*sync.WaitGroup, er a.rebalance(epoch.Current) } case <-ctx.Done(): + bookFeed.Close() return } }