List of usage examples for org.jfree.data.xy DefaultHighLowDataset DefaultHighLowDataset
public DefaultHighLowDataset(Comparable seriesKey, Date[] date, double[] high, double[] low, double[] open, double[] close, double[] volume)
From source file:ta4jexamples.indicators.CandlestickChart.java
/** * Builds a JFreeChart OHLC dataset from a ta4j time series. * @param series a time series/*from w w w . ja v a 2 s. c om*/ * @return an Open-High-Low-Close dataset */ private static OHLCDataset createOHLCDataset(TimeSeries series) { final int nbTicks = series.getTickCount(); Date[] dates = new Date[nbTicks]; double[] opens = new double[nbTicks]; double[] highs = new double[nbTicks]; double[] lows = new double[nbTicks]; double[] closes = new double[nbTicks]; double[] volumes = new double[nbTicks]; for (int i = 0; i < nbTicks; i++) { Tick tick = series.getTick(i); dates[i] = new Date(tick.getEndTime().toEpochSecond() * 1000); opens[i] = tick.getOpenPrice().toDouble(); highs[i] = tick.getMaxPrice().toDouble(); lows[i] = tick.getMinPrice().toDouble(); closes[i] = tick.getClosePrice().toDouble(); volumes[i] = tick.getVolume().toDouble(); } OHLCDataset dataset = new DefaultHighLowDataset("btc", dates, highs, lows, opens, closes, volumes); return dataset; }
From source file:org.jfree.data.xy.DefaultHighLowDatasetTest.java
/** * Confirm that the equals method can distinguish all the required fields. *///from ww w . j av a 2 s .c o m @Test public void testEquals() { DefaultHighLowDataset d1 = new DefaultHighLowDataset("Series 1", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); DefaultHighLowDataset d2 = new DefaultHighLowDataset("Series 1", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); assertTrue(d1.equals(d2)); assertTrue(d2.equals(d1)); d1 = new DefaultHighLowDataset("Series 2", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[1], new double[1], new double[1], new double[1], new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[1], new double[1], new double[1], new double[1], new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[1], new double[1], new double[1], new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[1], new double[1], new double[1], new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[1], new double[1], new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[1], new double[1], new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[1], new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[1], new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[] { 99.9 }); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[] { 99.9 }); assertTrue(d1.equals(d2)); }
From source file:org.jfree.data.xy.junit.DefaultHighLowDatasetTest.java
/** * Confirm that the equals method can distinguish all the required fields. *//*from w w w . ja v a 2 s . c o m*/ public void testEquals() { DefaultHighLowDataset d1 = new DefaultHighLowDataset("Series 1", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); DefaultHighLowDataset d2 = new DefaultHighLowDataset("Series 1", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); assertTrue(d1.equals(d2)); assertTrue(d2.equals(d1)); d1 = new DefaultHighLowDataset("Series 2", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[1], new double[1], new double[1], new double[1], new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[1], new double[1], new double[1], new double[1], new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[1], new double[1], new double[1], new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[1], new double[1], new double[1], new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[1], new double[1], new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[1], new double[1], new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[1], new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[1], new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[1]); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[1]); assertTrue(d1.equals(d2)); d1 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[] { 99.9 }); assertFalse(d1.equals(d2)); d2 = new DefaultHighLowDataset("Series 2", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[] { 99.9 }); assertTrue(d1.equals(d2)); }
From source file:jgnash.ui.report.compiled.SecurityHighLowChart.java
private static AbstractXYDataset createHighLowDataSet(final SecurityNode node) { Objects.requireNonNull(node); List<SecurityHistoryNode> hNodes = node.getHistoryNodes(); int count = hNodes.size(); Date[] date = new Date[count]; double[] high = new double[count]; double[] low = new double[count]; double[] open = new double[count]; double[] close = new double[count]; double[] volume = new double[count]; for (int i = 0; i < count; i++) { final SecurityHistoryNode hNode = hNodes.get(i); date[i] = DateUtils.asDate(hNode.getLocalDate()); high[i] = hNode.getAdjustedHigh().doubleValue(); low[i] = hNode.getAdjustedLow().doubleValue(); open[i] = hNode.getAdjustedPrice().doubleValue(); close[i] = hNode.getAdjustedPrice().doubleValue(); volume[i] = hNode.getVolume();/*from ww w. ja v a 2s .co m*/ } return new DefaultHighLowDataset(node.getDescription(), date, high, low, open, close, volume); }
From source file:com.leonarduk.finance.chart.CandlestickChart.java
/** * Builds a JFreeChart OHLC dataset from a ta4j time series. * * @param series//from w w w . ja va 2 s .c o m * a time series * @return an Open-High-Low-Close dataset */ private static OHLCDataset createOHLCDataset(final TimeSeries series) { final int nbTicks = series.getTickCount(); final Date[] dates = new Date[nbTicks]; final double[] opens = new double[nbTicks]; final double[] highs = new double[nbTicks]; final double[] lows = new double[nbTicks]; final double[] closes = new double[nbTicks]; final double[] volumes = new double[nbTicks]; for (int i = 0; i < nbTicks; i++) { final Tick tick = series.getTick(i); dates[i] = tick.getEndTime().toDate(); opens[i] = tick.getOpenPrice().toDouble(); highs[i] = tick.getMaxPrice().toDouble(); lows[i] = tick.getMinPrice().toDouble(); closes[i] = tick.getClosePrice().toDouble(); volumes[i] = tick.getVolume().toDouble(); } final OHLCDataset dataset = new DefaultHighLowDataset(series.getName(), dates, highs, lows, opens, closes, volumes); return dataset; }
From source file:org.jfree.data.xy.DefaultHighLowDatasetTest.java
/** * Confirm that cloning works.//from www . j ava 2s .c om */ @Test public void testCloning() throws CloneNotSupportedException { DefaultHighLowDataset d1 = new DefaultHighLowDataset("Series 1", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[] { 99.9 }); DefaultHighLowDataset d2 = (DefaultHighLowDataset) d1.clone(); assertTrue(d1 != d2); assertTrue(d1.getClass() == d2.getClass()); assertTrue(d1.equals(d2)); }
From source file:org.jfree.data.xy.junit.DefaultHighLowDatasetTest.java
/** * Confirm that cloning works.// w ww . jav a 2 s . co m */ public void testCloning() { DefaultHighLowDataset d1 = new DefaultHighLowDataset("Series 1", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[] { 99.9 }); DefaultHighLowDataset d2 = null; try { d2 = (DefaultHighLowDataset) d1.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } assertTrue(d1 != d2); assertTrue(d1.getClass() == d2.getClass()); assertTrue(d1.equals(d2)); }
From source file:org.jfree.data.xy.DefaultHighLowDatasetTest.java
/** * Verify that this class implements {@link PublicCloneable}. */// ww w .j a v a 2 s.c o m @Test public void testPublicCloneable() { DefaultHighLowDataset d1 = new DefaultHighLowDataset("Series 1", new Date[0], new double[0], new double[0], new double[0], new double[0], new double[0]); assertTrue(d1 instanceof PublicCloneable); }
From source file:compecon.dashboard.panel.BanksPanel.java
protected DefaultHighLowDataset getDefaultHighLowDataset(Currency currency, Currency commodityCurrency) { PricesModel pricesModel = ApplicationContext.getInstance().getModelRegistry() .getNationalEconomyModel(currency).pricesModel; if (pricesModel.getPriceModelsForCurrencies().containsKey(currency)) { Map<Currency, PriceModel> priceModelsForCurrencies = pricesModel.getPriceModelsForCurrencies() .get(currency);/* www.j av a 2 s. c o m*/ PriceModel priceModel = priceModelsForCurrencies.get(commodityCurrency); if (priceModel != null) return new DefaultHighLowDataset("", priceModel.getDate(), priceModel.getHigh(), priceModel.getLow(), priceModel.getOpen(), priceModel.getClose(), priceModel.getVolume()); } return null; }
From source file:org.jfree.data.xy.DefaultHighLowDatasetTest.java
/** * Serialize an instance, restore it, and check for equality. *//*from w ww . j a v a 2 s.c om*/ @Test public void testSerialization() { DefaultHighLowDataset d1 = new DefaultHighLowDataset("Series 1", new Date[] { new Date(123L) }, new double[] { 1.2 }, new double[] { 3.4 }, new double[] { 5.6 }, new double[] { 7.8 }, new double[] { 99.9 }); DefaultHighLowDataset d2 = (DefaultHighLowDataset) TestUtilities.serialised(d1); assertEquals(d1, d2); }