迷途风景 2018-11-19
普华永道会计师事务所(PricewaterhouseCoopers)预测,在未来3-5年内,金融科技公司获得投资金额将超过1500亿美元。金融科技广泛应用于保险、贷款、法规、交易、电子银行和其他支付服务等领域。
Python作为一种编程语言,越来越受到人们的青睐,使用Python及其框架的金融科技创业公司数量不断增加。投资银行和对冲基金行业也在使用Python来解决定价、交易管理和风险管理平台的定量问题。
美国银行前任总经理KiratSingh表示,"摩根大通的每个人都需要了解Python,美国银行约5000名开发人员都在使用Python。Quartz项目有近1000万行Python代码,每天提交次数接近3000次。"
花旗集团也鼓励分析师掌握Python编码技能,而且企业名单还在不断增加。Python简单易用,产品可以快速进入市场,因此更受创业公司青睐。
对于一家新生公司,选择语言或框架和招揽人才、验证简易性、产品生产速度等因素一样重要,但是对其生命周期的影响更大。
以下是一些对金融科技行业有帮助的顶级开源Python库:
PyAlgoTradePyAlgoTrade是一个事件驱动的算法交易Python库,支持Bitstamp回溯测试、实时纸张交易和实时交易。PyAlgoTrade使用Python2.7/3.7开发和测试,与NumPy和SciPy、pytz、用于绘制的matplotlib、用于支持Bitstamp的tornado和用于支持Twitter的tweepy相互依存。
Pyfolio主要涉及金融投资相关的组合风险分析和绩效。该库由Quantopian开发和维护,在2015年实现开源。与Zipline开源回测库兼容性很好。Pyfolio库可用于根据反馈对tearsheets进行建模,进行贝叶斯分析和其他交易。其他功能包括使用pyfolio.plotting和pyfolio.timeseries绘制tearsheets,以调用各个统计函数。
ZiplineZipline是一个使用Python编写的开源算法交易模拟器,可以用于模拟实际延误、交易成本和订单延迟,单独处理每个事件并避免前瞻偏差。Quantopian负责维护Zipop并全天24小时更新zipline。
quanteconquanteconpython库包括游戏理论、马尔可夫链、随机生成实用程序(随机)、很多工具(tools)和其他实用程序(util)模块,供程序包内部的开发人员使用。
finmarketpyfinmarketpy是一个基于Python的库,使用内置模板且简单易用的API可以进行市场和回溯交易策略分析。
该库能够实现一定时期内交易策略的可视化,并针对这些策略的季节性开展调查。用户可以针对所考虑的数据相对应的特定事件开展调查,还可以使用内置计算器评估目标的不稳定性。finmarketpy与Pandas库和NumPy库相互依存。
ffn对量化金融领域人士来说,该库十分有用,能够提供从性能测量和评估到图形和常见的数据转换在内的大量实用程序。
SciPySciPy是基于Python的NumPy扩展构建的数学算法和便利函数的集合。典型用户可以使用SciPy提供的数据库子程序和类来访问高级数据可视化和并行编程。SciPy还包含科学工作所需的其他程序,如数值计算积分、求解微分方程、优化和稀疏矩阵的程序等。
scikit-learn该库的功能非常广泛,超出了本文的范围。该库在业界广为熟知并广泛用于数据预处理、降维、分类和聚类和其他重要任务。
例如,scikit-learn可用于执行区分分析,如LDA和QDA,从多元高斯分布中提取预测变量。
从scikit-learn库导入模块将负责分析。用户只需要提供测试和训练数据完成工作即可。
结语NumPy和Pandas等其他知名库可以提供了各种数据处理和可视化服务,大多数上述库都是基于它们构建的。
许多在金融科技领域大展拳脚的创业公司都或多或少使用了python及其库。例如,英国的P2P借贷公司Zopa使用Flask、Django、RabbitMQ、Pandas和Celery。这家年轻的公司利用技术省去了贷款人和客户之间的中间人,成为了第一家放贷金额超30亿欧元的贷款公司。
企业需要针对市场低效率进行建模并跟踪价格模式或预测回报,这项工作十分麻烦棘手,而上述工具可以展示过程简单化,提高数据可解释性,帮助企业制定能够预测未来的策略,让结果更接近现实。