[Quantproject-developers] QuantProject/b7_Scripts/TechnicalAnalysisTesting/TrendFollowing/Immediate
Brought to you by:
glauco_1
Update of /cvsroot/quantproject/QuantProject/b7_Scripts/TechnicalAnalysisTesting/TrendFollowing/ImmediateTrendFollower In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv17578/TrendFollowing/ImmediateTrendFollower Modified Files: EndOfDayTimerHandlerITF.cs GenomeManagerITF.cs RunImmediateTrendFollower.cs Log Message: The new revision moves toward an intraday enabled framework. EndOfDayDate time has been removed, DateTime is used now. The code has been changed accordingly. Index: GenomeManagerITF.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/TechnicalAnalysisTesting/TrendFollowing/ImmediateTrendFollower/GenomeManagerITF.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** GenomeManagerITF.cs 14 Jan 2008 23:38:36 -0000 1.3 --- GenomeManagerITF.cs 29 Sep 2008 21:19:39 -0000 1.4 *************** *** 72,83 **** private void setReturnsManager() { ! EndOfDayDateTime firstEndOfDayDateTime = ! new EndOfDayDateTime(firstQuoteDate, EndOfDaySpecificTime.MarketClose); ! EndOfDayDateTime lastEndOfDayDateTime = ! new EndOfDayDateTime(lastQuoteDate, EndOfDaySpecificTime.MarketClose); this.returnsManager = new ReturnsManager( new CloseToCloseIntervals( ! firstEndOfDayDateTime, ! lastEndOfDayDateTime, this.benchmark, this.numDaysForReturnCalculation) , --- 72,85 ---- private void setReturnsManager() { ! DateTime firstDateTime = ! HistoricalEndOfDayTimer.GetMarketClose( firstQuoteDate ); ! // new EndOfDayDateTime(firstQuoteDate, EndOfDaySpecificTime.MarketClose); ! DateTime lastDateTime = ! HistoricalEndOfDayTimer.GetMarketClose( lastQuoteDate ); ! // new EndOfDayDateTime(lastQuoteDate, EndOfDaySpecificTime.MarketClose); this.returnsManager = new ReturnsManager( new CloseToCloseIntervals( ! firstDateTime, ! lastDateTime, this.benchmark, this.numDaysForReturnCalculation) , *************** *** 107,114 **** protected override float[] getStrategyReturns() { ! EndOfDayDateTime firstEndOfDayDateTime = ! new EndOfDayDateTime(firstQuoteDate, EndOfDaySpecificTime.MarketClose); ! EndOfDayDateTime lastEndOfDayDateTime = ! new EndOfDayDateTime(lastQuoteDate, EndOfDaySpecificTime.MarketClose); float[] plainReturns = this.weightedPositionsFromGenome.GetReturns( this.returnsManager); --- 109,118 ---- protected override float[] getStrategyReturns() { ! DateTime firstDateTime = ! HistoricalEndOfDayTimer.GetMarketClose( firstQuoteDate ); ! // new EndOfDayDateTime(firstQuoteDate, EndOfDaySpecificTime.MarketClose); ! DateTime lastDateTime = ! HistoricalEndOfDayTimer.GetMarketClose( lastQuoteDate ); ! // new EndOfDayDateTime(lastQuoteDate, EndOfDaySpecificTime.MarketClose); float[] plainReturns = this.weightedPositionsFromGenome.GetReturns( this.returnsManager); Index: EndOfDayTimerHandlerITF.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/TechnicalAnalysisTesting/TrendFollowing/ImmediateTrendFollower/EndOfDayTimerHandlerITF.cs,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** EndOfDayTimerHandlerITF.cs 19 Aug 2008 17:11:28 -0000 1.7 --- EndOfDayTimerHandlerITF.cs 29 Sep 2008 21:19:39 -0000 1.8 *************** *** 45,49 **** /// </summary> [Serializable] ! public class EndOfDayTimerHandlerITF : EndOfDayTimerHandler { private int numDaysForReturnCalculation; --- 45,50 ---- /// </summary> [Serializable] ! public class EndOfDayTimerHandlerITF : ! QuantProject.Scripts.TickerSelectionTesting.EfficientPortfolios.EndOfDayTimerHandler { private int numDaysForReturnCalculation; *************** *** 80,91 **** } ! public override void MarketOpenEventHandler( ! Object sender , EndOfDayTimingEventArgs endOfDayTimingEventArgs ) { ; } ! #region MarketCloseEventHandler ! protected void marketCloseEventHandler_updateStopLossCondition() { --- 81,91 ---- } ! protected override void marketOpenEventHandler( ! Object sender , DateTime dateTime ) { ; } ! #region marketCloseEventHandler protected void marketCloseEventHandler_updateStopLossCondition() { *************** *** 160,165 **** } ! public override void MarketCloseEventHandler( ! Object sender , EndOfDayTimingEventArgs endOfDayTimingEventArgs ) { //this.marketCloseEventHandler_updateStopLossCondition(); --- 160,165 ---- } ! protected override void marketCloseEventHandler( ! Object sender , DateTime dateTime ) { //this.marketCloseEventHandler_updateStopLossCondition(); *************** *** 176,184 **** } ! #endregion ! ! #region OneHourAfterMarketCloseEventHandler ! protected DataTable getSetOfTickersToBeOptimized(DateTime currentDate) { --- 176,182 ---- } ! #endregion marketCloseEventHandler ! #region oneHourAfterMarketCloseEventHandler protected DataTable getSetOfTickersToBeOptimized(DateTime currentDate) { *************** *** 276,283 **** /// <param name="sender"></param> /// <param name="eventArgs"></param> ! public override void OneHourAfterMarketCloseEventHandler( ! Object sender , EndOfDayTimingEventArgs endOfDayTimingEventArgs ) { ! this.lastCloseDate = endOfDayTimingEventArgs.EndOfDayDateTime.DateTime; this.seedForRandomGenerator++; this.numDaysElapsedSinceLastOptimization++; --- 274,281 ---- /// <param name="sender"></param> /// <param name="eventArgs"></param> ! protected override void oneHourAfterMarketCloseEventHandler( ! Object sender , DateTime dateTime ) { ! this.lastCloseDate = dateTime; this.seedForRandomGenerator++; this.numDaysElapsedSinceLastOptimization++; *************** *** 287,291 **** //it is the first close (OLD IMPLEMENTATION) { ! this.setTickers(endOfDayTimingEventArgs.EndOfDayDateTime.DateTime, false); //sets tickers to be chosen next Market Close event this.numDaysElapsedSinceLastOptimization = 0; --- 285,289 ---- //it is the first close (OLD IMPLEMENTATION) { ! this.setTickers(dateTime, false); //sets tickers to be chosen next Market Close event this.numDaysElapsedSinceLastOptimization = 0; *************** *** 293,297 **** } ! #endregion } } --- 291,295 ---- } ! #endregion oneHourAfterMarketCloseEventHandler } } Index: RunImmediateTrendFollower.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/TechnicalAnalysisTesting/TrendFollowing/ImmediateTrendFollower/RunImmediateTrendFollower.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** RunImmediateTrendFollower.cs 19 Aug 2008 17:13:08 -0000 1.2 --- RunImmediateTrendFollower.cs 29 Sep 2008 21:19:39 -0000 1.3 *************** *** 95,115 **** protected override void run_initializeHistoricalQuoteProvider() { ! this.historicalQuoteProvider = new HistoricalAdjustedQuoteProvider(); } protected override void run_addEventHandlers() { ! ! this.endOfDayTimer.MarketClose += ! new MarketCloseEventHandler( ! this.endOfDayTimerHandler.MarketCloseEventHandler); ! ! this.endOfDayTimer.MarketClose += ! new MarketCloseEventHandler( ! this.checkDateForReport); ! ! this.endOfDayTimer.OneHourAfterMarketClose += ! new OneHourAfterMarketCloseEventHandler( ! this.endOfDayTimerHandler.OneHourAfterMarketCloseEventHandler); } --- 95,120 ---- protected override void run_initializeHistoricalQuoteProvider() { ! this.historicalMarketValueProvider = new HistoricalAdjustedQuoteProvider(); } protected override void run_addEventHandlers() { ! ! this.endOfDayTimer.NewDateTime += ! new NewDateTimeEventHandler( this.endOfDayTimerHandler.NewDateTimeEventHandler ); ! this.endOfDayTimer.NewDateTime += ! new NewDateTimeEventHandler( this.checkDateForReport ); ! ! // this.endOfDayTimer.MarketClose += ! // new MarketCloseEventHandler( ! // this.endOfDayTimerHandler.MarketCloseEventHandler); ! // ! // this.endOfDayTimer.MarketClose += ! // new MarketCloseEventHandler( ! // this.checkDateForReport); ! // ! // this.endOfDayTimer.OneHourAfterMarketClose += ! // new OneHourAfterMarketCloseEventHandler( ! // this.endOfDayTimerHandler.OneHourAfterMarketCloseEventHandler); } *************** *** 134,138 **** //default report with numIntervalDays = 1 AccountReport accountReport = this.account.CreateReport(fileName,1, ! this.endOfDayTimer.GetCurrentTime(), this.benchmark, new HistoricalAdjustedQuoteProvider()); --- 139,143 ---- //default report with numIntervalDays = 1 AccountReport accountReport = this.account.CreateReport(fileName,1, ! this.endOfDayTimer.GetCurrentDateTime(), this.benchmark, new HistoricalAdjustedQuoteProvider()); |