[Quantproject-developers] QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag/WFLagGenomesDeb
Brought to you by:
glauco_1
|
From: Glauco S. <gla...@us...> - 2006-07-22 20:25:12
|
Update of /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag/WFLagGenomesDebugger In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv29615/b7_Scripts/WalkForwardTesting/WalkForwardLag/WFLagGenomesDebugger Modified Files: WFLagSharpeRatioComputer.cs Log Message: - the private static method getCommonMarketDays returns the exact set of common market days, for a set of given tickers - the public static method GetExpectancyScore has been added (I understand the class' name is not appropriate anymore; to be changed in the future) Index: WFLagSharpeRatioComputer.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag/WFLagGenomesDebugger/WFLagSharpeRatioComputer.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** WFLagSharpeRatioComputer.cs 29 Jun 2006 17:00:51 -0000 1.1 --- WFLagSharpeRatioComputer.cs 22 Jul 2006 20:25:06 -0000 1.2 *************** *** 95,110 **** return strategyReturns; } private static double[] getStrategyReturns( WFLagChosenPositions wFLagChosenPositions , DateTime firstDate , DateTime lastDate ) { double[] drivingPositionsReturns = SignedTicker.GetCloseToClosePortfolioReturns( wFLagChosenPositions.DrivingPositions.Keys , ! firstDate , lastDate ); double[] portfolioPositionsReturns = SignedTicker.GetCloseToClosePortfolioReturns( wFLagChosenPositions.PortfolioPositions.Keys , ! firstDate , lastDate ); double[] strategyReturns = getStrategyReturns( drivingPositionsReturns , portfolioPositionsReturns ); --- 95,124 ---- return strategyReturns; } + private static SortedList getCommonMarketDays( + WFLagChosenPositions wFLagChosenPositions , + DateTime firstDate , DateTime lastDate ) + { + string[] tickers = + WFLagChosenPositionsDebugInfo.GetDrivingAndPortfolioTickers( + wFLagChosenPositions ); + SortedList commonMarketDays = + QuantProject.Data.DataTables.Quotes.GetCommonMarketDays( + tickers , firstDate , lastDate ); + return commonMarketDays; + } private static double[] getStrategyReturns( WFLagChosenPositions wFLagChosenPositions , DateTime firstDate , DateTime lastDate ) { + SortedList commonMarketDays = + getCommonMarketDays( wFLagChosenPositions , firstDate , lastDate ); double[] drivingPositionsReturns = SignedTicker.GetCloseToClosePortfolioReturns( wFLagChosenPositions.DrivingPositions.Keys , ! commonMarketDays ); double[] portfolioPositionsReturns = SignedTicker.GetCloseToClosePortfolioReturns( wFLagChosenPositions.PortfolioPositions.Keys , ! commonMarketDays ); double[] strategyReturns = getStrategyReturns( drivingPositionsReturns , portfolioPositionsReturns ); *************** *** 131,134 **** --- 145,167 ---- return sharpeRatio; } + public static double GetExpectancyScore( + WFLagChosenPositions wFLagChosenPositions , + DateTime firstDate , DateTime lastDate ) + { + double expectancyScore = double.MinValue; + try + { + double[] strategyReturns = getStrategyReturns( + wFLagChosenPositions , firstDate , lastDate ); + expectancyScore = + AdvancedFunctions.GetExpectancyScore( strategyReturns ); + } + catch( MissingQuoteException ex ) + { + expectancyScore = double.MinValue; + string dummy = ex.Message; + } + return expectancyScore; + } } } |