[Quantproject-developers] QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag RunWalkForwardLa
Brought to you by:
glauco_1
|
From: Glauco S. <gla...@us...> - 2006-04-08 18:35:43
|
Update of /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21254/b7_Scripts/WalkForwardTesting/WalkForwardLag Modified Files: RunWalkForwardLag.cs Log Message: A private WFLagLog object has been added and handled, to save a log for the backtest. Index: RunWalkForwardLag.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag/RunWalkForwardLag.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** RunWalkForwardLag.cs 14 Mar 2006 14:59:35 -0000 1.1 --- RunWalkForwardLag.cs 8 Apr 2006 18:35:36 -0000 1.2 *************** *** 29,33 **** --- 29,35 ---- using QuantProject.Business.Scripting; using QuantProject.Business.Timing; + using QuantProject.Presentation; using QuantProject.Presentation.Reporting.WindowsForm; + using QuantProject.Scripts.WalkForwardTesting.WalkForwardLag.WFLagDebugger; namespace QuantProject.Scripts.WalkForwardTesting.WalkForwardLag *************** *** 58,61 **** --- 60,65 ---- private WFLagEndOfDayTimerHandler endOfDayTimerHandler; + private WFLagLog wFLagLog; + public event NewProgressEventHandler InSampleNewProgress; *************** *** 87,90 **** --- 91,97 ---- this.maxRunningHours = maxRunningHours; + this.wFLagLog = + new WFLagLog( this.numberDaysForInSampleOptimization , + this.benchmark ); } *************** *** 148,151 **** --- 155,159 ---- this.account.AddCash( 30000 ); } + #region oneHourAfterMarketCloseEventHandler private void oneHourAfterMarketCloseEventHandler_handleProgessBarForm( IEndOfDayTimer endOfDayTimer ) *************** *** 157,161 **** Console.WriteLine( progress ); } ! public void oneHourAfterMarketCloseEventHandler( Object sender , EndOfDayTimingEventArgs endOfDayTimingEventArgs ) { --- 165,211 ---- Console.WriteLine( progress ); } ! private string nowToString() ! { ! string returnValue = ! DateTime.Now.Year.ToString() + "_" + ! DateTime.Now.Month.ToString() + "_" + ! DateTime.Now.Day.ToString(); ! return returnValue; ! } ! private string getDefaultLogFileName() ! { ! string defaultFileName = ! nowToString() + "_" + ! "DrivingPositions_" + this.numberOfDrivingPositions + "_" + ! "DrivingPositions_" + this.numberOfPortfolioPositions + "_" + ! "From_" + this.nowToString() + "_" + ! "To_" + this.nowToString(); ! return defaultFileName; ! } ! private void saveLog() ! { ! this.wFLagLog.TransactionHistory = this.account.Transactions; ! string defaultFolderPath = ! "C:\\Documents and Settings\\Glauco\\Desktop\\reports\\WalkForwardLag"; ! VisualObjectArchiver visualObjectArchiver = ! new VisualObjectArchiver(); ! visualObjectArchiver.Save( this.wFLagLog , "qPWFLagLog" , ! this.getDefaultLogFileName() , defaultFolderPath ); ! } ! private void showReport( object sender ) ! { ! DateTime lastReportDateTime = this.lastDateTime; ! if ( ( ( IEndOfDayTimer )sender ).GetCurrentTime().DateTime < ! lastReportDateTime ) ! lastReportDateTime = ! ( ( IEndOfDayTimer )sender ).GetCurrentTime().DateTime; ! Report report = new Report( this.account , this.historicalQuoteProvider ); ! report.Create( "Walk Forward Lag" , 1 , ! new EndOfDayDateTime( lastReportDateTime , ! EndOfDaySpecificTime.OneHourAfterMarketClose ) , ! this.benchmark ); ! report.Show(); ! } ! private void oneHourAfterMarketCloseEventHandler( Object sender , EndOfDayTimingEventArgs endOfDayTimingEventArgs ) { *************** *** 171,184 **** // ObjectArchiver.Archive( this.account , // @"C:\Documents and Settings\Glauco\Desktop\reports\final.qP" ); ! DateTime lastReportDateTime = this.lastDateTime; ! if ( ( ( IEndOfDayTimer )sender ).GetCurrentTime().DateTime < ! lastReportDateTime ) ! lastReportDateTime = ! ( ( IEndOfDayTimer )sender ).GetCurrentTime().DateTime; ! Report report = new Report( this.account , this.historicalQuoteProvider ); ! report.Create( "Walk Forward Lag" , 1 , ! new EndOfDayDateTime( lastReportDateTime , ! EndOfDaySpecificTime.OneHourAfterMarketClose ) , ! this.benchmark ); // WFMultiOneRankReportDebugger wFMultiOneRankReportDebugger = // new WFMultiOneRankReportDebugger( this.numberOfPortfolioPositions , --- 221,226 ---- // ObjectArchiver.Archive( this.account , // @"C:\Documents and Settings\Glauco\Desktop\reports\final.qP" ); ! this.saveLog(); ! this.showReport( sender ); // WFMultiOneRankReportDebugger wFMultiOneRankReportDebugger = // new WFMultiOneRankReportDebugger( this.numberOfPortfolioPositions , *************** *** 187,191 **** // new MouseEventHandler( // wFMultiOneRankReportDebugger.MouseClickEventHandler ); - report.Show(); } else --- 229,232 ---- *************** *** 194,197 **** --- 235,247 ---- ( IEndOfDayTimer )sender ); } + #endregion + private void newChosenTickersEventHandler( object sender , + WFLagNewChosenTickersEventArgs eventArgs ) + { + WFLagChosenPositions wFLagChosenPositions = + new WFLagChosenPositions( eventArgs.WFLagChosenTickers , + this.endOfDayTimer.GetCurrentTime().DateTime ); + this.wFLagLog.Add( wFLagChosenPositions ); + } private void run_addEventHandlers() { *************** *** 207,212 **** new OneHourAfterMarketCloseEventHandler( this.oneHourAfterMarketCloseEventHandler ); } - public override void Run() { --- 257,264 ---- new OneHourAfterMarketCloseEventHandler( this.oneHourAfterMarketCloseEventHandler ); + this.endOfDayTimerHandler.NewChosenTickers += + new NewChosenTickersEventHandler( + this.newChosenTickersEventHandler ); } public override void Run() { |