quantproject-developers Mailing List for QuantProject (Page 68)
Brought to you by:
glauco_1
You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(7) |
Nov
(103) |
Dec
(67) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(52) |
Feb
(9) |
Mar
(69) |
Apr
(53) |
May
(80) |
Jun
(23) |
Jul
(24) |
Aug
(112) |
Sep
(9) |
Oct
|
Nov
(58) |
Dec
(93) |
| 2005 |
Jan
(90) |
Feb
(93) |
Mar
(61) |
Apr
(56) |
May
(37) |
Jun
(61) |
Jul
(55) |
Aug
(68) |
Sep
(25) |
Oct
(46) |
Nov
(41) |
Dec
(37) |
| 2006 |
Jan
(33) |
Feb
(7) |
Mar
(19) |
Apr
(27) |
May
(73) |
Jun
(49) |
Jul
(83) |
Aug
(66) |
Sep
(45) |
Oct
(16) |
Nov
(15) |
Dec
(7) |
| 2007 |
Jan
(14) |
Feb
(33) |
Mar
|
Apr
(21) |
May
|
Jun
(34) |
Jul
(18) |
Aug
(100) |
Sep
(39) |
Oct
(55) |
Nov
(12) |
Dec
(2) |
| 2008 |
Jan
(120) |
Feb
(133) |
Mar
(129) |
Apr
(104) |
May
(42) |
Jun
(2) |
Jul
(52) |
Aug
(99) |
Sep
(134) |
Oct
|
Nov
(137) |
Dec
(48) |
| 2009 |
Jan
(48) |
Feb
(55) |
Mar
(61) |
Apr
(3) |
May
(2) |
Jun
(1) |
Jul
|
Aug
(51) |
Sep
|
Oct
(7) |
Nov
|
Dec
|
| 2010 |
Jan
(7) |
Feb
(1) |
Mar
(145) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(8) |
Dec
|
| 2011 |
Jan
(78) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(88) |
Sep
(6) |
Oct
(1) |
Nov
|
Dec
|
| 2012 |
Jan
|
Feb
(1) |
Mar
|
Apr
(6) |
May
(5) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
| 2013 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(2) |
| 2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:49:30
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a07_DataProviders In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv18686/b4_Business/a07_DataProviders Modified Files: IHistoricalQuoteProvider.cs Log Message: The following method has been added to the interface: EndOfDayHistory GetEndOfDayQuotes( string ticker , EndOfDayHistory endOfDayHistory ); An implementation of such method returns the historical market values for the given instrument: a quote is returned for every EndOfDayDateTime in endOfDayHistory Index: IHistoricalQuoteProvider.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/a07_DataProviders/IHistoricalQuoteProvider.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** IHistoricalQuoteProvider.cs 9 Jan 2005 23:29:41 -0000 1.1 --- IHistoricalQuoteProvider.cs 16 Sep 2007 21:49:27 -0000 1.2 *************** *** 41,45 **** /// <param name="endOfDayDateTime">end of day date time for the market evaluation</param> /// <returns></returns> ! double GetMarketValue( string instrumentKey , EndOfDayDateTime endOfDayDateTime ); } } --- 41,53 ---- /// <param name="endOfDayDateTime">end of day date time for the market evaluation</param> /// <returns></returns> ! double GetMarketValue( string instrumentKey , ! EndOfDayDateTime endOfDayDateTime ); ! /// <summary> ! /// Returns the historical market values for the given instrument: ! /// a quote is returned for every EndOfDayDateTime in ! /// endOfDayHistory ! /// </summary> ! EndOfDayHistory GetEndOfDayQuotes( string ticker , ! EndOfDayHistory endOfDayHistory ); } } |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:46:29
|
Update of /cvsroot/quantproject/QuantProject/b7_Scripts In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv17332/b7_Scripts Modified Files: b7_Scripts.csproj Log Message: VSNet automatic change Index: b7_Scripts.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/b7_Scripts.csproj,v retrieving revision 1.76 retrieving revision 1.77 diff -C2 -d -r1.76 -r1.77 *** b7_Scripts.csproj 29 Aug 2007 10:14:43 -0000 1.76 --- b7_Scripts.csproj 16 Sep 2007 21:46:25 -0000 1.77 *************** *** 2,6 **** <CSHARP ProjectType = "Local" ! ProductVersion = "7.0.9955" SchemaVersion = "1.0" ProjectGuid = "{451DB77D-D4C7-44D1-8047-2920D864A4CD}" --- 2,6 ---- <CSHARP ProjectType = "Local" ! ProductVersion = "7.0.9466" SchemaVersion = "1.0" ProjectGuid = "{451DB77D-D4C7-44D1-8047-2920D864A4CD}" |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:45:24
|
Update of /cvsroot/quantproject/QuantProject/b4_Business In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv16839/b4_Business Modified Files: b4_Business.csproj Log Message: - a05_Timing\EndOfDayHistory.cs has been added - a07_DataProviders\HistoricalQuoteProvider.cs has been added - a2_Strategies\returnsManagement\CloseToCloseReturnsManager.cs has been removed - a2_Strategies\returnsManagement\time\CloseToCloseIntervals.cs has been added - a2_Strategies\returnsManagement\time\ReturnInterval.cs has been added - a2_Strategies\returnsManagement\time\ReturnIntervals.cs has been added Index: b4_Business.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/b4_Business.csproj,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** b4_Business.csproj 29 Aug 2007 10:10:30 -0000 1.46 --- b4_Business.csproj 16 Sep 2007 21:45:21 -0000 1.47 *************** *** 2,6 **** <CSHARP ProjectType = "Local" ! ProductVersion = "7.0.9955" SchemaVersion = "1.0" ProjectGuid = "{6EE31501-376E-491B-869E-F06D5B7C9C30}" --- 2,6 ---- <CSHARP ProjectType = "Local" ! ProductVersion = "7.0.9466" SchemaVersion = "1.0" ProjectGuid = "{6EE31501-376E-491B-869E-F06D5B7C9C30}" *************** *** 198,201 **** --- 198,206 ---- /> <File + RelPath = "a05_Timing\EndOfDayHistory.cs" + SubType = "Code" + BuildAction = "Compile" + /> + <File RelPath = "a05_Timing\EndOfDaySpecificTime.cs" SubType = "Code" *************** *** 233,236 **** --- 238,246 ---- /> <File + RelPath = "a07_DataProviders\HistoricalQuoteProvider.cs" + SubType = "Code" + BuildAction = "Compile" + /> + <File RelPath = "a07_DataProviders\HistoricalRawQuoteProvider.cs" SubType = "Code" *************** *** 668,677 **** /> <File ! RelPath = "a2_Strategies\returnsManagement\CloseToCloseReturnsManager.cs" SubType = "Code" BuildAction = "Compile" /> <File ! RelPath = "a2_Strategies\returnsManagement\ReturnsManager.cs" SubType = "Code" BuildAction = "Compile" --- 678,697 ---- /> <File ! RelPath = "a2_Strategies\returnsManagement\ReturnsManager.cs" SubType = "Code" BuildAction = "Compile" /> <File ! RelPath = "a2_Strategies\returnsManagement\time\CloseToCloseIntervals.cs" ! SubType = "Code" ! BuildAction = "Compile" ! /> ! <File ! RelPath = "a2_Strategies\returnsManagement\time\ReturnInterval.cs" ! SubType = "Code" ! BuildAction = "Compile" ! /> ! <File ! RelPath = "a2_Strategies\returnsManagement\time\ReturnIntervals.cs" SubType = "Code" BuildAction = "Compile" |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:43:00
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/returnsManagement/time In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv15551 Added Files: ReturnIntervals.cs Log Message: End of day intervals in a timed sequence, i.e. the (n+1)th interval never begins before the (n)th interval ends. These intervals will be used to compute the strategy's returns --- NEW FILE: ReturnIntervals.cs --- /* QuantProject - Quantitative Finance Library ReturnIntervals.cs Copyright (C) 2007 Glauco Siliprandi This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ using System; using System.Collections; using QuantProject.Business.Timing; namespace QuantProject.Business.Strategies.ReturnsManagement.Time { /// <summary> /// End of day intervals in a timed sequence, i.e. the (n+1)th interval /// never begins before the (n)th interval ends /// </summary> public abstract class ReturnIntervals : CollectionBase { protected EndOfDayDateTime firstEndOfDayDateTime; protected EndOfDayDateTime lastEndOfDayDateTime; protected string benchmark; private EndOfDayHistory bordersHistory; public ReturnInterval this[ int index ] { get { return( (ReturnInterval) this.List[ index ] ); } set { this.List[ index ] = value; } } /// <summary> /// The end border for the last interval /// </summary> public EndOfDayDateTime LastEndOfDayDateTime { get { return this[ this.Count - 1 ].End; } } /// <summary> /// The EndOfDayHistory made up by queuing all /// interval's borders /// </summary> public EndOfDayHistory BordersHistory { get { if ( this.bordersHistory == null ) // the border's history has not been set yet this.setBordersHistory(); return this.bordersHistory; } } /// <summary> /// Creates the proper intervals, for the given benchmark, from /// the first EndOfDayDateTime to the last EndOfDayDateTime /// </summary> /// <param name="firstEndOfDayDateTime"></param> /// <param name="lastEndOfDayDateTime"></param> /// <param name="benchmark"></param> public ReturnIntervals( EndOfDayDateTime firstEndOfDayDateTime , EndOfDayDateTime lastEndOfDayDateTime , string benchmark ) { this.firstEndOfDayDateTime = firstEndOfDayDateTime; this.lastEndOfDayDateTime = lastEndOfDayDateTime; this.benchmark = benchmark; this.setIntervals(); } protected abstract void setIntervals(); /// <summary> /// True iff for each interval border, there is an EndOfDayDateTime /// value in the history's eod date times that is exactly the same /// EndOfDayDateTime as the border value /// </summary> /// <param name="endOfDayHistory"></param> /// <returns></returns> public bool AreIntervalBordersAllCoveredBy( EndOfDayHistory endOfDayHistory ) { bool areAllCovered = true; foreach ( ReturnInterval returnInterval in this ) if ( !returnInterval.AreBordersCoveredBy( endOfDayHistory ) ) areAllCovered = false; return areAllCovered; } #region setBordersHistory private bool beginsBeforeTheLastAdded( ReturnInterval returnInterval ) { bool beginsBefore = ( ( this.bordersHistory != null ) && ( this.bordersHistory.Count > 0 ) && ( returnInterval.BeginsBefore( this.bordersHistory.LastEndOfDayDateTime ) ) ); return beginsBefore; } private void checkIfTheIntervalIsWellOrdered( ReturnInterval returnInterval ) { if ( this.beginsBeforeTheLastAdded( returnInterval ) ) throw new Exception( "The first border of the given interval " + "begins before the last EndOfDayDateTime added to the history" ); } private bool beginsOnTheLastAddedTime( ReturnInterval returnInterval ) { bool returnValue = ( ( this.bordersHistory != null ) && ( this.bordersHistory.Count > 0 ) && ( this.bordersHistory.LastEndOfDayDateTime.CompareTo( returnInterval.Begin ) == 0 ) ); return returnValue; } private void setEndOfDayHistoryForCurrentInterval( ReturnInterval returnInterval ) { this.checkIfTheIntervalIsWellOrdered( returnInterval ); if ( this.beginsOnTheLastAddedTime( returnInterval ) ) // the current return interval begins exactly where the // previous interval ended (for instance, it happens for // CloseToClose intervals) this.bordersHistory.Add( returnInterval.End , returnInterval.End ); else { // the current return interval begins after the // previous interval ended (for instance, it happens for the // OpenToClose intervals) this.bordersHistory.Add( returnInterval.Begin , returnInterval.Begin ); this.bordersHistory.Add( returnInterval.End , returnInterval.End ); } } private void setBordersHistory() { this.bordersHistory = new EndOfDayHistory(); for( int i = 0 ; i < this.Count ; i++ ) this.setEndOfDayHistoryForCurrentInterval( this[ i ] ); } #endregion setBordersHistory public void Add( ReturnInterval returnInterval ) { this.List.Add( returnInterval ); } } } |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:40:06
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/returnsManagement/time In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv14115 Added Files: ReturnInterval.cs Log Message: End of day interval: to be used to compute a strategy return on the interval. The interval's end must be later than the interval's begin --- NEW FILE: ReturnInterval.cs --- /* QuantProject - Quantitative Finance Library ReturnInterval.cs Copyright (C) 2007 Glauco Siliprandi This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ using System; using System.Collections; using QuantProject.Business.Timing; namespace QuantProject.Business.Strategies.ReturnsManagement.Time { /// <summary> /// End of day interval: to be used to compute a strategy return /// on the interval. The interval's end must be later than the /// interval's begin /// </summary> public class ReturnInterval { private EndOfDayDateTime begin; private EndOfDayDateTime end; public EndOfDayDateTime Begin { get { return this.begin; } } public EndOfDayDateTime End { get { return this.end; } } /// <summary> /// End of day interval: the end must be later than the begin /// </summary> /// <param name="begin">first interval border</param> /// <param name="end">last interval border</param> public ReturnInterval( EndOfDayDateTime begin , EndOfDayDateTime end ) { this.checkParameters( begin , end ); this.begin = begin; this.end = end; } private void checkParameters( EndOfDayDateTime begin , EndOfDayDateTime end ) { if ( begin.CompareTo( end ) >= 0 ) // begin is equal or greater greater or equal to end throw new Exception( "begin must be smaller than end!" ); } /// <summary> /// True iff for each interval border, there is an EndOfDayDateTime /// value in the EndOfDayHistory that is exactly the same /// EndOfDayDateTime as the border value /// </summary> /// <param name="endOfDayHistory"></param> /// <returns></returns> public bool AreBordersCoveredBy( EndOfDayHistory endOfDayHistory ) { bool areCovered = endOfDayHistory.ContainsKey( this.Begin ) && endOfDayHistory.ContainsKey( this.End ); return areCovered; } /// <summary> /// True iif this Interval begins before endOfDayDateTime /// </summary> /// <param name="endOfDayDateTime"></param> /// <returns></returns> public bool BeginsBefore( EndOfDayDateTime endOfDayDateTime ) { bool beginsBefore = ( this.Begin.CompareTo( endOfDayDateTime ) < 0 ); return beginsBefore; } } } |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:38:08
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/returnsManagement/time In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv13365 Added Files: CloseToCloseIntervals.cs Log Message: Close to close intervals to be used to compute close to close returns --- NEW FILE: CloseToCloseIntervals.cs --- /* QuantProject - Quantitative Finance Library CloseToCloseIntervals.cs Copyright (C) 2007 Glauco Siliprandi This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ using System; using QuantProject.ADT.Histories; using QuantProject.Business.Timing; namespace QuantProject.Business.Strategies.ReturnsManagement.Time { /// <summary> /// Close to close intervals to be used to compute close to close returns /// </summary> public class CloseToCloseIntervals : ReturnIntervals { /// <summary> /// Creates the close to close intervals for the given benchmark, from /// the first EndOfDayDateTime to the last EndOfDayDateTime /// </summary> /// <param name="firstEndOfDayDateTime"></param> /// <param name="lastEndOfDayDateTime"></param> /// <param name="benchmark"></param> public CloseToCloseIntervals( EndOfDayDateTime firstEndOfDayDateTime , EndOfDayDateTime lastEndOfDayDateTime , string benchmark ) : base( firstEndOfDayDateTime , lastEndOfDayDateTime , benchmark ) { } #region setIntervals private void addInterval( History marketDaysForBenchmark , int i ) { DateTime dateTimeForIntervalBegin = (DateTime)marketDaysForBenchmark.GetKey( i ); DateTime dateTimeForIntervalEnd = (DateTime)marketDaysForBenchmark.GetKey( i + 1 ); ReturnInterval returnInterval = new ReturnInterval( new EndOfDayDateTime( dateTimeForIntervalBegin , EndOfDaySpecificTime.MarketClose ) , new EndOfDayDateTime( dateTimeForIntervalEnd , EndOfDaySpecificTime.MarketClose ) ); this.Add( returnInterval ); } private void setIntervals( History marketDaysForBenchmark ) { for( int i = 0 ; i < marketDaysForBenchmark.Count - 1 ; i++ ) this.addInterval( marketDaysForBenchmark , i ); } protected override void setIntervals() { History marketDaysForBenchmark = QuantProject.Data.DataTables.Quotes.GetMarketDays( this.benchmark , firstEndOfDayDateTime.DateTime , lastEndOfDayDateTime.DateTime ); this.setIntervals( marketDaysForBenchmark ); } #endregion setIntervals // private History getTimeLineForOptimization( EndOfDayDateTime now ) // { // DateTime firstInSampleDateForDrivingPositions = // now.DateTime.AddDays( // -( this.NumberDaysForInSampleOptimization - 1 ) ); // DateTime lastInSampleOptimizationDate = // now.DateTime; // return Quotes.GetMarketDays( this.benchmark , // firstInSampleDateForDrivingPositions , lastInSampleOptimizationDate ); // } } } |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:37:42
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/returnsManagement/time In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv13119/time Log Message: Directory /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/returnsManagement/time added to the repository |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:34:44
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/returnsManagement In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv11792/b4_Business/a2_Strategies/returnsManagement Removed Files: CloseToCloseReturnsManager.cs Log Message: The new solution has a single return manager: the end of date times on which returns will be computed, are given as constructor's parameters. --- CloseToCloseReturnsManager.cs DELETED --- |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:32:26
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a07_DataProviders In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv10894/b4_Business/a07_DataProviders Added Files: HistoricalQuoteProvider.cs Log Message: Abstract base class for historical quotes providers --- NEW FILE: HistoricalQuoteProvider.cs --- /* QuantProject - Quantitative Finance Library HistoricalQuoteProvider.cs Copyright (C) 2007 Glauco Siliprandi This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ using System; using QuantProject.Business.Timing; namespace QuantProject.Business.DataProviders { /// <summary> /// Abstract base class for historical quotes providers /// </summary> public abstract class HistoricalQuoteProvider : IHistoricalQuoteProvider { public HistoricalQuoteProvider() { } public abstract double GetMarketValue( string ticker , EndOfDayDateTime endOfDayDateTime ); /// <summary> /// True iif the given ticker was traded at the given time /// </summary> /// <param name="ticker"></param> /// <param name="endOfDayDateTime"></param> /// <returns></returns> public bool WasExchanged( string ticker , EndOfDayDateTime endOfDayDateTime ) { return QuantProject.Data.DataProviders.HistoricalDataProvider.WasExchanged( ticker , endOfDayDateTime.GetNearestExtendedDateTime() ); } #region GetEndOfDayQuotes private void addQuoteActually( string ticker , EndOfDayDateTime endOfDayDateTime , EndOfDayHistory endOfDayQuotes ) { double quote = this.GetMarketValue( ticker , endOfDayDateTime ); endOfDayQuotes.Add( endOfDayDateTime , quote ); } private void addQuote( string ticker , int historyIndex , EndOfDayHistory endOfDayHistory , EndOfDayHistory endOfDayQuotes ) { EndOfDayDateTime currentEndOfDayDateTime = (EndOfDayDateTime)endOfDayHistory.GetByIndex( historyIndex ); if ( this.WasExchanged( ticker , currentEndOfDayDateTime ) ) this.addQuoteActually( ticker , currentEndOfDayDateTime , endOfDayQuotes ); else throw new Exception( "The ticker " + ticker + " is not " + "exchanged at the following end of day date time: " + currentEndOfDayDateTime.ToString() ); } public EndOfDayHistory GetEndOfDayQuotes( string ticker , EndOfDayHistory endOfDayHistory ) { EndOfDayHistory endOfDayQuotes = new EndOfDayHistory(); for ( int i = 0 ; i < endOfDayHistory.Count ; i++ ) this.addQuote( ticker , i , endOfDayHistory , endOfDayQuotes ); return endOfDayQuotes; } #endregion GetEndOfDayQuotes } } |
|
From: Glauco S. <gla...@us...> - 2007-09-16 21:30:50
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a05_Timing In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv10002/b4_Business/a05_Timing Added Files: EndOfDayHistory.cs Log Message: History of end of day events --- NEW FILE: EndOfDayHistory.cs --- /* QuantProject - Quantitative Finance Library EndOfDayHistory.cs Copyright (C) 2003 Glauco Siliprandi This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ using System; using System.Collections; using System.Data; using QuantProject.ADT; using QuantProject.ADT.Statistics; namespace QuantProject.Business.Timing { /// <summary> /// History of end of day events /// </summary> [Serializable] public class EndOfDayHistory : AdvancedSortedList { public EndOfDayDateTime LastEndOfDayDateTime { get { return (EndOfDayDateTime)this.GetKey( this.Count - 1 ); } } /// <summary> /// Returns the ICollection of EndOfDayDateTimes on which the /// history is built /// </summary> public ICollection TimeLine { get { return this.Keys; } } public EndOfDayHistory() : base() { } public Object GetValue( EndOfDayDateTime endOfDayDateTime ) { return this[ endOfDayDateTime ]; } /// <summary> /// Returns the i-1_th element in the history timeline /// </summary> /// <param name="index"></param> /// <returns></returns> public EndOfDayDateTime GetEndOfDayDateTime( int index ) { return (EndOfDayDateTime)this.GetKey( index ); } /// <summary> /// Add an history item, if no collision (contemporary events) is expected /// </summary> /// <param name="dateTime"></param> /// <param name="objectToAdd"></param> /// <returns></returns> public void Add( EndOfDayDateTime endOfDayDateTime , Object objectToAdd ) { base.Add( endOfDayDateTime , objectToAdd ); } // /// <summary> // /// Add an history item when collisions (contemporary events) are possible // /// </summary> // /// <param name="dateTime"></param> // /// <param name="objectToAdd"></param> // public void MultiAdd( DateTime dateTime , Object objectToAdd ) // { // if (!this.ContainsKey( dateTime )) // { // this[ dateTime ] = new ArrayList(); // } // ((ArrayList)this[ dateTime ]).Add( objectToAdd ); // } // // //// #region MultiplyBy //// private double multiplyBy_getCurrentValue( DateTime key ) //// { //// double returnValue; //// try //// { //// returnValue = Convert.ToDouble( this[ key ] ); //// } //// catch ( Exception exception ) //// { //// string errorMessage = "The current History object contains a value " + //// "that cannot be converted to a double. The wrong value is at the date " + //// key.ToString() + ".\nOriginal error message: " + exception.Message; //// throw new Exception( errorMessage ); //// } //// return returnValue; //// } //// /// <summary> //// /// Returns an history where each value is multiplied by the given factor. //// /// The History instance must contain only numeric values //// /// </summary> //// /// <param name="factor"></param> //// /// <returns></returns> //// public History MultiplyBy( double factor ) //// { //// if ( factor == 0.0 ) //// throw new Exception( "factor can not be equal to zero" ); //// History returnValue = new History(); //// foreach ( DateTime key in this.Keys ) //// { //// double currentValue = this.multiplyBy_getCurrentValue( key ); //// returnValue.Add( key , currentValue * factor ); //// } //// return returnValue; //// } //// #endregion //// public DateTime GetNextDay( DateTime dateTime ) //// { //// if ( this.IndexOfKey( dateTime ) == ( this.Count - 1 ) ) //// // it is the last dateTime in the history //// return dateTime.AddDays( 1 ); //// else //// return (DateTime) this.GetKey( this.IndexOfKeyOrPrevious( dateTime ) + 1 ); //// } // //millo - fixed method // public DateTime GetDay( DateTime initialDateTime, int numberOfDaysAhead ) // { // if ( this.IndexOfKey( initialDateTime ) >= ( this.Count - numberOfDaysAhead ) ) // // initial dateTime + n° of days ahead > the last dateTime in History // { // DateTime dateTime; // dateTime = (DateTime)this.GetKey(this.Count -1); // return dateTime.AddDays(this.IndexOfKey(initialDateTime) + numberOfDaysAhead - this.Count); // } // else // return (DateTime) this.GetKey( this.IndexOfKeyOrPrevious( initialDateTime ) + numberOfDaysAhead ); // } //millo // #region "GetFunctionHistory" // // /// <summary> // /// Gets a History object based on a statistical available function // /// </summary> // /// <remarks> // /// Each History's item contains a specific statistical function // /// calculated for each period whose length has to be specified by the user. // /// The key for the History item is the initial date of each period // /// </remarks> // /// <param name="functionToBeCalculated"> // /// Statistical available function to be calculated and stored in the current History object // /// </param> // /// <param name="onEachPeriodOf"> // /// Length in day of each period of calculation // /// </param> // /// /// <param name="startDateTime"> // /// It sets the start date for the time interval containing the returned History // /// </param> // /// /// <param name="endDateTime"> // /// It sets the end date for the time interval containing the returned History // /// </param> // /// // public History GetFunctionHistory(Function functionToBeCalculated, int onEachPeriodOf, // DateTime startDateTime , DateTime endDateTime ) // { // History functionHistory = new History(); // int currentHistoryIndex = this.IndexOfKeyOrPrevious(startDateTime); // double[] data = new double[onEachPeriodOf]; // //the array contains the set of data whose length is specified by the user // double periodIndex = 0; // //in the while statement, if it isn't equal to Floor(currentHistoryIndex/onEachPeriodOf) // //the current index belongs to the period with periodIndex increased by one // int cursorThroughDataArray = 0; // while ( // ( currentHistoryIndex < this.Count ) && // ( ((IComparable)this.GetKey( currentHistoryIndex )).CompareTo( endDateTime ) <= 0 ) ) // { // // // if (Math.Floor(Convert.ToDouble(currentHistoryIndex/onEachPeriodOf)) == periodIndex && // cursorThroughDataArray < onEachPeriodOf) // // //currentHistoryIndex belongs to the current period // { // data[cursorThroughDataArray] = Convert.ToDouble(this.GetByIndex(currentHistoryIndex)); // cursorThroughDataArray++; // functionHistory.Add(this.GetKey( currentHistoryIndex ), null); // currentHistoryIndex++; // // } // else // //currentHistoryIndex doesn't belong to the current period // //so a new item can be added to the object History to be returned // { // cursorThroughDataArray = 0; // DateTime dateTime = (DateTime)this.GetKey( currentHistoryIndex - onEachPeriodOf); // switch (functionToBeCalculated) // { // case Function.SimpleAverage: // functionHistory.SetByIndex(currentHistoryIndex - onEachPeriodOf, // BasicFunctions.SimpleAverage(data)); // //functionHistory.Add( dateTime , BasicFunctions.SimpleAverage(data) ); // break; // case Function.StandardDeviation : // functionHistory.SetByIndex(currentHistoryIndex - onEachPeriodOf, // BasicFunctions.StdDev(data)); // //functionHistory.Add( dateTime , BasicFunctions.StdDev(data) ); // break; // } // } // // periodIndex = Math.Floor(Convert.ToDouble(currentHistoryIndex/onEachPeriodOf)); // // } // // return functionHistory; // } // // #endregion /// <summary> /// It returns true if the current History item value is not null /// and is less than the immediate previous History item whose value is not null /// </summary> /// <param name="dateTime">The date key for current History item</param> // public bool IsDecreased(DateTime dateTime) // { // bool isDecreased = false; // int index = this.IndexOfKey(dateTime); // int previousIndex = index - 1; // if ( index <= 0) // isDecreased = false; // else // { // if(this.GetByIndex(index) != null) // { // while (this.GetByIndex(previousIndex) == null) // { // previousIndex --; // } // // isDecreased = Convert.ToDouble( this.GetByIndex(index)) < // Convert.ToDouble( this.GetByIndex(previousIndex) ); // } // } // return isDecreased; // } // // #region "GetSimpleMovingAverage( int , DateTime , int )" // private double currentContributionToCurrentSum( // int index, // DateTime dateTime , // int numPeriods // ) // { // double currentContribution; // currentContribution = Convert.ToDouble( this.GetByIndex( index ) ); // if ( index >= numPeriods ) // currentContribution -= // Convert.ToDouble( this.GetByIndex( index - numPeriods ) ); // return currentContribution; // } // // public History GetSimpleMovingAverage( int numPeriods , DateTime startDateTime , DateTime endDateTime ) // { // History simpleMovingAverage = new History(); // int index = this.IndexOfKeyOrPrevious( startDateTime ); // double currentSum = 0; // while ( // ( index < this.Count ) && // ( ((IComparable)this.GetKey( index )).CompareTo( endDateTime ) <= 0 ) ) // { // DateTime dateTime = (DateTime)this.GetKey( index ); // currentSum = currentSum + // currentContributionToCurrentSum( index , dateTime , numPeriods ); // if ( index < ( numPeriods - 1 ) ) // // current period is not after numPeriods // simpleMovingAverage.Add( this.GetKey( index ) , null ); // else // { // simpleMovingAverage.Add( dateTime , currentSum/numPeriods ); // } // index++; // } // return simpleMovingAverage; // } //#endregion // // public History GetSimpleMovingAverage( int numPeriods ) // { //// History simpleMovingAverage = new History(); //// double currentSum = 0; //// foreach (DictionaryEntry dictionaryEntry in this) //// { //// currentSum = currentSum + //// currentContributionToCurrentSum( dictionaryEntry , numPeriods ); //// if ( this.IndexOfKey( dictionaryEntry.Key ) >= numPeriods ) //// { //// simpleMovingAverage.Add( dictionaryEntry.Key , currentSum/numPeriods ); //// } //// else //// // current period is not after numPeriods //// simpleMovingAverage.Add( dictionaryEntry.Key , null ); //// } //// return simpleMovingAverage; // // return GetSimpleMovingAverage( numPeriods , // (DateTime) this.GetKey( 0 ) , (DateTime) this.GetKey( this.Count - 1 ) ); // } // // #region "Cross" // private bool wasLessThan( History history , DateTime dateTime ) // { // int backStep = 1; // while ((backStep < this.IndexOfKey( dateTime )) && // (this.GetByIndex(history.IndexOfKey( dateTime )-backStep) != null) && // (history.GetByIndex(history.IndexOfKey( dateTime )-backStep) != null) && // (Convert.ToDouble( this.GetByIndex(this.IndexOfKey( dateTime )-backStep) )== // Convert.ToDouble(history.GetByIndex(history.IndexOfKey( dateTime )-backStep) // ))) // backStep ++; // return // (this.GetByIndex(history.IndexOfKey( dateTime )-backStep) != null) && // (history.GetByIndex(history.IndexOfKey( dateTime )-backStep) != null) && // (Convert.ToDouble( this.GetByIndex(this.IndexOfKey( dateTime )-backStep) )< // Convert.ToDouble(history.GetByIndex(history.IndexOfKey( dateTime )-backStep) // )); // } // public bool Cross( History history , DateTime dateTime ) // { // bool cross; // if ( ( this.IndexOfKey( dateTime ) <= 0 ) || ( history.IndexOfKey( dateTime ) <= 0 ) ) // cross = false; // else // { // cross = ( ( Convert.ToDouble( this[ dateTime ] ) ) > // ( Convert.ToDouble( history[ dateTime ] ) ) ) && // ( wasLessThan( history , dateTime ) ); // } // return cross; // } // #endregion // // #region "ToString" // private string singleToString( DateTime dateTime , Object historyValue ) // { // return "\nDate: " + dateTime + // " Value: " + historyValue.ToString(); // } // private string dictionaryEntryToString( DictionaryEntry dictionaryEntry ) // { // string returnString = ""; // if ( dictionaryEntry.Value.GetType() != Type.GetType( "System.Collections.ArrayList" ) ) // // a single value is stored for this DateTime // returnString = singleToString( (DateTime)dictionaryEntry.Key , dictionaryEntry.Value ); // else // // possibly multivalues are stored for this DateTime // foreach (Object historyValue in ((ArrayList)dictionaryEntry.Value) ) // returnString += singleToString( (DateTime)dictionaryEntry.Key , historyValue ); // return returnString; // } // public override string ToString() // { // string toString = ""; // foreach ( DictionaryEntry dictionaryEntry in this ) // toString += dictionaryEntryToString( dictionaryEntry ); // return toString; // } // #endregion public void ReportToConsole() { Console.Write( this.ToString() ); } } } |
|
From: Marco M. <mi...@us...> - 2007-09-10 22:08:42
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a1_Financial/a2_Accounting/h5_Reporting/SummaryRows In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv32527/b4_Business/a1_Financial/a2_Accounting/h5_Reporting/SummaryRows Modified Files: AverageNumberOfTransactionsPerDay.cs Log Message: Fixed bug: now the average number of transactions per day is rightly computed. But please Glauco take a look at the code because I commented out a code line that should be correct (to me ...). Index: AverageNumberOfTransactionsPerDay.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/a1_Financial/a2_Accounting/h5_Reporting/SummaryRows/AverageNumberOfTransactionsPerDay.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AverageNumberOfTransactionsPerDay.cs 29 Aug 2007 09:20:12 -0000 1.1 --- AverageNumberOfTransactionsPerDay.cs 10 Sep 2007 22:08:37 -0000 1.2 *************** *** 40,44 **** { this.rowDescription = "Average n. of transactions per day"; ! int totalNumberOfTransactions = summary.AccountReport.Account.Transactions.Count; TimeSpan timeSpanForScript = summary.AccountReport.EndDateTime.DateTime.Subtract(summary.AccountReport.StartDateTime); --- 40,46 ---- { this.rowDescription = "Average n. of transactions per day"; ! //int totalNumberOfTransactions = summary.AccountReport.Account.Transactions.Count; ! //there must be a mistake somewhere: why the previous line is not right? ! int totalNumberOfTransactions = summary.AccountReport.TransactionTable.DataTable.Rows.Count; TimeSpan timeSpanForScript = summary.AccountReport.EndDateTime.DateTime.Subtract(summary.AccountReport.StartDateTime); |
|
From: Marco M. <mi...@us...> - 2007-09-05 22:10:21
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a1_Financial/a2_Accounting/h5_Reporting/Tables In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv18367/b4_Business/a1_Financial/a2_Accounting/h5_Reporting/Tables Modified Files: Summary.cs Log Message: Added summary item AverageNumberOfTransactionsPerDay. Now Summary class implements ISerializable interface, in order to be fully compatible with old serialized version of Summary objects. Index: Summary.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/a1_Financial/a2_Accounting/h5_Reporting/Tables/Summary.cs,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** Summary.cs 8 Jun 2006 18:42:37 -0000 1.19 --- Summary.cs 5 Sep 2007 22:10:16 -0000 1.20 *************** *** 1,4 **** --- 1,7 ---- using System; using System.Data; + using System.Reflection; + using System.Runtime.Serialization; + using QuantProject.ADT; using QuantProject.Business.DataProviders; *************** *** 13,17 **** /// </summary> [Serializable] ! public class Summary : ReportTable { private AccountReport accountReport; --- 16,20 ---- /// </summary> [Serializable] ! public class Summary : ReportTable, ISerializable { private AccountReport accountReport; *************** *** 44,47 **** --- 47,52 ---- private NumberLosingPeriods numberLosingPeriods; private PercentageWinningPeriods percentageWinningPeriods; + private AverageNumberOfTransactionsPerDay averageNumberOfTransactionsPerDay; + public AccountReport AccountReport { *************** *** 163,167 **** get { return this.numberWinningShortTrades; } } ! --- 168,175 ---- get { return this.numberWinningShortTrades; } } ! public AverageNumberOfTransactionsPerDay AverageNumberOfTransactionsPerDay ! { ! get { return this.averageNumberOfTransactionsPerDay; } ! } *************** *** 183,186 **** --- 191,247 ---- this.summary( accountReport ); } + + /// <summary> + /// This constructor allows custom deserialization (see the ISerializable + /// interface documentation) + /// </summary> + /// <param name="info"></param> + /// <param name="context"></param> + protected Summary( SerializationInfo info , StreamingContext context ) : + base( "Summary" ) + { + // get the set of serializable members for this class and its base classes + Type thisType = this.GetType(); + MemberInfo[] mi = FormatterServices.GetSerializableMembers( + thisType , context); + + // deserialize the fields from the info object + for (Int32 i = 0 ; i < mi.Length; i++) + { + FieldInfo fieldInfo = (FieldInfo) mi[i]; + + // set the field to the deserialized value + try + { + fieldInfo.SetValue( this , + info.GetValue( fieldInfo.Name, fieldInfo.FieldType ) ); + } + catch(Exception ex) + {ex = ex;} + } + } + + #region GetObjectData + /// <summary> + /// serialize the set of serializable members for this class and base classes + /// </summary> + /// <param name="info"></param> + /// <param name="context"></param> + void ISerializable.GetObjectData( + SerializationInfo info, StreamingContext context) + { + // get the set of serializable members for this class and base classes + Type thisType = this.GetType(); + MemberInfo[] mi = + FormatterServices.GetSerializableMembers( thisType , context); + + // serialize the fields to the info object + for (Int32 i = 0 ; i < mi.Length; i++) + { + info.AddValue(mi[i].Name, ((FieldInfo) mi[i]).GetValue(this)); + } + } + #endregion + #region "getSummary" private void getSummaryTable_setColumns( DataTable equityDataTable ) *************** *** 225,229 **** this.numberWinningShortTrades = new NumberWinningShortTrades( this ); this.totalCommissionAmount = new TotalCommissionAmount( this ); ! // this.DataTable = getSummaryDataTable(); } --- 286,291 ---- this.numberWinningShortTrades = new NumberWinningShortTrades( this ); this.totalCommissionAmount = new TotalCommissionAmount( this ); ! this.averageNumberOfTransactionsPerDay = new AverageNumberOfTransactionsPerDay(this); ! //this.DataTable = getSummaryDataTable(); } |
|
From: Marco M. <mi...@us...> - 2007-09-05 22:07:25
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv16885/b4_Business/a2_Strategies Modified Files: WeightedPositions.cs Log Message: Fixed bug in temporary method GetCloseToCloseReturn Index: WeightedPositions.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/WeightedPositions.cs,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** WeightedPositions.cs 28 Aug 2007 09:25:32 -0000 1.6 --- WeightedPositions.cs 5 Sep 2007 22:07:19 -0000 1.7 *************** *** 659,668 **** double equityValue = initialEquity; Quotes[] tickersQuotes = new Quotes[this.Count]; for(int i = 0; i < this.Count; i++) { tickersQuotes[i] = new Quotes( this[i].Ticker,startDate, endDate ); ! if(tickersQuotes[i].Rows.Count == 0) ! //no quotes are available at the given period ! throw new MissingQuotesException(this[i].Ticker, startDate, endDate); } --- 659,673 ---- double equityValue = initialEquity; Quotes[] tickersQuotes = new Quotes[this.Count]; + int numberOfQuotesOfPreviousTicker = 0; for(int i = 0; i < this.Count; i++) { tickersQuotes[i] = new Quotes( this[i].Ticker,startDate, endDate ); ! if( i == 0 ) ! numberOfQuotesOfPreviousTicker = tickersQuotes[i].Rows.Count; ! else if ( (i > 0 && ( tickersQuotes[i].Rows.Count > numberOfQuotesOfPreviousTicker)) || ! tickersQuotes[i].Rows.Count == 0) ! // not all the tickers have the same available n. of quotes ! // for the given period or a ticker has no quotes ! throw new MissingQuotesException(this.SignedTickers.Tickers, startDate, endDate); } |
|
From: Marco M. <mi...@us...> - 2007-09-05 22:06:21
|
Update of /cvsroot/quantproject/QuantProject/b3_Data In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv16387/b3_Data Modified Files: MissingQuotesException.cs Log Message: Added a new constructor, in order to permit a new object's instance for an array of tickers Index: MissingQuotesException.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b3_Data/MissingQuotesException.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** MissingQuotesException.cs 14 May 2006 15:36:13 -0000 1.1 --- MissingQuotesException.cs 5 Sep 2007 22:06:16 -0000 1.2 *************** *** 25,43 **** { /// <summary> ! /// Thrown when needed if an object DataTables.Quotes has no quotes ! /// for a given TimeFrame /// </summary> public class MissingQuotesException : Exception { private string ticker; private DateTime initialDateTime; private DateTime finalDateTime; public override string Message { get { ! return "No quotes available for ticker " + ! this.ticker + ", between " + this.initialDateTime.ToShortDateString() + ! " and " + this.finalDateTime.ToShortDateString(); } } --- 25,66 ---- { /// <summary> ! /// This kind of exception is intended to be thrown ! /// when a ticker or an array of ticker ! /// doesn't have the expected number of available ! /// quotes for a given time frame /// </summary> public class MissingQuotesException : Exception { private string ticker; + private string[] tickers = null; private DateTime initialDateTime; private DateTime finalDateTime; + private string message_getMessageForMissingQuotesForTickers() + { + string tickersSeparatedBySemicolon = null; + foreach (string ticker in this.tickers) + tickersSeparatedBySemicolon += ticker + ";" ; + return "Not all these tickers: " + + tickersSeparatedBySemicolon + + " have the same number of " + + "available quotes, " + + "between " + this.initialDateTime.ToShortDateString() + + " and " + this.finalDateTime.ToShortDateString(); + } public override string Message { get { ! if( this.tickers == null ) ! //this.tickers has not been set, and so the exception ! //refers to only one single ticker ! return "No quotes available for ticker " + ! this.ticker + ", between " + this.initialDateTime.ToShortDateString() + ! " and " + this.finalDateTime.ToShortDateString(); ! else // this.tickers has been set, so the ! // exception refers to two ore more tickers. ! // In other words, not all the tickers have the same ! // number of quotes for the given period ! return message_getMessageForMissingQuotesForTickers(); } } *************** *** 49,52 **** --- 72,82 ---- this.finalDateTime = finalDateTime; } + public MissingQuotesException( + string[] tickers,DateTime initialDateTime, DateTime finalDateTime ) + { + this.tickers = tickers; + this.initialDateTime = initialDateTime; + this.finalDateTime = finalDateTime; + } } } |
|
From: Glauco S. <gla...@us...> - 2007-09-01 14:21:46
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv27337/b4_Business/a2_Strategies Modified Files: SignedTickers.cs Log Message: arrayForTickers[ i ] = ((SignedTicker)(List[ i ])).Ticker; has been simplifed to arrayForTickers[ i ] = this[ i ].Ticker; Index: SignedTickers.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/SignedTickers.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SignedTickers.cs 27 Aug 2007 22:22:03 -0000 1.3 --- SignedTickers.cs 1 Sep 2007 14:21:34 -0000 1.4 *************** *** 64,70 **** string[] arrayForTickers = new string[ List.Count ]; for ( int i = 0 ; i < List.Count ; i++ ) ! { ! arrayForTickers[ i ] = ((SignedTicker)(List[ i ])).Ticker; ! } return arrayForTickers; } --- 64,69 ---- string[] arrayForTickers = new string[ List.Count ]; for ( int i = 0 ; i < List.Count ; i++ ) ! // arrayForTickers[ i ] = ((SignedTicker)(List[ i ])).Ticker; ! arrayForTickers[ i ] = this[ i ].Ticker; return arrayForTickers; } |
|
From: Marco M. <mi...@us...> - 2007-08-31 23:19:43
|
Update of /cvsroot/quantproject/QuantProject/b1_ADT/Optimizing/Genetic In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv9981/b1_ADT/Optimizing/Genetic Modified Files: Genome.cs Log Message: Fixed very critical bug !!! After changing Fitness and Meaning property access, I forgot to reset the private fields when single genes are changed, in order to force a new fitness and meaning calculation. These kinds of error should be avoided through a more object oriented organization of the GeneticOptimizer, but I think that would slow down scripts' execution. Now the GeneticOptimizer has turned to work properly Index: Genome.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b1_ADT/Optimizing/Genetic/Genome.cs,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** Genome.cs 21 Aug 2007 21:52:24 -0000 1.19 --- Genome.cs 31 Aug 2007 23:19:34 -0000 1.20 *************** *** 200,205 **** throw new IndexOutOfRangeException("Gene value not valid for the gene at" + " the given position!"); ! this.genes[genePosition] = geneValue; //whenever at least one gene has been written, //the current generation number is stored --- 200,212 ---- throw new IndexOutOfRangeException("Gene value not valid for the gene at" + " the given position!"); + if( geneValue != this.GetGeneValue(genePosition) ) + // if a new value is stored in the given position, then + // fitness has to be calculated again, and so meaning + { + this.hasFitnessBeenAssigned = false; + this.meaning = null; + } ! this.genes[genePosition] = geneValue; //whenever at least one gene has been written, //the current generation number is stored |
|
From: Marco M. <mi...@us...> - 2007-08-30 18:15:41
|
Update of /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/LinearCombination In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv22854/b7_Scripts/WalkForwardTesting/LinearCombination Modified Files: FixedLevelOscillatorPVOStrategy.cs Log Message: Fixed bug in FixedLevelOscillatorPVOStrategy, the class that is used for performing the PVO strategy on logged PVO genomes Index: FixedLevelOscillatorPVOStrategy.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/LinearCombination/FixedLevelOscillatorPVOStrategy.cs,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** FixedLevelOscillatorPVOStrategy.cs 29 Aug 2007 09:43:36 -0000 1.5 --- FixedLevelOscillatorPVOStrategy.cs 30 Aug 2007 18:15:37 -0000 1.6 *************** *** 43,51 **** public FixedLevelOscillatorPVOStrategy( Account accountPVO , ! WeightedPositions weightedPositions, double oversoldThreshold, double overboughtThreshold, int numDaysForOscillatingPeriod): ! base("", 0, weightedPositions.Count, 0, accountPVO, 0,0, --- 43,51 ---- public FixedLevelOscillatorPVOStrategy( Account accountPVO , ! WeightedPositions chosenWeightedPositions, double oversoldThreshold, double overboughtThreshold, int numDaysForOscillatingPeriod): ! base("", 0, chosenWeightedPositions.Count, 0, accountPVO, 0,0, *************** *** 65,73 **** } - protected override void marketCloseEventHandler_closePositionsIfNeeded() - { - - } - protected override double getCurrentChosenWeightedPositionsValue(IndexBasedEndOfDayTimer timer) { --- 65,68 ---- |
|
From: Marco M. <mi...@us...> - 2007-08-30 13:34:33
|
Update of /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv26076/b4_Business/a2_Strategies Modified Files: AccountManager.cs Log Message: Fixed bug in OpenPositions method Index: AccountManager.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/a2_Strategies/AccountManager.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AccountManager.cs 29 Aug 2007 09:11:42 -0000 1.1 --- AccountManager.cs 30 Aug 2007 13:34:27 -0000 1.2 *************** *** 70,78 **** #region OpenPositions static private void addWeightedPositionToOrderList(WeightedPosition weightedPosition, ! Account account) { string ticker = weightedPosition.Ticker; double cashForSinglePosition = ! account.CashAmount * Math.Abs( weightedPosition.Weight ); long quantity = Convert.ToInt64( Math.Floor( cashForSinglePosition / account.DataStreamer.GetCurrentBid( ticker ) ) ); --- 70,78 ---- #region OpenPositions static private void addWeightedPositionToOrderList(WeightedPosition weightedPosition, ! Account account, double valueToInvestInPositions) { string ticker = weightedPosition.Ticker; double cashForSinglePosition = ! valueToInvestInPositions * Math.Abs( weightedPosition.Weight ); long quantity = Convert.ToInt64( Math.Floor( cashForSinglePosition / account.DataStreamer.GetCurrentBid( ticker ) ) ); *************** *** 92,97 **** throw new Exception("Both parameters have to be set to valid objects!"); orders.Clear(); foreach(WeightedPosition weightedPosition in weightedPositions.Values) ! addWeightedPositionToOrderList( weightedPosition, account ); foreach(object item in orders) account.AddOrder( (Order)item ); --- 92,98 ---- throw new Exception("Both parameters have to be set to valid objects!"); orders.Clear(); + double valueToInvestInPositions = account.CashAmount; foreach(WeightedPosition weightedPosition in weightedPositions.Values) ! addWeightedPositionToOrderList( weightedPosition, account, valueToInvestInPositions ); foreach(object item in orders) account.AddOrder( (Order)item ); |
|
From: Marco M. <mi...@us...> - 2007-08-29 10:35:39
|
Update of /cvsroot/quantproject/QuantProject/b91_QuantProject In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8987/b91_QuantProject Modified Files: QuantProject_SD.csproj Log Message: Updated SharpDevelop project files Index: QuantProject_SD.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b91_QuantProject/QuantProject_SD.csproj,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** QuantProject_SD.csproj 2 Jul 2006 20:07:59 -0000 1.1 --- QuantProject_SD.csproj 29 Aug 2007 10:34:59 -0000 1.2 *************** *** 15,24 **** </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>True</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> --- 15,25 ---- </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>true</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>false</TreatWarningsAsErrors> ! <DebugType>Full</DebugType> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> *************** *** 30,33 **** --- 31,41 ---- <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> + <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' "> + <RegisterForComInterop>False</RegisterForComInterop> + <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> + <BaseAddress>4194304</BaseAddress> + <PlatformTarget>AnyCPU</PlatformTarget> + <FileAlignment>4096</FileAlignment> + </PropertyGroup> <ItemGroup> <Reference Include="System" /> |
|
From: Marco M. <mi...@us...> - 2007-08-29 10:35:38
|
Update of /cvsroot/quantproject/QuantProject/b7_Scripts In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8987/b7_Scripts Modified Files: Scripts_SD.csproj Log Message: Updated SharpDevelop project files Index: Scripts_SD.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/Scripts_SD.csproj,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Scripts_SD.csproj 9 Apr 2007 18:19:08 -0000 1.6 --- Scripts_SD.csproj 29 Aug 2007 10:34:59 -0000 1.7 *************** *** 6,10 **** <ProjectGuid>{B5AAC5AA-DCC1-4698-A362-D399AB9A90C4}</ProjectGuid> <RootNamespace>Scripts</RootNamespace> ! <AssemblyName>Scripts</AssemblyName> <OutputType>Library</OutputType> <WarningLevel>4</WarningLevel> --- 6,10 ---- <ProjectGuid>{B5AAC5AA-DCC1-4698-A362-D399AB9A90C4}</ProjectGuid> <RootNamespace>Scripts</RootNamespace> ! <AssemblyName>QuantProject.Scripts</AssemblyName> <OutputType>Library</OutputType> <WarningLevel>4</WarningLevel> *************** *** 14,23 **** </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>True</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> --- 14,24 ---- </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>true</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>false</TreatWarningsAsErrors> ! <DebugType>Full</DebugType> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> *************** *** 28,31 **** --- 29,40 ---- <OutputPath>..\bin\Release\</OutputPath> <TreatWarningsAsErrors>False</TreatWarningsAsErrors> + <DebugType>None</DebugType> + </PropertyGroup> + <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' "> + <RegisterForComInterop>False</RegisterForComInterop> + <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> + <BaseAddress>4194304</BaseAddress> + <PlatformTarget>AnyCPU</PlatformTarget> + <FileAlignment>4096</FileAlignment> </PropertyGroup> <ItemGroup> *************** *** 37,40 **** --- 46,51 ---- </ItemGroup> <ItemGroup> + <Compile Include="ArbitrageTesting\OverReactionHypothesis\DoubleOverReaction_OTC\EndOfDayTimerHandlerDOR_OTC.cs" /> + <Compile Include="ArbitrageTesting\OverReactionHypothesis\DoubleOverReaction_OTC\RunDOR_OTC.cs" /> <Compile Include="AssemblyInfo.cs" /> <Compile Include="MyTradingSystem.cs" /> *************** *** 157,162 **** <Compile Include="TickerSelectionTesting\GenomeManagerForEfficientOTCCTOPortfolio.cs" /> <Compile Include="WalkForwardTesting\LinearCombination\OTC_CTODailyStrategy.cs" /> - <EmbeddedResource Include="QuantProject.Scripts.WalkForwardTesting.LinearCombination.TestDisplayer.resources" /> - <None Include="MultiTesting\MultiTestOneRank\" /> <None Include="SimpleTesting\MSFTSimpleTest_2\TsMSFTsimpleTest_2.cs" /> <Compile Include="SimpleScriptsContainer.cs" /> --- 168,171 ---- *************** *** 169,173 **** <Compile Include="TechnicalAnalysisTesting\TrendFollowing\ImmediateTrendFollower\GenomeManagerITF.cs" /> <Compile Include="TechnicalAnalysisTesting\TrendFollowing\ImmediateTrendFollower\RunImmediateTrendFollower.cs" /> - <Compile Include="WalkForwardTesting\WalkForwardLag\WeightedPositions.cs" /> <Compile Include="WalkForwardTesting\WalkForwardLag\WFLagGenomeManagerWithWeights.cs" /> <Compile Include="WalkForwardTesting\WalkForwardLag\WFLagWeightedPositions.cs" /> --- 178,181 ---- *************** *** 208,213 **** --- 216,235 ---- <Compile Include="ArbitrageTesting\OverReactionHypothesis\SimpleOHTest\EndOfDayTimerHandlerSimpleOHTest.cs" /> <Compile Include="ArbitrageTesting\OverReactionHypothesis\SimpleOHTest\RunSimpleOHTest.cs" /> + <Compile Include="TechnicalAnalysisTesting\TrendFollowing\BestAndWorst\EndOfDayTimerHandlerBWFollower.cs" /> + <Compile Include="TechnicalAnalysisTesting\TrendFollowing\BestAndWorst\RunBestAndWorstFollower.cs" /> + <Compile Include="TickerSelectionTesting\RunEfficientOTC_WorstAtNightPortfolio.cs" /> + <Compile Include="TickerSelectionTesting\EndOfDayTimerHandlerOTC_WorstAtNight.cs" /> + <Compile Include="ArbitrageTesting\OverReactionHypothesis\DoubleOverReaction_WeekEndBounce\EndOfDayTimerHandlerDOR_WeekEndBounce.cs" /> + <Compile Include="ArbitrageTesting\OverReactionHypothesis\DoubleOverReaction_WeekEndBounce\RunDOR_WeekEndBounce.cs" /> + <Compile Include="TickerSelectionTesting\EndOfDayTimerHandlerCTO_WorstAtDay.cs" /> + <Compile Include="TickerSelectionTesting\RunEfficientCTO_WorstAtDayPortfolio.cs" /> + <Compile Include="WalkForwardTesting\WalkForwardLag\WeightedPositionsChoosers\WFLagGeneticFixedPortfolioWithNormalDrivingAndPortfolio\WFLagGeneticFixedPortfolioWithNormalDrivingAndPortfolio.cs" /> + <Compile Include="WalkForwardTesting\WalkForwardLag\WeightedPositionsChoosers\WFLagGeneticFixedPortfolioWithNormalDrivingAndPortfolio\WFLagGenomeManagerForFixedPortfolioWithNormalDrivingAndPortfolio.cs" /> + <Compile Include="WalkForwardTesting\WalkForwardLag\WFLagMeaningForUndecodableGenomes.cs" /> + <Compile Include="TechnicalAnalysisTesting\TrendFollowing\OTC_CTOTrendFollower\EndOfDayTimerHandlerOTC_CTOTrendFollower.cs" /> + <Compile Include="TechnicalAnalysisTesting\TrendFollowing\OTC_CTOTrendFollower\RunEfficientOTC_CTOTrendFollower.cs" /> </ItemGroup> <ItemGroup> + <Folder Include="ArbitrageTesting\OverReactionHypothesis\DoubleOverReaction_OTC" /> <Folder Include="EvaluatingOptimizationTechnique\" /> <Folder Include="EvaluatingOptimizationTechnique\EfficientPortfolio\" /> *************** *** 255,258 **** --- 277,284 ---- <Folder Include="ArbitrageTesting\OverReactionHypothesis" /> <Folder Include="ArbitrageTesting\OverReactionHypothesis\SimpleOHTest" /> + <Folder Include="TechnicalAnalysisTesting\TrendFollowing\BestAndWorst" /> + <Folder Include="ArbitrageTesting\OverReactionHypothesis\DoubleOverReaction_WeekEndBounce" /> + <Folder Include="WalkForwardTesting\WalkForwardLag\WeightedPositionsChoosers\WFLagGeneticFixedPortfolioWithNormalDrivingAndPortfolio" /> + <Folder Include="TechnicalAnalysisTesting\TrendFollowing\OTC_CTOTrendFollower" /> </ItemGroup> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" /> |
|
From: Marco M. <mi...@us...> - 2007-08-29 10:35:35
|
Update of /cvsroot/quantproject/QuantProject/b5_Presentation In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8987/b5_Presentation Modified Files: Presentation_SD.csproj Log Message: Updated SharpDevelop project files Index: Presentation_SD.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b5_Presentation/Presentation_SD.csproj,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Presentation_SD.csproj 2 Jul 2006 20:07:59 -0000 1.1 --- Presentation_SD.csproj 29 Aug 2007 10:34:59 -0000 1.2 *************** *** 14,23 **** </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>True</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> --- 14,24 ---- </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>true</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>false</TreatWarningsAsErrors> ! <DebugType>Full</DebugType> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> *************** *** 29,32 **** --- 30,40 ---- <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> + <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' "> + <RegisterForComInterop>False</RegisterForComInterop> + <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> + <BaseAddress>4194304</BaseAddress> + <PlatformTarget>AnyCPU</PlatformTarget> + <FileAlignment>4096</FileAlignment> + </PropertyGroup> <ItemGroup> <Reference Include="System" /> |
|
From: Marco M. <mi...@us...> - 2007-08-29 10:35:35
|
Update of /cvsroot/quantproject/QuantProject/b4_Business In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8987/b4_Business Modified Files: Business_SD.csproj Log Message: Updated SharpDevelop project files Index: Business_SD.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b4_Business/Business_SD.csproj,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Business_SD.csproj 10 Dec 2006 20:12:08 -0000 1.3 --- Business_SD.csproj 29 Aug 2007 10:34:58 -0000 1.4 *************** *** 14,23 **** </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>True</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> --- 14,24 ---- </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>true</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>false</TreatWarningsAsErrors> ! <DebugType>Full</DebugType> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> *************** *** 29,32 **** --- 30,40 ---- <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> + <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' "> + <RegisterForComInterop>False</RegisterForComInterop> + <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> + <BaseAddress>4194304</BaseAddress> + <PlatformTarget>AnyCPU</PlatformTarget> + <FileAlignment>4096</FileAlignment> + </PropertyGroup> <ItemGroup> <Reference Include="System" /> *************** *** 120,124 **** <Compile Include="a1_Financial\a3_Ordering\OrderStatus.cs" /> <Compile Include="a1_Financial\a3_Ordering\OrderType.cs" /> - <Compile Include="a2_Strategies\AccountStrategy.cs" /> <Compile Include="a2_Strategies\Signal.cs" /> <Compile Include="a2_Strategies\Signals.cs" /> --- 128,131 ---- *************** *** 156,159 **** --- 163,174 ---- <Compile Include="a2_Strategies\EquityEvaluation\IEquityEvaluator.cs" /> <Compile Include="a2_Strategies\EquityEvaluation\WinningPeriods.cs" /> + <Compile Include="a2_Strategies\returnsManagement\CloseToCloseReturnsManager.cs" /> + <Compile Include="a2_Strategies\returnsManagement\ReturnsManager.cs" /> + <Compile Include="a2_Strategies\SignedTickers.cs" /> + <Compile Include="a2_Strategies\AccountStrategy.cs" /> + <Compile Include="a2_Strategies\AccountManager.cs" /> + <Compile Include="a2_Strategies\WeightedPositions.cs" /> + <Compile Include="a2_Strategies\EquityEvaluation\ExpectancyScore.cs" /> + <Compile Include="a2_Strategies\EquityEvaluation\SharpeRatio.cs" /> </ItemGroup> <ItemGroup> *************** *** 171,174 **** --- 186,190 ---- </ProjectReference> <Folder Include="a2_Strategies\EquityEvaluation" /> + <Folder Include="a2_Strategies\returnsManagement" /> </ItemGroup> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" /> |
|
From: Marco M. <mi...@us...> - 2007-08-29 10:35:34
|
Update of /cvsroot/quantproject/QuantProject/b3_Data In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8987/b3_Data Modified Files: Data_SD.csproj Log Message: Updated SharpDevelop project files Index: Data_SD.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b3_Data/Data_SD.csproj,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Data_SD.csproj 2 Jul 2006 20:07:59 -0000 1.1 --- Data_SD.csproj 29 Aug 2007 10:34:58 -0000 1.2 *************** *** 14,23 **** </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>True</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> --- 14,24 ---- </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>true</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>false</TreatWarningsAsErrors> ! <DebugType>Full</DebugType> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> *************** *** 29,32 **** --- 30,40 ---- <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> + <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' "> + <RegisterForComInterop>False</RegisterForComInterop> + <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> + <BaseAddress>4194304</BaseAddress> + <PlatformTarget>AnyCPU</PlatformTarget> + <FileAlignment>4096</FileAlignment> + </PropertyGroup> <ItemGroup> <Reference Include="System" /> |
|
From: Marco M. <mi...@us...> - 2007-08-29 10:35:34
|
Update of /cvsroot/quantproject/QuantProject/b1_ADT In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8987/b1_ADT Modified Files: ADT_SD.csproj Log Message: Updated SharpDevelop project files Index: ADT_SD.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b1_ADT/ADT_SD.csproj,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ADT_SD.csproj 17 Sep 2006 23:02:24 -0000 1.2 --- ADT_SD.csproj 29 Aug 2007 10:34:56 -0000 1.3 *************** *** 14,23 **** </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>True</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> --- 14,24 ---- </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>true</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>false</TreatWarningsAsErrors> ! <DebugType>Full</DebugType> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> *************** *** 29,32 **** --- 30,40 ---- <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> + <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' "> + <RegisterForComInterop>False</RegisterForComInterop> + <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> + <BaseAddress>4194304</BaseAddress> + <PlatformTarget>AnyCPU</PlatformTarget> + <FileAlignment>4096</FileAlignment> + </PropertyGroup> <ItemGroup> <Reference Include="System" /> *************** *** 78,81 **** --- 86,91 ---- <Compile Include="ExtendedMath.cs" /> <Compile Include="Collections\CollectionManager.cs" /> + <Compile Include="Collections\FloatArrayManager.cs" /> + <Compile Include="Collections\Set.cs" /> </ItemGroup> <ItemGroup> |
|
From: Marco M. <mi...@us...> - 2007-08-29 10:35:34
|
Update of /cvsroot/quantproject/QuantProject/b2_DataAccess In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8987/b2_DataAccess Modified Files: DataAccess_SD.csproj Log Message: Updated SharpDevelop project files Index: DataAccess_SD.csproj =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b2_DataAccess/DataAccess_SD.csproj,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DataAccess_SD.csproj 2 Jul 2006 20:07:59 -0000 1.1 --- DataAccess_SD.csproj 29 Aug 2007 10:34:57 -0000 1.2 *************** *** 14,23 **** </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>True</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> --- 14,24 ---- </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> ! <DebugSymbols>true</DebugSymbols> <Optimize>False</Optimize> <AllowUnsafeBlocks>False</AllowUnsafeBlocks> <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow> <OutputPath>..\bin\Debug\</OutputPath> ! <TreatWarningsAsErrors>false</TreatWarningsAsErrors> ! <DebugType>Full</DebugType> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> *************** *** 29,32 **** --- 30,40 ---- <TreatWarningsAsErrors>False</TreatWarningsAsErrors> </PropertyGroup> + <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' "> + <RegisterForComInterop>False</RegisterForComInterop> + <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> + <BaseAddress>4194304</BaseAddress> + <PlatformTarget>AnyCPU</PlatformTarget> + <FileAlignment>4096</FileAlignment> + </PropertyGroup> <ItemGroup> <Reference Include="System" /> |