Update of /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/criteria In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv17803/src/test/net/sf/tail/analysis/criteria Modified Files: NumberOfTradesCriterionTest.java AverageProfitCriterionTest.java RewardRiskRatioCriterionTest.java BuyAndHoldCriterionTest.java Log Message: Novos testes Index: NumberOfTradesCriterionTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/criteria/NumberOfTradesCriterionTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NumberOfTradesCriterionTest.java 23 Aug 2007 12:51:10 -0000 1.3 --- NumberOfTradesCriterionTest.java 22 Oct 2007 16:48:00 -0000 1.4 *************** *** 57,59 **** --- 57,67 ---- assertEquals(2d, buyAndHold.summarize(series, decisions), 0.01); } + @Test + public void testCalculateWithOneTrade() + { + Trade trade = new Trade(); + NumberOfTradesCriterion tradesCriterion = new NumberOfTradesCriterion(); + + assertEquals(1d, tradesCriterion.calculate(null, trade)); + } } Index: RewardRiskRatioCriterionTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/criteria/RewardRiskRatioCriterionTest.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** RewardRiskRatioCriterionTest.java 1 Sep 2007 13:38:29 -0000 1.12 --- RewardRiskRatioCriterionTest.java 22 Oct 2007 16:48:00 -0000 1.13 *************** *** 91,94 **** --- 91,105 ---- } + + @Test + public void testWithOneTrade() { + Trade trade = new Trade(new Operation(0, OperationType.BUY), new Operation(1, OperationType.SELL)); + + SampleTimeSeries series = new SampleTimeSeries(new double[] { 100, 95, 95, 100, 90, 95, 80, 120 }); + + + RewardRiskRatioCriterion ratioCriterion = new RewardRiskRatioCriterion(); + assertEquals((95d/100) / ((1d - 0.95d)), ratioCriterion.calculate(series, trade)); + } } Index: BuyAndHoldCriterionTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/criteria/BuyAndHoldCriterionTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BuyAndHoldCriterionTest.java 23 Aug 2007 12:51:10 -0000 1.3 --- BuyAndHoldCriterionTest.java 22 Oct 2007 16:48:00 -0000 1.4 *************** *** 68,71 **** --- 68,81 ---- assertEquals(0.7, buyAndHold.calculate(series, trades)); } + + @Test + public void testCalculateWithOneTrade() + { + SampleTimeSeries series = new SampleTimeSeries(new double[] {100, 105 }); + Trade trade = new Trade(new Operation(0, OperationType.BUY), new Operation(1, OperationType.SELL)); + AnalysisCriterion buyAndHold = new BuyAndHoldCriterion(); + assertEquals(105d/100, buyAndHold.calculate(series, trade)); + + } } Index: AverageProfitCriterionTest.java =================================================================== RCS file: /cvsroot/tail/Tail/src/test/net/sf/tail/analysis/criteria/AverageProfitCriterionTest.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** AverageProfitCriterionTest.java 17 Oct 2007 22:31:15 -0000 1.12 --- AverageProfitCriterionTest.java 22 Oct 2007 16:48:00 -0000 1.13 *************** *** 83,86 **** --- 83,95 ---- assertEquals(Double.NaN, averageProfit.calculate(series, trades)); } + @Test + public void testCalculateWithOneTrade() + { + series = new SampleTimeSeries(new double[] {100, 105}); + Trade trade = new Trade(new Operation(0, OperationType.BUY), new Operation(1, OperationType.SELL)); + AnalysisCriterion average = new AverageProfitCriterion(); + assertEquals(Math.pow(105d / 100, 1d/2), average.calculate(series, trade)); + + } } |