[Quantproject-developers] QuantProject/b7_Scripts/WalkForwardTesting/PairsTrading/OutOfSampleChoose
Brought to you by:
glauco_1
|
From: Glauco S. <gla...@us...> - 2008-09-29 21:20:17
|
Update of /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/PairsTrading/OutOfSampleChoosers In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv17626/PairsTrading/OutOfSampleChoosers Modified Files: OutOfSampleChooser.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: OutOfSampleChooser.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/PairsTrading/OutOfSampleChoosers/OutOfSampleChooser.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** OutOfSampleChooser.cs 27 Apr 2008 17:42:52 -0000 1.1 --- OutOfSampleChooser.cs 29 Sep 2008 21:19:47 -0000 1.2 *************** *** 38,41 **** --- 38,42 ---- /// this class selects the positions to be opened /// </summary> + [Serializable] public abstract class OutOfSampleChooser { *************** *** 75,79 **** #region getReturnsManagerForLastSecondPhaseInterval ! private EndOfDayDateTime getIntervalBeginForLastSecondPhaseInterval( ReturnIntervals outOfSampleReturnIntervals ) --- 76,80 ---- #region getReturnsManagerForLastSecondPhaseInterval ! private DateTime getIntervalBeginForLastSecondPhaseInterval( ReturnIntervals outOfSampleReturnIntervals ) *************** *** 86,90 **** return secondLastInterval.End; } ! private EndOfDayDateTime getIntervalEndForLastSecondPhaseInterval( ReturnIntervals outOfSampleReturnIntervals ) --- 87,91 ---- return secondLastInterval.End; } ! private DateTime getIntervalEndForLastSecondPhaseInterval( ReturnIntervals outOfSampleReturnIntervals ) *************** *** 96,103 **** ReturnIntervals outOfSampleReturnIntervals ) { ! EndOfDayDateTime intervalBegin = this.getIntervalBeginForLastSecondPhaseInterval( outOfSampleReturnIntervals ); ! EndOfDayDateTime intervalEnd = this.getIntervalEndForLastSecondPhaseInterval( outOfSampleReturnIntervals ); --- 97,104 ---- ReturnIntervals outOfSampleReturnIntervals ) { ! DateTime intervalBegin = this.getIntervalBeginForLastSecondPhaseInterval( outOfSampleReturnIntervals ); ! DateTime intervalEnd = this.getIntervalEndForLastSecondPhaseInterval( outOfSampleReturnIntervals ); *************** *** 119,123 **** private ReturnsManager getReturnsManagerForLastSecondPhaseInterval( ReturnIntervals outOfSampleReturnIntervals , ! IHistoricalQuoteProvider historicalQuoteProviderForChosingPositionsOutOfSample ) { ReturnIntervals returnIntervals = --- 120,125 ---- private ReturnsManager getReturnsManagerForLastSecondPhaseInterval( ReturnIntervals outOfSampleReturnIntervals , ! HistoricalMarketValueProvider ! historicalMarketValueProviderForChosingPositionsOutOfSample ) { ReturnIntervals returnIntervals = *************** *** 129,133 **** ReturnsManager returnsManager = new ReturnsManager( returnIntervals , ! historicalQuoteProviderForChosingPositionsOutOfSample ); return returnsManager; } --- 131,135 ---- ReturnsManager returnsManager = new ReturnsManager( returnIntervals , ! historicalMarketValueProviderForChosingPositionsOutOfSample ); return returnsManager; } *************** *** 249,259 **** TestingPositions[] bestTestingPositionsInSample , ReturnIntervals outOfSampleReturnIntervals , ! IHistoricalQuoteProvider ! historicalQuoteProviderForChosingPositionsOutOfSample ) { ReturnsManager returnsManagerForLastSecondPhaseInterval = this.getReturnsManagerForLastSecondPhaseInterval( outOfSampleReturnIntervals , ! historicalQuoteProviderForChosingPositionsOutOfSample ); ArrayList inefficientCouples = this.getInefficientCouples( bestTestingPositionsInSample , --- 251,261 ---- TestingPositions[] bestTestingPositionsInSample , ReturnIntervals outOfSampleReturnIntervals , ! HistoricalMarketValueProvider ! historicalMarketValueProviderForChosingPositionsOutOfSample ) { ReturnsManager returnsManagerForLastSecondPhaseInterval = this.getReturnsManagerForLastSecondPhaseInterval( outOfSampleReturnIntervals , ! historicalMarketValueProviderForChosingPositionsOutOfSample ); ArrayList inefficientCouples = this.getInefficientCouples( bestTestingPositionsInSample , *************** *** 288,293 **** TestingPositions[] bestTestingPositionsInSample , ReturnIntervals outOfSampleReturnIntervals , ! IHistoricalQuoteProvider ! historicalQuoteProviderForChosingPositionsOutOfSample ) { ArrayList arrayListOfInefficientCouples = --- 290,295 ---- TestingPositions[] bestTestingPositionsInSample , ReturnIntervals outOfSampleReturnIntervals , ! HistoricalMarketValueProvider ! historicalMarketValueProviderForChosingPositionsOutOfSample ) { ArrayList arrayListOfInefficientCouples = *************** *** 295,299 **** bestTestingPositionsInSample , outOfSampleReturnIntervals , ! historicalQuoteProviderForChosingPositionsOutOfSample ); WeightedPositions[] inefficientCouples = this.getInefficientCouplesFromArrayList( arrayListOfInefficientCouples ); --- 297,301 ---- bestTestingPositionsInSample , outOfSampleReturnIntervals , ! historicalMarketValueProviderForChosingPositionsOutOfSample ); WeightedPositions[] inefficientCouples = this.getInefficientCouplesFromArrayList( arrayListOfInefficientCouples ); *************** *** 324,329 **** TestingPositions[] bestTestingPositionsInSample , ReturnIntervals outOfSampleReturnIntervals , ! IHistoricalQuoteProvider ! historicalQuoteProviderForChosingPositionsOutOfSample ) { WeightedPositions[] inefficientCouples = null; --- 326,331 ---- TestingPositions[] bestTestingPositionsInSample , ReturnIntervals outOfSampleReturnIntervals , ! HistoricalMarketValueProvider ! historicalMarketValueProviderForChosingPositionsOutOfSample ) { WeightedPositions[] inefficientCouples = null; *************** *** 334,338 **** bestTestingPositionsInSample , outOfSampleReturnIntervals , ! historicalQuoteProviderForChosingPositionsOutOfSample ); return inefficientCouples; --- 336,340 ---- bestTestingPositionsInSample , outOfSampleReturnIntervals , ! historicalMarketValueProviderForChosingPositionsOutOfSample ); return inefficientCouples; *************** *** 353,358 **** TestingPositions[] bestTestingPositionsInSample , ReturnIntervals outOfSampleReturnIntervals , ! IHistoricalQuoteProvider ! historicalQuoteProviderForChosingPositionsOutOfSample , ReturnsManager inSampleReturnsManager ) { --- 355,360 ---- TestingPositions[] bestTestingPositionsInSample , ReturnIntervals outOfSampleReturnIntervals , ! HistoricalMarketValueProvider ! historicalMarketValueProviderForChosingPositionsOutOfSample , ReturnsManager inSampleReturnsManager ) { *************** *** 362,366 **** bestTestingPositionsInSample , outOfSampleReturnIntervals , ! historicalQuoteProviderForChosingPositionsOutOfSample ); if ( inefficientCouples != null ) // at least an inefficient couple has been found --- 364,368 ---- bestTestingPositionsInSample , outOfSampleReturnIntervals , ! historicalMarketValueProviderForChosingPositionsOutOfSample ); if ( inefficientCouples != null ) // at least an inefficient couple has been found |