[Quantproject-developers] QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag/WeightedPositio
Brought to you by:
glauco_1
|
From: Glauco S. <gla...@us...> - 2007-07-13 10:14:48
|
Update of /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag/WeightedPositionsChoosers/WFLagGeneticWithEqualWeights In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv29631/b7_Scripts/WalkForwardTesting/WalkForwardLag/WeightedPositionsChoosers/WFLagGeneticWithEqualWeights Modified Files: WFLagGeneticWithEqualWeights.cs Log Message: Several double data have been replaced by float data Index: WFLagGeneticWithEqualWeights.cs =================================================================== RCS file: /cvsroot/quantproject/QuantProject/b7_Scripts/WalkForwardTesting/WalkForwardLag/WeightedPositionsChoosers/WFLagGeneticWithEqualWeights/WFLagGeneticWithEqualWeights.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** WFLagGeneticWithEqualWeights.cs 24 Jun 2007 21:11:46 -0000 1.1 --- WFLagGeneticWithEqualWeights.cs 13 Jul 2007 10:14:44 -0000 1.2 *************** *** 155,159 **** } ! private double[] getFitnessValue_getLinearCombinationReturns( WeightedPositions weightedPositions ) { --- 155,159 ---- } ! private float[] getFitnessValue_getLinearCombinationReturns( WeightedPositions weightedPositions ) { *************** *** 166,171 **** float[][] tickersReturns = this.wFLagCandidates.GetTickersReturns( tickers ); ! double[] linearCombinationReturns = ! new double[ tickersReturns[ 0 ].Length ]; for( int i = 0; i < linearCombinationReturns.Length ; i++ ) // computes linearCombinationReturns[ i ] --- 166,171 ---- float[][] tickersReturns = this.wFLagCandidates.GetTickersReturns( tickers ); ! float[] linearCombinationReturns = ! new float[ tickersReturns[ 0 ].Length ]; for( int i = 0; i < linearCombinationReturns.Length ; i++ ) // computes linearCombinationReturns[ i ] *************** *** 174,178 **** for ( int j=0 ; j < weightedPositions.Count ; j++ ) { ! double weightedPositionReturn = tickersReturns[ j ][ i ] * multipliers[ j ]; linearCombinationReturns[ i ] += weightedPositionReturn; --- 174,178 ---- for ( int j=0 ; j < weightedPositions.Count ; j++ ) { ! float weightedPositionReturn = tickersReturns[ j ][ i ] * multipliers[ j ]; linearCombinationReturns[ i ] += weightedPositionReturn; *************** *** 181,191 **** return linearCombinationReturns; } ! private double[] getFitnessValue_getStrategyReturn( ! double[] drivingPositionsReturns , double[] portfolioPositionsReturns ) { // strategyReturns contains one element less than drivingPositionsReturns, // because there is no strategy for the very first period (at least // one day signal is needed) ! double[] strategyReturns = new double[ portfolioPositionsReturns.Length - 1 ]; for ( int i = 0 ; i < portfolioPositionsReturns.Length - 1 ; i++ ) if ( drivingPositionsReturns[ i ] < 0 ) --- 181,191 ---- return linearCombinationReturns; } ! private float[] getFitnessValue_getStrategyReturn( ! float[] drivingPositionsReturns , float[] portfolioPositionsReturns ) { // strategyReturns contains one element less than drivingPositionsReturns, // because there is no strategy for the very first period (at least // one day signal is needed) ! float[] strategyReturns = new float[ portfolioPositionsReturns.Length - 1 ]; for ( int i = 0 ; i < portfolioPositionsReturns.Length - 1 ; i++ ) if ( drivingPositionsReturns[ i ] < 0 ) *************** *** 204,222 **** } ! private double getFitnessValue( double[] strategyReturns ) { ! // double fitnessValue = // AdvancedFunctions.GetSharpeRatio( // strategyReturns ); ! // double fitnessValue = // AdvancedFunctions.GetExpectancyScore( // strategyReturns ); ! double fitnessValue = this.equityEvaluator.GetReturnsEvaluation( strategyReturns ); ! // double fitnessValue = // this.getFitnessValue_withGoodFinal( strategyReturns ); ! // double fitnessValue = // BasicFunctions.GetSimpleAverage( strategyReturns ) / // ( Math.Pow( BasicFunctions.GetStdDev( strategyReturns ) , 1.3 ) ); --- 204,222 ---- } ! private float getFitnessValue( float[] strategyReturns ) { ! // float fitnessValue = // AdvancedFunctions.GetSharpeRatio( // strategyReturns ); ! // float fitnessValue = // AdvancedFunctions.GetExpectancyScore( // strategyReturns ); ! float fitnessValue = this.equityEvaluator.GetReturnsEvaluation( strategyReturns ); ! // float fitnessValue = // this.getFitnessValue_withGoodFinal( strategyReturns ); ! // float fitnessValue = // BasicFunctions.GetSimpleAverage( strategyReturns ) / // ( Math.Pow( BasicFunctions.GetStdDev( strategyReturns ) , 1.3 ) ); *************** *** 227,241 **** WFLagWeightedPositions wFLagWeightedPositions ) { ! double[] drivingPositionsReturns = this.getFitnessValue_getLinearCombinationReturns( wFLagWeightedPositions.DrivingWeightedPositions ); ! double[] portfolioPositionsReturns = this.getFitnessValue_getLinearCombinationReturns( wFLagWeightedPositions.PortfolioWeightedPositions ); ! double[] strategyReturns = this.getFitnessValue_getStrategyReturn( drivingPositionsReturns , portfolioPositionsReturns ); ! double fitnessValue = this.getFitnessValue( strategyReturns ); ! return fitnessValue; } public double GetFitnessValue( Genome genome ) --- 227,241 ---- WFLagWeightedPositions wFLagWeightedPositions ) { ! float[] drivingPositionsReturns = this.getFitnessValue_getLinearCombinationReturns( wFLagWeightedPositions.DrivingWeightedPositions ); ! float[] portfolioPositionsReturns = this.getFitnessValue_getLinearCombinationReturns( wFLagWeightedPositions.PortfolioWeightedPositions ); ! float[] strategyReturns = this.getFitnessValue_getStrategyReturn( drivingPositionsReturns , portfolioPositionsReturns ); ! float fitnessValue = this.getFitnessValue( strategyReturns ); ! return (double)fitnessValue; } public double GetFitnessValue( Genome genome ) *************** *** 251,255 **** // genome contains a duplicate gene either for // driving positions or for portfolio positions ! //fitnessValue = double.MinValue; fitnessValue = -0.2; else --- 251,255 ---- // genome contains a duplicate gene either for // driving positions or for portfolio positions ! //fitnessValue = float.MinValue; fitnessValue = -0.2; else *************** *** 381,387 **** return tickerIndex; } ! private double getWeight( Genome genome , int genePosition ) { ! double weight = 1; if ( genome.GetGeneValue( genePosition ) < 0 ) // the position is short --- 381,387 ---- return tickerIndex; } ! private float getWeight( Genome genome , int genePosition ) { ! float weight = 1; if ( genome.GetGeneValue( genePosition ) < 0 ) // the position is short |