[Quantproject-developers] QuantProject/b4_Business/a2_Strategies/returnsManagement/time CloseToClo
Brought to you by:
glauco_1
|
From: Marco M. <mi...@us...> - 2007-09-23 22:04:24
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/returnsManagement/time In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv2565/a2_Strategies/returnsManagement/time Modified Files: CloseToCloseIntervals.cs Log Message: Added a new constructor to the class, in order to set the IntervalLength for each return (each interval begins at a given market day "i" and ends at market day "i + intervalLength"). Default IntervalLength is equal to 1 (daily close to close intervals). Index: CloseToCloseIntervals.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/returnsManagement/time/CloseToCloseIntervals.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** CloseToCloseIntervals.cs 16 Sep 2007 21:38:05 -0000 1.1 --- CloseToCloseIntervals.cs 23 Sep 2007 22:04:10 -0000 1.2 *************** *** 33,36 **** --- 33,38 ---- public class CloseToCloseIntervals : ReturnIntervals { + private int intervalLength = 1;//default intervals are daily + /// <summary> /// Creates the close to close intervals for the given benchmark, from *************** *** 44,48 **** --- 46,69 ---- base( firstEndOfDayDateTime , lastEndOfDayDateTime , benchmark ) { + } + /// <summary> + /// Creates the close to close intervals for the given benchmark, from + /// the first EndOfDayDateTime to the last EndOfDayDateTime: + /// each interval begins at a given market day "i" and ends at + /// market day "i + intervalLength" + /// </summary> + /// <param name="firstEndOfDayDateTime"></param> + /// <param name="lastEndOfDayDateTime"></param> + /// <param name="benchmark"></param> + /// <param name="intervalLength"></param> + public CloseToCloseIntervals( EndOfDayDateTime firstEndOfDayDateTime , + EndOfDayDateTime lastEndOfDayDateTime , + string benchmark , int intervalLength ) : + base( firstEndOfDayDateTime , lastEndOfDayDateTime , benchmark ) + { + this.intervalLength = intervalLength; + } + #region setIntervals private void addInterval( History marketDaysForBenchmark , int i ) *************** *** 51,55 **** (DateTime)marketDaysForBenchmark.GetKey( i ); DateTime dateTimeForIntervalEnd = ! (DateTime)marketDaysForBenchmark.GetKey( i + 1 ); ReturnInterval returnInterval = new ReturnInterval( new EndOfDayDateTime( dateTimeForIntervalBegin , --- 72,76 ---- (DateTime)marketDaysForBenchmark.GetKey( i ); DateTime dateTimeForIntervalEnd = ! (DateTime)marketDaysForBenchmark.GetKey( i + this.intervalLength ); ReturnInterval returnInterval = new ReturnInterval( new EndOfDayDateTime( dateTimeForIntervalBegin , *************** *** 61,65 **** private void setIntervals( History marketDaysForBenchmark ) { ! for( int i = 0 ; i < marketDaysForBenchmark.Count - 1 ; i++ ) this.addInterval( marketDaysForBenchmark , i ); } --- 82,88 ---- private void setIntervals( History marketDaysForBenchmark ) { ! for( int i = 0 ; ! i < marketDaysForBenchmark.Count - this.intervalLength; ! i = i + this.intervalLength ) this.addInterval( marketDaysForBenchmark , i ); } |