在.NET中如何展示金融图表?最佳库用于显示实时1分钟股票走势图?

24
我们正在使用C# .NET。
我们正在寻找一种方法来显示即时股票1分钟财务图表。
需要: - 烛台图 - 缩放/平移 - 随着接收到的流数据实时滚动的图表
希望有: - 在图表上打印元数据(买入/卖出点等)
我们不介意为此付费,所以任何建议都可以!

我欣赏这类东西确实有需求,但是我是唯一一个被这种东西吓到的人吗?也许我们应该在略长于1分钟的时间范围内共同做出资本配置决策?无意冒犯发帖者个人,我确实认为有时候这种东西很重要。 - Doug McClean
他甚至不一定需要等待整整一分钟:他的图表显示每分钟的数据点,但这可能是来自该分钟内多个实时报价。 - hughdbrown
你对RadControls的使用感觉如何? - Hans Rudel
@Doug McClean:在同样的时间内,收集更多市场信息比15分钟内收集更多信息,那么为什么不使用更精确的数据呢? - Svisstack
1
作为Gigasoft的所有者,如果读者正在研究金融图表,请查看我们的.net wpf金融图表演示。在日期时间处理、多个y轴、导出等方面有良好的逻辑,非常适合金融需求。可用于实时和历史用途。 - Robert
1
你可以尝试使用Nevron Chart for .NET - 它具有完整的股票图表功能,缩放、平移和滚动等特性 - https://www.nevron.com/products-dot-net-chart-overview.aspx - user896851
6个回答

32

我的研究最终导致了这些包:

* StockChartX WPF
      o http://www.freedownloadscenter.com/Programming/Misc__Programming_Tools/Stock_Chart_X_Financial_Chart_Component.html
      o Rating: B.
      o Pros:
            + Very powerful
            + Nice looking
            + Has a WPF version, see http://www.modulusfe.com/stockchartxwpf/
            + Real-time automatic technical analysis updating
      o Cons:No scroll with the mouse (for non-WPF version, WPF version has mouse scrolling)
      o Cost: US$350 (AciveX) to US$529 (WPF)
      o Notes: StockChartX uses a function named AppendValue (series name, date, value). You actually "push" data into StockChartX, so it does not matter where the data is coming from, be it a database, text file, XML file, or real time tick-by-tick data - it all goes into StockChartX the same way, simple, quick, and easy! 
* Dundas
      o Pros:
      o Video demonstration on charting (4 videos): http://www.youtube.com/watch?v=MaDHjUTri7c
* NetAdvantage
      o Pros:
            + incredibly powerful
            + supports financial charts including, Gantt and radar charts
      o Cost: >US$700
      o Video demonstration: http://www.youtube.com/watch?v=BW7pBNF51Mo
      o Video overview: http://searchsoftwarequality.techtarget.com/video/0,297151,sid92_gci1356440,00.html
      o Video tutorial on samples: http://www.infragistics.com/videos/get-started/intro-to-samples.aspx
      o Video tutorial on charting: http://www.infragistics.com/FullMovie.aspx?id=3476
* AnyChart
      o Supports financial charts
      o US$500
      o For OHLC chart tutorial, see http://anychart.com/products/anychart/docs/users-guide/index.html?Chart-Types.html
* Financial Charting Component (for .NET 2.0) v1.0
      o NumeralTechnology
      o http://www.numeraltechnology.com/shop/
      o Rating: C
      o Cost: US$350
      o Gallery: see http://www.numeraltechnology.com/shop/custom.aspx?recid=14
* TeeChart .NET
      o http://www.steema.com/ordering/order_tchnet_n.shtml
      o Rating: Yet to try.
      o Cost: US$700
      o http://demos.telerik.com/wpf/
* RadControls for WPF
      o Rating: A
      o Pros: very nice, does everything we want
      o Cost: US$999
* Chart Control .NET
      o http://www.chartcontrol.net/Chart_gal.htm
* NextWave Chart for WPF
      o http://www.nextwavesoft.com/products/nextwave-chart-for-wpf
* Barchart WPF
      o http://www.syncfusion.com
      o Cons: doesnt seem to be specialized for financial functions
* DevExpress
      o http://www.devexpress.com/Products/NET/Controls/Charting/screenshot_gallery.xml
      o Pros: design wizard that allows you to customize charts with the greatest of ease with onscreen design, see:
            + http://www.devexpress.com/Products/NET/Controls/Charting/design.xml
      o Cons:
            + None.
      o Cost:
            + $249 for an individual component, or $1999 for the full enterprise version
* Super Graph Library
      o http://www.supergraphlibrary.com/

更新:

http://www.componentart.com/products/dv/


如果您有更多建议,我会很感兴趣! - Contango
Infragistics?不能保证它适用于实时数据,但它是一款顶级的.NET UI库,在此未被提及。http://www.infragistics.com/dotnet/netadvantage/wpf/xamchart.aspx#Gallery - hughdbrown
我们使用DevExpress,我必须说,它使得开发一切变得更加容易和快捷! - Irfy

5
Visiblox在样式和金融图表方面提供了很好的支持,并且是一个高性能组件。 他们在网站上有一个实时流媒体图表的示例,听起来正是你所寻找的,而且他们有WPF和Silverlight版本。 你可以在这里看到Visiblox和其他一些流行图表之间的性能比较博客文章。

我已经测试了一段时间的Visiblox,我真的认为它们的性能很差。显示10,000个点的系列需要一段时间,而使用5个或更多的10,000个点系列时,图表组件就会崩溃。 - Ignacio Soler Garcia
听起来你可能做错了什么。我已经成功地渲染了大约1500万个点,通过适当的过滤策略和性能优化,效果还是相当不错的。你是否联系过相关人员以确保你正在优化数据的显示方式? - Chris Grant
顺便说一下,我在加载初始数据时遇到了问题,之后刷新很好(我每秒添加了一堆点),但是加载最初的50K个点可能需要一分钟。 - Ignacio Soler Garcia
你尝试过对你的代码进行性能分析来查找为什么会这么慢吗?例如,你是逐个添加单个数据点吗?我曾经也是这样做的,但后来改用了AddRange函数,效果有了很大的提升。我肯定有一个包含超过50,000个数据点的图表,而启动时间只需不到一秒钟。 - Chris Grant
让我们在聊天中继续这个讨论 - Chris Grant
显示剩余3条评论

4
ASP.NET Charting Control提供高级金融图表绘制功能。Scott Gu提供了一个非常好的概述和有价值的链接。 如果您熟悉并喜欢Dundas(如先前所述),那么您也会喜欢免费的ASP.NET Charting Control。为什么?Microsoft于2007年4月收购了Dundas Data Visualization知识产权,并将该技术集成到不同的Microsoft产品中。 请查看Scott Gu的帖子并下载Microsoft Chart Controls Samples项目,以了解ASP.NET Charting Control的功能。
我应该指出,我已经创建了五年以上的财务报告,我们一直使用Dundas。他们有一个很好、灵活的产品,但由于它不是免费的,而且MS现在也提供了相同的产品,所以我会选择MS。

祝你好运。


有趣的 - 感谢提供信息。我不确定它是如何工作的 - 如果我们正在使用 C# 编写应用程序,我们甚至可以使用 ASP .NET 组件吗?难道 ASP 不是用于 Web 开发吗? - Contango
我确定他只是假设你正在开发 Web 应用程序。 Dundas 本身具有常规的 Windows 表单组件。 - Halvard
是的,我错误地认为你在开发网络应用程序。对此我感到很抱歉。话虽如此,我(像 @Halvard 一样)建议你尝试一下 Dundas。这是他们的金融图表库:http://www.dundas.com/Gallery/Flash/Chart/FinancialStock/index.aspx - Ben Griswold
3
MS Charting Control也适用于WinForms。 在这里查看: http://code.msdn.microsoft.com/mschart - Colin
太好了!感谢你的评论,Colin。 - Ben Griswold

2
Dundas制作的图表非常漂亮。我们在我工作的公司很满意,尽管我们还没有尝试将流数据传输到它上面。你可以免费评估完整的产品,但需要购买许可证(不过就像你说的那样,这并不太重要)。

感谢反馈。我们会去了解一下Dundas。希望它能够实时流式传输数据。 - Contango

2

不确定您是需要用于Web网站还是桌面应用程序。对于Web开发,有一个功能非常强大的amCharts股票图表控件可用。它基于Flash技术,您可以通过将数据以CSV格式输出来向其提供数据,而这些数据可以从.NET中获取。WPF版本的控件将在几个月后发布。

更新:现在已经可以使用amCharts股票图表的WPF版本了。


我想告诉你,amCharts Stock Chart for WPF已经发布了。 - Alan Mendelevich

0

如果你正在进行WPF或Silverlight开发,VisiFire是一个不错的选择。

一个免费的WinForms选项是ZedGraph,但我相信你需要做一些工作才能从中获得实时更新。


Visifire看起来很不错,但似乎没有为金融服务量身定制的内容。无论如何,感谢您的评论! - Contango
Visifire支持蜡烛图表的缩放和平移,并且可以接收流数据。http://www.visifire.com/silverlight_candlestick_charts_gallery.php - sharmila

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接