产品总监 李一芃、数据团队负责人 贺云晓

珠海盈米基金销售有限公司(以下简称“盈米基金”),是一家深度运用互联网技术、深度耕耘泛资管行业的创新型金融科技公司。盈米基金致力于用买方投顾的理念及实践改变中国人买基金的方式,帮助更多的客户实现可持续回报。

盈米基金在量化分析及投研成果开发的场景中应用 DolphinDB,投资研究与科技实现团队在 DolphinDB 的协助下提升了应用实现效率。

本篇文章主要分享盈米基金使用 DolphinDB 的具体场景、业务改善、选择理由、学习经历和使用感受。

使用 DolphinDB 的业务场景

由蜂鸟开发迭代的盈米蜂鸟投研系统,通过复杂的后台计算,实时为用户提供即时的投资研究相关的工具应用,为专业机构投资者提供了交易运营服务及投研投顾业务解决方案。

目前我们主要研究日频数据,研究的数据类别包括全量的基金净值,报告的截面数据等。目前全市场基金数据包含1万多只基金产品,由于基金成立时间不一,日频净值数据年增300万的数据量,数据计算量十分庞大。

虽然在具体投研中数据的频率和总量较低,但是我们需要基于存量数据进行大量且复杂的实时计算。在此过程中,涉及到很多时间窗口对齐、标的过滤的连表操作。之前我们使用的其他方法,开发复杂度很高,同时计算效率非常不理想。因此,我们亟需强大的算力支持,实现高效处理数据的存储、查询与计算。目前,在使用 DolphinDB 后,我们的查询和计算的效率已经达到了200~300倍的提升。

DolphinDB 在我们的业务场景中主要被用于实现投研系统的算法工程化,其在数据查询与计算方面可以达到毫秒级响应,完全满足了我们的性能需求,实现对各种模型指标的实时计算。

此外,我们用 DolphinDB 支持算法来实现各种功能,比如计算基金的各种业绩评价指标,构建风格因子等。通过这些功能帮助客户进行高效投研。

DolphinDB 带来的业务改善

目前,对于业务带来的最大的改善是计算性能和研发效率的明显提升。

相比之前使用其他系统,新系统完全满足了用户操作秒级响应的需求,部分场景下的计算速度甚至是之前的300倍以上。

此外,使用 DolphinDB 极大加快了项目的投产速度,简单估算,现在的研发速度是之前的4~5倍。

计算性能和研发效率的提升不仅仅会优化用户的使用体验,更重要的是在金融市场诸多细分领域为用户创造更多具有投研价值的产品及服务从而发现更多的投资机会。

选择 DolphinDB 的理由

经由推荐,我们对于 DolphinDB 有了初步的了解,并且了解到其提供的服务能为我们目前算力、数据等方面提供支持。之后我们搜索了研报和一些排名数据,发现 DolphinDB 在全球时序数据库中位列前茅。最令我们惊喜的是,DolphinDB 超越了传统数据库功能,提供了分布式存储、编程建模与高性能计算的一站式大数据解决方案。

之后我们正式进行了数据库选型。从多个维度谨慎对比 DolphinDB了与同类型其他产品。经过全面的资料对比与性能测试,最终我们选择了高性能的分布式时序数据库 DolphinDB。

在产品对比中,除了存算性能,我们还考虑了如下三大因素。

首先,是否具备金融属性。许多数据库产品只提供一些通用功能。但是 DolphinDB 提供了投研方面非常便利的高效工具,比如内置丰富的金融场景的相关函数,能够快速实现一些复杂的数据分析需求。此外,DolphinDB 提供大量的截面计算和连接引擎等,能够对数据清洗和分析进行快速验证。

其次,是否支持多种接口。我们在使用中会涉及多系统的对接,无论在系统的对接,还是在接口的定制和使用上,DolphinDB 都具备良好的扩展性。

最后,是否易上手易使用。DolphinDB 的学习门槛很低,大多数研发和投研人员可以快速上手。同时,DolphinDB 对很多计算函数及引擎做了较好的优化,在迁移已有的计算和实现新的计算需求时,我们不需要考虑太多底层优化的事情。

一周上手 DolphinDB

正式达成合作后,我们团队面临的挑战是——项目进度紧,了解并熟悉 DolpinDB 使用的时间短。DolpinDB团队提供了专人支持,配合我们团队成员只花了一周的时间就实现了上手。在前半周,我们认真学习了 DolphinDB 提供的培训材料。后半周对着接口文档查询各种资料,同时在 ask.dolphindb 的社区里搜索相关的用户问答。通过结合使用这三项工具,我们很快就实现了 DolphinDB 的基本运用。

在后续使用中,我们会产生一些或大或小的技术疑问。这时我们会带着这些问题寻求 DolphinDB 技术支持团队的帮助。在交流技术问题与解决方案的过程中,技术支持们会非常积极地帮助我们寻找、复现和解决问题。我们可以切实感受到 DolphinDB 技术支持团队成员的专业度,以及技术服务的及时性。在技术团队的帮助下,大概一个月后,我们就做到了真正熟练使用 DolphinDB,通过自主编写代码完成项目。

回顾学习及使用 DolphinDB 的经历,我们认为想要用好 DolphinDB,必须要做好以下三件事:

  • 要有具体的使用场景。学习 DolphinDB,本质上也是学习一门编程语言。有了具体的使用场景才能用好语言,只有用得好才算真正学会了这门语言。

  • 要有具体的使用数据。DolphinDB 是一款数据库,数据库的使用定然需要大量数据的支持。有了使用数据,才能跑出各种模型;有了使用数据,模型才能进行使用。

  • 要学会用 DolphinDB 的思维来写算法。我们发现 DolphinDB 相比 Python 还是有一些不一样、但是使用体验更佳的地方。举例来讲,Python 习惯于使用矩阵的思维去做计算,有时计算逻辑会非常复杂;而 DolphinDB 有很多基于字段、基于 SQL 的语法糖,这些语法糖在方便使用者的同时极大加快了研发效率。在习惯 DolphinDB 的算法思维之后,使用自然会变得更加顺利。

关于 DolphinDB 的使用感受

使用 DolphinDB 已有些时日,我们也见证了团队成员从刚开始的辛苦学习,到逐渐接受并且认可 DolphinDB 的强大与便捷,再到大家开始主动探索 DolphinDB 的更多功能。在这个过程中,大家也分享了很多关于 DolphinDB 的使用感受,总结后共有如下五点:

  1. DolphinDB 使用体验非常好。这是同事们最大、也是最深刻的使用感受。DolphinDB 针对金融领域提供了很多方便开发的工具。比如 window join、context by 这种功能点非常好用,有效避免了一些复杂逻辑。很多同事之前习惯使用 Python,但在接触 DolphinDB 后也会被这些引擎和函数惊艳到,确确实实地感受到开发变得更加便捷。

  2. DolphinDB 是轻量级的。如果一款产品技术太重,是很难被引入一个团队并且真正使用起来。如果一款产品不够轻量级,就无法做到将很多复杂的架构和复杂的体系完美地融合在一起。但是反观 DolphinDB,真正做到了产品的轻量,并且在保持轻量的同时提供了很多接口,具备良好的扩展性。

  3. DolphinDB 的存储性能非常优秀。压缩比例非常高,最高可以达到10:1。当前项目因为数据总量不大,压缩对节省存储空间的意义一般,但是在并发请求时,对提升磁盘 IO 效率很有帮助。

  4. DolphinDB 的计算性能非常优秀。这一点我们团队、尤其是负责算法的同事有着深刻体会。同样的算法例子,使用 Python 可能需要两分钟才能执行完成,但是 DolphinDB 的执行时间只需要一秒。

  5. DolphinDB 非常好上手。前文也分享了我们学习 DolphinDB 的经历。一周实现基本上手,一个月达到熟练使用,对比其他产品的学习周期,我们认为 DolphinDB 的学习门槛是比较低的。

让一款产品真正应用于一家企业并不容易,从接触了解到引入准备,从探索磨合到落地实践,需要团队上下每个成员的齐心努力。从敲定项目到引入 DolphinDB,再到第一个版本的成功上线,其实只是很短、甚至不到一个月的时间。而 DolphinDB 也确实得到了开发团队、产品团队和研究员们的一致认可与接受。大家都在各自的领域发光发热,一起探索如何最大化地将 DolphinDB 给用起来。

衷心希望盈米基金和 DolphinDB 可以保持长期合作,相互拥抱、相互成就。让我们一起在投研系统的建设方面做出更多创新性的合作,一起推动未来行业的蓬勃发展。

盈米基金如何实现基金实时评价的百倍提速?相关推荐

  1. 场外和场内的区别_3分钟看懂场内基金和场外基金的区别!

    有个朋友问我,为什么前几天在大盘跌的时候,要卖基金,然后又再买回来?不是说长期持有的吗? 其实我买的基金分为两种. 场内的基金是做波段的,遇到大盘瞬间波动大的时候,也会做做超短线,场内基金买卖不用交印 ...

  2. 场内场外交易成本_选择场内基金还是场外基金,看这篇文章就够了

    基金按照买卖的渠道可分为场内基金和场外基金.有的喜欢购买场内基金,有的喜欢购买场外基金,我自己就喜欢购买场内基金.这两种基金究竟怎么选择呢?从三方面一一为你道来. 一.场内.场外基金的不同 1.交易渠 ...

  3. 场内基金和场外基金区别

    场内就是股票市场,也就是大家说的二级市场.场外就理解成为股票交易市场外,就是银行.证券公司的代销,基金公司的直销方式,也就是熟悉的开放式基金销售渠道. 封闭式基金,ETF基金只能在场内购买(对大投资者 ...

  4. 说一说场内基金和场外基金的区别

    今天收到后台私信,叫我再写几篇实用的干货.第一次被催更,我竟然有一种要开学了的鸡冻. 鸡冻到放下钉钉 我大天朝过山车般的A股这周又莫名抽风,开始大涨.广大股友果然是不错过每一次应有的恐慌,也不缺席每一 ...

  5. 什么是基金分红?基金分红的意义 基金分红种类 基金分红是什么意思

    什么是基金分红?基金分红的意义 基金分红种类 基金分红是什么意思 一.什么是基金分红 1.基金分红是指:基金公司将基金收益的一部分派发给投资者的一种投资回报方式. 2.基金分红其实不会使持有者的资产增 ...

  6. 关于A基金和B基金的了解

    玩杠杆基金你想赢,首先要懂一点杠杆基金理论,以防上当受骗! 1. 杠杆基金分类:A基金+B基金.A基金又叫稳健(之所以叫稳健,是因为A基金年收益是固定的,通常=年利率 +3.5%):B基金又叫进取(之 ...

  7. 哪些是计算机应用基金,计算机应用的基金有哪些

    中国的科研基金主要有以下几种: 1 国家自然科学基金重大项目 -- 重大突破的研究 高层次 国内领先 2 国家自然科学基金重点项目 3.15前 突破性进展的研究 高层次 国内领先 3 国家科技攻关项目 ...

  8. 【基金学习】基金的相关计算题目

    文章目录 一.基金收益计算 1. 累计收益/持有收益 2. 年化收益/年化收益率 3. 涨跌幅 4. 分红 二.风险计算 1. 贝塔系数 2. 波动率 三.费用计算 1. 托管费 2. 管理费 3. ...

  9. 全网爬取6500多只基金|看看哪家基金最强

    .理财是个非常重要的技能,无论是高高在上的成功人士还说大众老百姓都必须要掌握的技能,俗话说"人不理财,财不理你".理财的方法有很多,我个人比较喜欢买基金,而基金又有很分很多种:股票 ...

最新文章

  1. php网站怎么缓存,一个php网站缓存代码分享
  2. 《那些年啊,那些事——一个程序员的奋斗史》——111
  3. UVA - 1533Moving Pegs移动小球 (bfs加状态压缩)
  4. 本地连接状态 属性按钮消失 解决过程(DCOM配置问题)(原创*转载留名)
  5. postek二次开发_20190626_二次开发BarTender打印机_C#代码_一边读取TID_一边打印_打印机POSTEK...
  6. NameError: name 'words' is not defined
  7. linux测试内网速度慢,shell多线程快速检测内网ip是否存活
  8. 基于MFC和OpenCV的摄像机定标与立体匹配测试程序
  9. IE8兼容placeholder
  10. java工厂模式_java工厂模式
  11. ajax爬取微博,自动滚屏抓取新浪微博
  12. libiconv android编译,NDK编译经常使用开源库-libiconv
  13. matlab做叠加定理仿真,实验一 仿真软件的使用与叠加原理的验证
  14. 第一次结对作业:原型设计
  15. Kafka报错:Couldn't find leaders for Set
  16. 提升方法AdaBoost你真的懂吗
  17. cf1102F. Elongated Matrix(状压dp)
  18. Bable的快速入门
  19. 【CTF WriteUp】UTCTF 2020部分题解
  20. -D指定db登陆失败ERROR 1044 (42000): Access denied for user ‘lzldb‘@‘%‘ to database ‘lzldb‘

热门文章

  1. 重启数据库服务器后数据库无法连接的解决方法
  2. 如何高效Debug(又名如何高效解决问题)
  3. 【微信小程序】一文读懂,数据请求
  4. 如何在TIA 博途中计算终端设备(例如水泵)的运行时间(附FB库文件)?
  5. 阿里P8、P9税后180W及以上到底是什么水平?
  6. 搭建文字转语音(TTS)服务器
  7. ArcGIS 保存后在另一台电脑上打开显示无数据的问题
  8. dbms_aw.eval_number
  9. php流媒体技术srs,基于SRS开源直播系统设计与实现.doc
  10. 部分常用simulink 模块对应中文翻译