Currently my app pulls the full (closed) candles from a price server (open candles are unavailable) to mimic an open candle I create a synthetic one from the streaming price data stored in another QVector (with a size() of 1, for one candle), on a candle stick chart the open candle can change an unlimited amount of time during the charts time frame and a closed candle never changes, at the moment I call replot() when I update the last candle and replot() again when I new candle is created. The first replot() I mention only needs to redraw one candle (the last/open one), the second replot() I mention only needs to shift the chart left one candle. Am I missing a more efficient way of of doing this?
The screenshot is of QwtPlotTradingCurve (really small candles). It's actually more common to hide the horizontal gaps in a trading packages, the gaps are created when a market is closed, the screenshot provided is EURUSD which is only closed over the weekend. When the gaps are included line studies (i.e. Trend lines and channels) can't be drawn accurately. Currently when plotting a candlestick chart showing daily candles over one year the QwtPlotTradingCurve plots space for around 365 candles when it should be closer to 200 (business days in a year) for most financial instruments.
Thanks for your replies guys
Bookmarks