public final class HighLow extends java.lang.Object implements IExtension, IGallery
Provides acess to the HighLow gallery object.
An open-high-low-close (OHLC) chart is a type of chart typically used to illustrate movements in the price of a financial instrument over time. Each vertical line on the chart shows the price range (the highest and lowest prices) over one unit of time, e.g., one day or one hour. Tick marks project from each side of the line indicating the opening price (e.g., for a daily bar chart this would be the starting price for that day) on the left, and the closing price for that time period on the right. The bars may be shown in different hues depending on whether prices rose or fell in that period.
A simple variant on the OHLC chart is the high-low-close (HLC) chart that identifies the range of the time unit's price action (high - low) and the end result of the time unit's price action (the close).
The methods of the HighLow
class allow you to customize the visual attributes of an OHLC chart. In order to make the supported members available, you must first set the gallery of the chart to OpenHighLowClose, and cast the setGalleryAttributes
method of the Chart to the HighLow
class:
chart1.setGallery(Gallery.OPEN_HIGH_LOW_CLOSE); HighLow highLow; highLow = ((galleries.HighLow)chart1.getGalleryAttributes());
The cast will fail if the gallery is not set to OpenHighLowClose.
Once you have done this, using the newly created object you can assign these special attributes for the OpenHighLowClose gallery type in your chart.
PopulateFinancialData(chart1); NumericDataField dfOpen = new NumericDataField(); dfOpen.setDataPath("Open"); NumericDataField dfHigh = new NumericDataField(); dfHigh.setDataPath("High"); NumericDataField dfLow = new NumericDataField(); dfLow.setDataPath("Low"); NumericDataField dfClose = new NumericDataField(); dfClose.setDataPath("Close"); DateTimeDataField dfDate = new DateTimeDataField(); dfDate.setDataPath("TransDate"); chart1.setGallery(Gallery.OPEN_HIGH_LOW_CLOSE); List<SeriesAttributes> series = chart1.getSeries(); series.get(OpenHighLowClose.OPEN.getUnderlyingValue()).getBindings().setY(dfOpen); series.get(OpenHighLowClose.HIGH.getUnderlyingValue()).getBindings().setY(dfHigh); series.get(OpenHighLowClose.LOW.getUnderlyingValue()).getBindings().setY(dfLow); series.get(OpenHighLowClose.CLOSE.getUnderlyingValue()).getBindings().setY(dfClose); chart1.getAxisX().getBindings().setLabel(dfDate); TreeFilteringCondition cond = new TreeFilteringCondition(); And andCondition = new And(); andCondition.setLeftHandOperand(new DateTimeGreaterThanEqual(dfDate, new GregorianCalendar(2013, 11, 2).getTime())); andCondition.setRightHandOperand(new DateTimeLessThanEqual(dfDate, new GregorianCalendar(2013, 11, 31).getTime())); cond.setTree(andCondition); AnalysisDataTransformer adt = new AnalysisDataTransformer(); adt.setItemsFilter(cond); chart1.getDataSourceSettings().getTransformers().add(((IDataTransformer)adt)); chart1.getLegendBox().setVisible(false); chart1.getTitles().add(new TitleDockable("Google Stock Price")); chart1.getAxisY().setForceZero(false); chart1.getAxisY().getLabelsFormat().setFormat(AxisFormat.CURRENCY); chart1.getAxisX().setLabelAngle((short)45);
public static void PopulateFinancialData(Chart chart1, String fieldNames) { FinancialData[] data = new FinancialData[] { new FinancialData( new java.util.GregorianCalendar(2012, 11, 21).getTime(), 564.25, 567.37, 556.6, 561.7, 13321500 ), new FinancialData( new java.util.GregorianCalendar(2012, 11, 23).getTime(), 567.17, 572, 562.6, 571.5, 9743800 ), new FinancialData( new java.util.GregorianCalendar(2012, 11, 26).getTime(), 575.9, 590, 573.71, 589.53, 22520700 ), new FinancialData( new java.util.GregorianCalendar(2012, 11, 27).getTime(), 589.55, 590.42, 580.1, 584.78, 19047500 ), new FinancialData( new java.util.GregorianCalendar(2012, 11, 28).getTime(), 577.27, 585.8, 572.26, 582.94, 18602300 ), new FinancialData( new java.util.GregorianCalendar(2012, 11, 29).getTime(), 590.22, 594.25, 585.25, 589.36, 18382100 ), new FinancialData( new java.util.GregorianCalendar(2012, 11, 30).getTime(), 586.79, 588.4, 582.68, 585.28, 13975700 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 3).getTime(), 593.65, 594.59, 585.5, 586.19, 13010000 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 4).getTime(), 581.8, 581.8, 572.13, 575.85, 19895300 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 5).getTime(), 568.91, 569.25, 538.77, 538.79, 37308500 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 6).getTime(), 528.94, 553.31, 518.63, 547.24, 42043300 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 7).getTime(), 553.4, 555.2, 530, 533.25, 28108600 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 10).getTime(), 525, 538.51, 521.58, 529.82, 22517300 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 11).getTime(), 539.77, 549.56, 537.37, 541.39, 21155200 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 12).getTime(), 547.77, 548, 536.27, 539, 17398000 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 13).getTime(), 531.15, 537.64, 525.8, 529.69, 22330700 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 14).getTime(), 514.75, 518.13, 505.58, 509.79, 36056400 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 17).getTime(), 508.93, 520, 501.23, 518.83, 27057400 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 18).getTime(), 525, 534.9, 520.25, 533.9, 22345900 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 19).getTime(), 531.47, 533.7, 525.5, 526.31, 16048900 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 20).getTime(), 530, 530.2, 518.88, 521.73, 17203200 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 21).getTime(), 512.47, 519.67, 510.24, 519.33, 21295300 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 24).getTime(), 520.35, 524.25, 518.71, 520.17, 6276900 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 26).getTime(), 519, 519.46, 511.12, 513, 10801300 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 27).getTime(), 513.54, 516.25, 504.66, 515.06, 16254300 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 28).getTime(), 510.29, 514.48, 508.12, 509.59, 12652800 ), new FinancialData( new java.util.GregorianCalendar(2012, 12, 31).getTime(), 510.53, 535.4, 509, 532.17, 23553300 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 2).getTime(), 553.82, 555, 541.63, 549.03, 20018500 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 3).getTime(), 547.88, 549.67, 541, 542.1, 12605900 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 4).getTime(), 536.97, 538.63, 525.83, 527, 21226200 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 7).getTime(), 522, 529.3, 515.2, 523.9, 17291300 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 8).getTime(), 529.21, 531.89, 521.25, 525.31, 16382400 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 9).getTime(), 522.5, 525.01, 515.99, 517.1, 14557300 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 10).getTime(), 528.55, 528.72, 515.52, 523.51, 21469500 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 11).getTime(), 521, 525.32, 519.02, 520.3, 12518100 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 14).getTime(), 502.68, 507.5, 498.51, 501.75, 26221700 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 15).getTime(), 498.3, 498.99, 483.38, 485.92, 31313300 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 16).getTime(), 494.64, 509.44, 492.5, 506.09, 24671600 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 17).getTime(), 510.31, 510.75, 502.03, 502.68, 16202800 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 18).getTime(), 498.52, 502.22, 496.4, 500, 16890100 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 22).getTime(), 504.56, 507.88, 496.63, 504.77, 16483800 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 23).getTime(), 508.81, 514.99, 504.77, 514.01, 30768200 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 24).getTime(), 460, 465.73, 450.25, 450.5, 52173300 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 25).getTime(), 451.69, 456.23, 435, 439.88, 43143800 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 28).getTime(), 437.83, 453.21, 435.86, 449.83, 28054200 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 29).getTime(), 458.5, 460.2, 452.12, 458.27, 20398500 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 30).getTime(), 457, 462.6, 454.5, 456.83, 14898400 ), new FinancialData( new java.util.GregorianCalendar(2013, 1, 31).getTime(), 456.98, 459.28, 454.98, 455.49, 11404800 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 1).getTime(), 459.11, 459.48, 448.35, 453.62, 19267300 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 4).getTime(), 453.91, 455.94, 442, 442.32, 17039900 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 5).getTime(), 444.05, 459.74, 442.22, 457.84, 20476700 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 6).getTime(), 456.47, 466.5, 452.58, 457.35, 21203800 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 7).getTime(), 463.25, 470, 454.12, 468.22, 25163600 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 8).getTime(), 474, 478.81, 468.25, 474.98, 22612800 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 12).getTime(), 479.51, 482.38, 467.74, 467.9, 21751900 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 13).getTime(), 467.21, 473.64, 463.22, 467.01, 16971700 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 14).getTime(), 464.52, 471.64, 464.02, 466.59, 12688400 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 15).getTime(), 468.85, 470.16, 459.92, 460.16, 13990900 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 19).getTime(), 461.1, 462.73, 453.85, 459.99, 15563700 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 20).getTime(), 457.69, 457.69, 448.8, 448.85, 17010800 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 21).getTime(), 446, 449.17, 442.82, 446.06, 15970800 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 22).getTime(), 449.25, 451.6, 446.6, 450.81, 11809100 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 25).getTime(), 453.85, 455.12, 442.57, 442.8, 13306400 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 26).getTime(), 443.82, 451.54, 437.66, 448.97, 17910700 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 27).getTime(), 448.43, 452.44, 440.65, 444.57, 20976800 ), new FinancialData( new java.util.GregorianCalendar(2013, 2, 28).getTime(), 444.05, 447.87, 441.4, 441.4, 11518400 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 1).getTime(), 438, 438.18, 429.98, 430.47, 19730300 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 4).getTime(), 427.8, 428.2, 419, 420.05, 20812700 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 5).getTime(), 421.48, 435.19, 420.75, 431.14, 22801200 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 6).getTime(), 434.51, 435.25, 424.43, 425.66, 16437500 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 7).getTime(), 424.5, 432.01, 421.06, 430.58, 16731200 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 8).getTime(), 429.8, 435.43, 428.61, 431.72, 13981500 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 11).getTime(), 429.75, 439.01, 425.14, 437.87, 16937000 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 12).getTime(), 435.6, 438.88, 427.57, 428.43, 16639700 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 13).getTime(), 428.45, 434.5, 425.36, 428.35, 14483900 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 14).getTime(), 432.83, 434.64, 430.45, 432.5, 10852700 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 15).getTime(), 437.93, 444.23, 437.25, 443.66, 22998600 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 18).getTime(), 441.45, 457.46, 441.2, 455.72, 21649900 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 19).getTime(), 459.5, 460.97, 448.5, 454.49, 18813400 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 20).getTime(), 457.42, 457.63, 449.59, 452.08, 11023600 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 21).getTime(), 450.22, 457.98, 450.1, 452.73, 13687700 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 22).getTime(), 454.58, 462.1, 453.11, 461.91, 14110900 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 25).getTime(), 464.69, 469.95, 461.78, 463.58, 17897700 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 26).getTime(), 465.44, 465.84, 460.53, 461.14, 10510500 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 27).getTime(), 456.46, 456.8, 450.73, 452.08, 11829900 ), new FinancialData( new java.util.GregorianCalendar(2013, 3, 28).getTime(), 449.82, 451.82, 441.62, 442.66, 15815700 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 1).getTime(), 441.9, 443.7, 427.74, 428.91, 13919000 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 2).getTime(), 427.6, 438.14, 426.4, 429.79, 18911400 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 3).getTime(), 431.37, 437.28, 430.31, 431.99, 12972000 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 4).getTime(), 433.76, 435, 425.25, 427.72, 12801700 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 5).getTime(), 424.5, 424.95, 419.68, 423.2, 13703400 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 8).getTime(), 424.85, 427.5, 422.49, 426.21, 10743900 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 9).getTime(), 426.36, 428.5, 422.75, 426.98, 10950500 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 10).getTime(), 428.1, 437.06, 426.01, 435.69, 13426000 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 11).getTime(), 433.72, 437.99, 431.2, 434.33, 11727300 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 12).getTime(), 434.15, 434.15, 429.09, 429.8, 8521900 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 15).getTime(), 427, 427.89, 419.55, 419.85, 11340000 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 16).getTime(), 421.57, 426.61, 420.57, 426.24, 10920400 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 17).getTime(), 420.27, 420.6, 398.11, 402.8, 33752000 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 18).getTime(), 404.99, 405.79, 389.74, 392.05, 23796400 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 19).getTime(), 387.97, 399.6, 385.1, 390.53, 21759800 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 22).getTime(), 392.64, 402.2, 391.27, 398.67, 15354300 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 23).getTime(), 403.99, 408.38, 398.81, 406.13, 23722800 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 24).getTime(), 393.54, 415.25, 392.5, 405.46, 34630400 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 25).getTime(), 411.23, 413.94, 407, 408.38, 13744200 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 26).getTime(), 409.81, 418.77, 408.25, 417.2, 27289200 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 29).getTime(), 420.45, 433.62, 420, 430.12, 22868800 ), new FinancialData( new java.util.GregorianCalendar(2013, 4, 30).getTime(), 435.1, 445.25, 432.07, 442.78, 24697800 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 1).getTime(), 444.46, 444.93, 434.39, 439.29, 18103900 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 2).getTime(), 441.78, 448.59, 440.63, 445.52, 15065300 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 3).getTime(), 451.31, 453.23, 449.15, 449.98, 12903600 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 6).getTime(), 455.71, 462.2, 454.31, 460.71, 17737200 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 7).getTime(), 464.97, 465.75, 453.7, 458.66, 17276900 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 8).getTime(), 459.04, 465.37, 455.81, 463.84, 16878500 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 9).getTime(), 459.81, 463, 455.58, 456.77, 14231700 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 10).getTime(), 457.97, 459.71, 450.48, 452.97, 11959000 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 13).getTime(), 451.51, 457.9, 451.5, 454.74, 11319600 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 14).getTime(), 453.85, 455.2, 442.15, 443.86, 15968500 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 15).getTime(), 439.16, 441, 422.36, 428.85, 26486200 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 16).getTime(), 423.24, 437.85, 418.9, 434.58, 21543000 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 17).getTime(), 439.05, 440.09, 431.01, 433.26, 15282300 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 20).getTime(), 431.91, 445.8, 430.1, 442.93, 16127800 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 21).getTime(), 438.15, 445.48, 434.2, 439.66, 16286500 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 22).getTime(), 444.05, 448.35, 438.22, 441.35, 15822800 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 23).getTime(), 435.95, 446.16, 435.79, 442.14, 12607900 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 24).getTime(), 440.85, 445.66, 440.36, 445.15, 9863100 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 28).getTime(), 449.9, 451.11, 440.85, 441.44, 13790900 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 29).getTime(), 440, 447.5, 439.4, 444.95, 11806300 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 30).getTime(), 445.65, 454.5, 444.51, 451.58, 12625700 ), new FinancialData( new java.util.GregorianCalendar(2013, 5, 31).getTime(), 452.5, 457.1, 449.5, 449.73, 13725100 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 3).getTime(), 450.73, 452.36, 442.48, 450.72, 13298300 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 4).getTime(), 453.22, 454.43, 447.39, 449.31, 10454600 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 5).getTime(), 445.65, 450.72, 443.71, 445.11, 10378200 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 6).getTime(), 445.47, 447, 434.05, 438.46, 14890500 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 7).getTime(), 436.5, 443.24, 432.77, 441.81, 14447700 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 10).getTime(), 444.73, 449.08, 436.8, 438.89, 16076900 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 11).getTime(), 435.74, 442.76, 433.32, 437.6, 10218300 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 12).getTime(), 439.5, 441.25, 431.5, 432.19, 9472400 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 13).getTime(), 432.5, 437.14, 428.75, 435.96, 10208300 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 14).getTime(), 435.4, 436.29, 428.5, 430.05, 9709500 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 17).getTime(), 431.44, 435.7, 430.36, 432, 9264800 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 18).getTime(), 431.56, 434.9, 430.21, 431.77, 6965200 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 19).getTime(), 431.4, 431.66, 423, 423, 11105000 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 20).getTime(), 419.3, 425.98, 415.17, 416.84, 12761100 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 21).getTime(), 418.49, 420, 408.1, 413.5, 17182800 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 24).getTime(), 407.4, 408.66, 398.05, 402.54, 17169500 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 25).getTime(), 405.7, 407.79, 398.83, 402.63, 11220100 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 26).getTime(), 403.9, 404.79, 395.66, 398.07, 13133000 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 27).getTime(), 399.25, 401.39, 393.54, 393.78, 12044500 ), new FinancialData( new java.util.GregorianCalendar(2013, 6, 28).getTime(), 391.36, 400.27, 388.87, 396.53, 20661300 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 1).getTime(), 402.69, 412.27, 401.22, 409.22, 13966200 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 2).getTime(), 409.96, 421.63, 409.47, 418.49, 16780900 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 3).getTime(), 420.86, 422.98, 417.45, 420.8, 8604600 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 5).getTime(), 420.39, 423.29, 415.35, 417.42, 9786600 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 8).getTime(), 420.11, 421, 410.65, 415.05, 10647800 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 9).getTime(), 413.6, 423.5, 410.38, 422.35, 12592300 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 10).getTime(), 419.6, 424.8, 418.25, 420.73, 10050200 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 11).getTime(), 422.95, 428.25, 421.17, 427.29, 11653300 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 12).getTime(), 427.65, 429.79, 423.41, 426.51, 9984400 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 15).getTime(), 425.01, 431.46, 424.8, 427.44, 8639900 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 16).getTime(), 426.52, 430.71, 424.17, 430.2, 7733500 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 17).getTime(), 429.7, 432.22, 428.22, 430.31, 7106800 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 18).getTime(), 433.38, 434.87, 430.61, 431.76, 7817100 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 19).getTime(), 433.1, 433.98, 424.35, 424.95, 9597200 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 22).getTime(), 429.46, 429.75, 425.47, 426.31, 7421300 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 23).getTime(), 426, 426.96, 418.71, 418.99, 13192700 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 24).getTime(), 438.93, 444.59, 435.26, 440.51, 21140600 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 25).getTime(), 440.7, 441.4, 435.81, 438.5, 8196200 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 26).getTime(), 435.3, 441.04, 434.34, 440.99, 7148300 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 29).getTime(), 440.8, 449.99, 440.2, 447.79, 8859200 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 30).getTime(), 449.96, 457.15, 449.23, 453.32, 11050800 ), new FinancialData( new java.util.GregorianCalendar(2013, 7, 31).getTime(), 454.99, 457.34, 449.43, 452.53, 11534200 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 1).getTime(), 455.75, 456.8, 453.26, 456.68, 7366100 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 2).getTime(), 458.01, 462.85, 456.66, 462.54, 9813700 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 5).getTime(), 464.69, 470.67, 462.15, 469.45, 11387700 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 6).getTime(), 468.02, 471.89, 462.17, 465.25, 11959200 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 7).getTime(), 463.8, 467, 461.77, 464.98, 10673500 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 8).getTime(), 463.86, 464.1, 457.95, 461.01, 9134900 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 9).getTime(), 458.64, 460.46, 453.65, 454.45, 9530900 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 12).getTime(), 456.86, 468.65, 456.63, 467.36, 13015500 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 13).getTime(), 470.94, 494.66, 468.05, 489.57, 31497900 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 14).getTime(), 497.88, 504.25, 493.4, 498.5, 27013300 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 15).getTime(), 496.42, 502.4, 489.08, 497.91, 17510500 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 16).getTime(), 500.15, 502.94, 498.86, 502.33, 12939500 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 19).getTime(), 504.34, 513.74, 504, 507.74, 18232800 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 20).getTime(), 509.71, 510.57, 500.82, 501.07, 12810300 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 21).getTime(), 503.59, 507.15, 501.2, 502.36, 11995700 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 22).getTime(), 504.98, 505.59, 498.2, 502.96, 8721700 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 23).getTime(), 503.27, 503.35, 499.35, 501.02, 7954700 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 26).getTime(), 500.75, 510.2, 500.5, 502.97, 11820200 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 27).getTime(), 498, 502.51, 486.3, 488.59, 15149600 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 28).getTime(), 486, 495.8, 486, 490.9, 10986000 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 29).getTime(), 491.65, 496.5, 491.13, 491.7, 8559200 ), new FinancialData( new java.util.GregorianCalendar(2013, 8, 30).getTime(), 492, 492.95, 486.5, 487.22, 9724900 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 3).getTime(), 493.1, 500.6, 487.35, 488.58, 11854600 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 4).getTime(), 499.56, 502.24, 496.28, 498.69, 12322600 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 5).getTime(), 500.25, 500.68, 493.64, 495.27, 8441700 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 6).getTime(), 498.44, 499.38, 489.95, 498.22, 12840200 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 9).getTime(), 505, 507.92, 503.48, 506.17, 12167400 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 10).getTime(), 506.2, 507.45, 489.5, 494.64, 26542700 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 11).getTime(), 467.01, 473.69, 464.81, 467.71, 32096300 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 12).getTime(), 468.5, 475.4, 466.01, 472.69, 14430400 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 13).getTime(), 469.34, 471.83, 464.7, 464.9, 10672700 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 16).getTime(), 461, 461.61, 447.22, 450.12, 19418100 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 17).getTime(), 447.96, 459.71, 447.5, 455.32, 14263600 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 18).getTime(), 463.18, 466.35, 460.66, 464.68, 16316500 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 19).getTime(), 470.7, 475.83, 469.25, 472.3, 14447900 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 20).getTime(), 478, 478.55, 466, 467.41, 24975100 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 23).getTime(), 496.1, 496.91, 482.6, 490.64, 27218100 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 24).getTime(), 494.88, 495.47, 487.82, 489.1, 13012300 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 25).getTime(), 489.2, 489.64, 481.43, 481.53, 11319900 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 26).getTime(), 486, 488.56, 483.9, 486.22, 8472200 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 27).getTime(), 483.78, 484.67, 480.72, 482.75, 8144300 ), new FinancialData( new java.util.GregorianCalendar(2013, 9, 30).getTime(), 477.25, 481.66, 474.41, 476.75, 9291300 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 1).getTime(), 478.45, 489.14, 478.38, 487.96, 12638700 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 2).getTime(), 485.63, 491.8, 483.75, 489.56, 10328000 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 3).getTime(), 490.51, 492.35, 480.74, 483.41, 11526900 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 4).getTime(), 483.86, 484.6, 478.6, 483.03, 9245300 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 7).getTime(), 486.56, 492.65, 485.35, 487.75, 11153300 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 8).getTime(), 489.94, 490.64, 480.54, 480.94, 10389900 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 9).getTime(), 484.64, 487.79, 478.28, 486.59, 10775900 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 10).getTime(), 491.32, 492.38, 487.04, 489.64, 9950100 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 11).getTime(), 486.99, 493.84, 485.16, 492.81, 9562100 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 14).getTime(), 489.83, 497.58, 489.35, 496.04, 9353500 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 15).getTime(), 497.51, 502, 495.52, 498.68, 11431200 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 16).getTime(), 500.79, 502.53, 499.23, 501.11, 8967900 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 17).getTime(), 499.98, 504.78, 499.68, 504.5, 9056900 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 18).getTime(), 505.99, 509.26, 505.71, 508.89, 10376500 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 21).getTime(), 511.77, 524.3, 511.52, 521.36, 14218100 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 22).getTime(), 526.41, 528.45, 508.03, 519.87, 19073700 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 23).getTime(), 519, 525.67, 519, 524.96, 11204400 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 24).getTime(), 525, 532.47, 522.45, 531.91, 13741600 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 25).getTime(), 531.32, 533.23, 525.11, 525.96, 12064000 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 28).getTime(), 529.04, 531, 523.21, 529.88, 19658600 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 29).getTime(), 536.27, 539.25, 514.54, 516.68, 22707400 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 30).getTime(), 519.61, 527.52, 517.02, 524.9, 12648700 ), new FinancialData( new java.util.GregorianCalendar(2013, 10, 31).getTime(), 525, 527.49, 521.27, 522.7, 9846300 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 1).getTime(), 524.02, 524.8, 515.84, 520.03, 9817500 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 4).getTime(), 521.1, 526.82, 518.81, 526.75, 8736700 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 5).getTime(), 524.58, 528.89, 523, 525.45, 9471900 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 6).getTime(), 524.15, 524.86, 518.2, 520.92, 7977700 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 7).getTime(), 519.58, 523.19, 512.38, 512.49, 9379300 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 8).getTime(), 514.58, 521.13, 512.59, 520.56, 9975600 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 11).getTime(), 519.99, 521.67, 514.41, 519.05, 8123300 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 12).getTime(), 517.67, 523.92, 517, 520.01, 7295600 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 13).getTime(), 518, 522.25, 516.96, 520.63, 7043600 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 14).getTime(), 522.81, 529.28, 521.87, 528.16, 10086400 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 15).getTime(), 526.58, 529.09, 524.49, 524.99, 11354300 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 18).getTime(), 524.99, 527.19, 518.2, 518.63, 8748000 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 19).getTime(), 519.03, 523.38, 517.97, 519.55, 7462100 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 20).getTime(), 519.23, 520.42, 514.33, 515, 6925600 ), new FinancialData( new java.util.GregorianCalendar(2013, 11, 21).getTime(), 517.6, 521.21, 513.67, 521.14, 9344500 ) }; ObjectProvider objProvider = new ObjectProvider(data); chart1.getDataSourceSettings().setDataSource(objProvider); if (fieldNames == "") { DateTimeDataField dfDate = new DateTimeDataField(); dfDate.setDataPath("TransDate"); NumericDataField dfOpen = new NumericDataField(); dfOpen.setDataPath("Open"); NumericDataField dfHigh = new NumericDataField(); dfHigh.setDataPath("High"); NumericDataField dfLow = new NumericDataField(); dfLow.setDataPath("Low"); NumericDataField dfClose = new NumericDataField(); dfClose.setDataPath("Close"); DataFieldCollection dataFieldCollection = chart1.getDataSourceSettings().getDataFields(); dataFieldCollection.add(dfDate); dataFieldCollection.add(dfOpen); dataFieldCollection.add(dfHigh); dataFieldCollection.add(dfLow); dataFieldCollection.add(dfClose); chart1.getData().setSeries(4); chart1.getSeries().get(0).getBindings().setX(dfDate); chart1.getSeries().get(1).getBindings().setX(dfDate); chart1.getSeries().get(2).getBindings().setX(dfDate); chart1.getSeries().get(3).getBindings().setX(dfDate); chart1.getSeries().get(OpenHighLowClose.LOW.getUnderlyingValue()).getBindings().setY(dfLow); chart1.getSeries().get(OpenHighLowClose.CLOSE.getUnderlyingValue()).getBindings().setY(dfClose); chart1.getSeries().get(OpenHighLowClose.OPEN.getUnderlyingValue()).getBindings().setY(dfOpen); chart1.getSeries().get(OpenHighLowClose.HIGH.getUnderlyingValue()).getBindings().setY(dfHigh); chart1.getDataSourceSettings().readData(); } else { List<DataField> removeFields = new ArrayList<DataField>(); List<String> includeFields = Arrays.asList(fieldNames.split(",")); chart1.getDataSourceSettings().fillFromSchema(); for (DataField dataField : chart1.getDataSourceSettings().getDataFields()) { if (dataField.isMeasure() && !includeFields.contains(dataField.getDataPath())) { removeFields.add(dataField); } } for (DataField dataField : removeFields) { chart1.getDataSourceSettings().getDataFields().remove(dataField); } } } public static void PopulateFinancialData(Chart chart1) { PopulateFinancialData(chart1, ""); }
public static class FinancialData { private FinancialData(Date time, double open, double high, double low, double close, double volume) { this.setTransDate(time); this.setOpen(open); this.setHigh(high); this.setLow(low); this.setClose(close); this.setVolume(volume); } private java.util.Date privateTransDate = new java.util.Date(); public final java.util.Date getTransDate() { return privateTransDate; } public final void setTransDate(java.util.Date value) { privateTransDate = value; } private double privateOpen; public final double getOpen() { return privateOpen; } public final void setOpen(double value) { privateOpen = value; } private double privateHigh; public final double getHigh() { return privateHigh; } public final void setHigh(double value) { privateHigh = value; } private double privateLow; public final double getLow() { return privateLow; } public final void setLow(double value) { privateLow = value; } private double privateClose; public final double getClose() { return privateClose; } public final void setClose(double value) { privateClose = value; } private double privateVolume; public final double getVolume() { return privateVolume; } public final void setVolume(double value) { privateVolume = value; } }
Constructor and Description |
---|
HighLow()
Constructs a newly allocated HighLow object
|
Modifier and Type | Method and Description |
---|---|
boolean |
isHighLowClose4Series()
Provides means to convert a OpenHighLowClose chart to a HighLowClose chart (and the other way around) without having to re-order the series.
|
void |
resetHighLowClose4Series()
Set the property HighLowClose4Series to its default value.
|
void |
setHighLowClose4Series(boolean value)
Provides means to convert a OpenHighLowClose chart to a HighLowClose chart (and the other way around) without having to re-order the series.
|
public boolean isHighLowClose4Series()
Provides means to convert a OpenHighLowClose chart to a HighLowClose chart (and the other way around) without having to re-order the series.
If this method is set to true, a HighLowClose chart will now take four series.
It will use series index 0 for Low, ignore series index 1, series index 2 for Close and series index 3 for High.
resetHighLowClose4Series
public void setHighLowClose4Series(boolean value)
Provides means to convert a OpenHighLowClose chart to a HighLowClose chart (and the other way around) without having to re-order the series.
If this method is set to true, a HighLowClose chart will now take four series.
It will use series index 0 for Low, ignore series index 1, series index 2 for Close and series index 3 for High.
value
- resetHighLowClose4Series
public void resetHighLowClose4Series()
isHighLowClose4Series
2014 Software FX, Inc. All Rights Reserved. Chart FX is a registered trademark of Software FX, Inc
All other names are trademarks or registered trademarks of their respective owners.