[Thread=1][TRACE.VERBOSE][6/15/2025 9:16:35 PM] [PortfolioManager.Program::Main(args)][MAIN:STARTING] [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:35 PM] [PortfolioManager.Program::Main(args)]Using portfolio_data at 10.0.0.199 [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:35 PM] [PortfolioManager.Program::Main(args)]Using market_data at 10.0.0.199 [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:35 PM] [PortfolioManager.Program::Main(args)]Using user_data at 10.0.0.199 [Thread=13][TRACE.VERBOSE][6/15/2025 9:16:38 PM] [MarketData.Generator.MGSHMomentum.MGSHMomentumBacktest::GetModelPerformance(sessionParams)]Done, total took 2215(ms) [Thread=13][TRACE.VERBOSE][6/15/2025 9:16:39 PM] [MarketData.Generator.MGSHMomentum.MGSHMomentumBacktest::GetModelPerformance(sessionParams)]Done, total took 97(ms) [Thread=19][TRACE.VERBOSE][6/15/2025 9:16:40 PM] [MarketData.Generator.CMTrend.CMTTrendModel::GetModelPerformance(sessionParams)]Done, total took 3541(ms) [Thread=17][TRACE.VERBOSE][6/15/2025 9:16:40 PM] [MarketData.Generator.CMMomentum.CMMomentumBacktest::GetModelPerformance(sessionParams)]Done, took 3770(ms) [Thread=17][TRACE.VERBOSE][6/15/2025 9:16:40 PM] [MarketData.Generator.CMMomentum.CMMomentumBacktest::GetModelPerformance(sessionParams)]Done, took 50(ms) [Thread=18][TRACE.VERBOSE][6/15/2025 9:16:40 PM] [MarketData.Generator.Momentum.MomentumBacktest::GetModelPerformance(sessionParams)]Done, total took 4206(ms) [Thread=19][TRACE.VERBOSE][6/15/2025 9:16:41 PM] [MarketData.Generator.CMTrend.CMTTrendModel::GetModelPerformance(sessionParams)]Done, total took 27(ms) [Thread=18][TRACE.VERBOSE][6/15/2025 9:16:41 PM] [MarketData.Generator.Momentum.MomentumBacktest::GetModelPerformance(sessionParams)]Done, total took 72(ms) [Thread=1][TRACE.DEBUG][6/15/2025 9:16:42 PM] [PortfolioManager.App+<>c__DisplayClass1_1::b__1(,)]App: Received ClosingHandler event [Thread=1][TRACE.DEBUG][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.MainWindowViewModel::OnDispose()][MainWindowViewModel:OnDispose] [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.MGSHMomentumViewModel::OnDispose()]Dispose MGSHMomentumViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.MomentumViewModel::OnDispose()]Dispose MomentumViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.CMMomentumViewModel::OnDispose()]Dispose CMMomentumViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.CMTrendViewModel::OnDispose()]Dispose CMTrendViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.BollingerBandViewModel::OnDispose()]Dispose BollingerBandViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.BollingerBandViewModel::OnDispose()]Dispose BollingerBandViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.BollingerBandViewModel::OnDispose()]Dispose BollingerBandViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.BollingerBandViewModel::OnDispose()]Dispose BollingerBandViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.BollingerBandViewModel::OnDispose()]Dispose BollingerBandViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.BollingerBandViewModel::OnDispose()]Dispose BollingerBandViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [PortfolioManager.ViewModels.BollingerBandViewModel::OnDispose()]Dispose BollingerBandViewModel [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:42 PM] [MarketData.Cache.LocalPriceCache::Dispose()][LocalPriceCache:Dispose]Thread state is 'WaitSleepJoin'. Joining main thread... [Thread=31][TRACE.VERBOSE][6/15/2025 9:16:43 PM] [MarketData.Cache.LocalPriceCache::ThreadProc()][LocalPriceCache:ThreadProc] Thread ended. Items in cache:0 [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:43 PM] [MarketData.Cache.LocalPriceCache::Dispose()][LocalPriceCache:Dispose] End [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:43 PM] [MarketData.Cache.GBPriceCache::Dispose()][GBPriceCache:Dispose]Thread state is 'WaitSleepJoin'. Joining main thread... [Thread=33][TRACE.VERBOSE][6/15/2025 9:16:44 PM] [MarketData.Cache.GBPriceCache::ThreadProc()][GBPriceCache:ThreadProc]Thread ended. [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:44 PM] [MarketData.Cache.GBPriceCache::Dispose()][GBPriceCache:Dispose] End. [Thread=1][TRACE.DEBUG][6/15/2025 9:16:44 PM] [PortfolioManager.Cache.ImageCache::.ctor()]Reading assets from C:\Avalonia\PortfolioManager/Assets [Thread=1][TRACE.DEBUG][6/15/2025 9:16:44 PM] [PortfolioManager.ViewModels.MainWindowViewModel::OnDispose()][MainWindowViewModel:OnDispose] LEAVE [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:44 PM] [PortfolioManager.Program::Main(args)]There were 62 threads still running at application shutdown. [Thread=1][TRACE.VERBOSE][6/15/2025 9:16:44 PM] [PortfolioManager.Program::Main(args)][MAIN:EXIT]