Rev 760 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 760 | Rev 762 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | package br.com.kronus.fibo; |
1 | package br.com.kronus.fibo; |
| 2 | 2 | ||
| - | 3 | import java.math.BigDecimal; |
|
| 3 | import java.util.LinkedHashMap; |
4 | import java.util.LinkedHashMap; |
| 4 | import java.util.Map; |
5 | import java.util.Map; |
| 5 | 6 | ||
| 6 | public class FibonacciService { |
7 | public class FibonacciService { |
| 7 | 8 | ||
| 8 | public Map<Double, Double> calcularNiveis(double precoInicial, double precoFinal, double[] niveis) { |
- | |
| 9 | Map<Double, Double> mapa = new LinkedHashMap<>(); |
- | |
| 10 | double amplitude = precoFinal - precoInicial; |
- | |
| - | 9 | public Map<BigDecimal, BigDecimal> calcularNiveis(BigDecimal precoInicial, BigDecimal precoFinal, double[] niveis) { |
|
| - | 10 | Map<BigDecimal, BigDecimal> mapa = new LinkedHashMap<>(); |
|
| - | 11 | BigDecimal amplitude = precoFinal.subtract(precoInicial); |
|
| 11 | for (double nivel : niveis) { |
12 | for (double nivel : niveis) { |
| 12 | double preco = precoInicial + amplitude * nivel; |
- | |
| 13 | mapa.put(nivel, preco); |
- | |
| - | 13 | BigDecimal preco = amplitude.multiply(new BigDecimal(nivel)); |
|
| - | 14 | preco = precoInicial.add(preco); |
|
| - | 15 | mapa.put(new BigDecimal(nivel), preco); |
|
| 14 | }
|
16 | }
|
| 15 | return mapa; |
17 | return mapa; |
| 16 | }
|
18 | }
|
| 17 | 19 | ||
| 18 | public Map<Double, Double> calcularFiboPreco(double precoInicial, double precoFinal) { |
- | |
| - | 20 | public Map<BigDecimal, BigDecimal> calcularFiboPreco(BigDecimal precoInicial, BigDecimal precoFinal) { |
|
| 19 | return calcularNiveis(precoInicial, precoFinal, FibonacciConfig.FIBO_PRECO); |
21 | return calcularNiveis(precoInicial, precoFinal, FibonacciConfig.FIBO_PRECO); |
| 20 | }
|
22 | }
|
| 21 | 23 | ||
| 22 | public Map<Double, Double> calcularFiboProjecao(double precoInicial, double precoFinal) { |
- | |
| - | 24 | public Map<BigDecimal, BigDecimal> calcularFiboProjecao(BigDecimal precoInicial, BigDecimal precoFinal) { |
|
| 23 | return calcularNiveis(precoInicial, precoFinal, FibonacciConfig.FIBO_PROJECAO); |
25 | return calcularNiveis(precoInicial, precoFinal, FibonacciConfig.FIBO_PROJECAO); |
| 24 | }
|
26 | }
|
| 25 | }
|
27 | }
|