From 5c1dd6b2c5271ada85b8119219ee7dd4b9aa9296 Mon Sep 17 00:00:00 2001 From: Sean Date: Tue, 10 Mar 2026 12:47:14 -0400 Subject: [PATCH] Ensure GetModelPerformance does not short return when a price is missing. --- MarketDataLib/Generator/CMMomentum/CMBacktest.cs | 5 +++-- MarketDataLib/Generator/CMTrend/CMTTrendModel..cs | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/MarketDataLib/Generator/CMMomentum/CMBacktest.cs b/MarketDataLib/Generator/CMMomentum/CMBacktest.cs index b0c48be..fda35e8 100644 --- a/MarketDataLib/Generator/CMMomentum/CMBacktest.cs +++ b/MarketDataLib/Generator/CMMomentum/CMBacktest.cs @@ -146,8 +146,9 @@ namespace MarketData.Generator.CMMomentum price=PricingDA.GetPrice(openPosition.Symbol,currentDate); if(null==price) { - MDTrace.WriteLine(LogLevel.DEBUG,String.Format("No price for {0} on {1}",openPosition.Symbol,currentDate.ToShortDateString())); - return null; + MDTrace.WriteLine(LogLevel.DEBUG,String.Format("CMBacktest::GetModelPerformance No price for {0} on {1}",openPosition.Symbol,currentDate.ToShortDateString())); + continue; +// return null; } LocalPriceCache.GetInstance().Add(price); } diff --git a/MarketDataLib/Generator/CMTrend/CMTTrendModel..cs b/MarketDataLib/Generator/CMTrend/CMTTrendModel..cs index 7cbba41..f48669e 100644 --- a/MarketDataLib/Generator/CMTrend/CMTTrendModel..cs +++ b/MarketDataLib/Generator/CMTrend/CMTTrendModel..cs @@ -150,7 +150,8 @@ namespace MarketData.Generator.CMTrend if(null==price) { MDTrace.WriteLine(LogLevel.DEBUG,String.Format("******************* No price for {0} on {1} *****************",openPosition.Symbol,currentDate.ToShortDateString())); - return performanceSeries; + continue; +// return performanceSeries; } gainLoss+=((price.Close*openPosition.Shares)-(openPosition.PurchasePrice*openPosition.Shares)); marketValue+=(price.Close*openPosition.Shares);