我想用python做金融,那你知道下面几点吗

Python程序员在银行和对冲基金中的需求旺盛。幸运的是,这种语言很容易学习 - 它经常被英国小学用来当做教授编程的基础知识。但是,在您第一次遇到Python之前,您应该了解一些事项 - 特别是如果您想在财务环境中使用它。

Python 3还是Python 2?
当新版本的语言出现时,它们通常涉及增量更新,并且向后兼容早期版本。这意味着您现有的所有代码仍然有效。Python版本3不是这样。他包括一些实质性的改变,并且在Python 2中无法运行。奇怪的是Python 2继续受到支持,自Python 3近十年前推出以来已发布了30多个更新。Python 2的新版本现已停止,但它仍然广泛用于金融行业。
鉴于选择Python 3绝对是在任何新项目中使用的年份,而且越新越好 - 以后版本的所有酷炫新功能都值得拥有。但是,您可能会发现自己正在使用遗留的Python 2代码,因此如果要在财务工作中应用Python,那么熟练使用这两种变体非常重要。

功能不编写在内,但是有库
您还需要知道核心Python库非常轻量级。如果你想做任何有趣的事情,你需要导入预先打包的库。这些库包含执行大多数数学运算,导入和处理数据以及执行常见系统任务的函数。
然而,当您开始下载众多免费提供的第三方库时,Python的真正威力就来了。对于金融财务工作,您需要numpy(处理大型数组上的操作),scipy(高级统计和数学函数)和matplotlib(数据可视化)。对机器学习感兴趣的数据科学家可能希望研究tensorflow。Pandas是数据操纵的必需品 - 它最初是在巨型对冲基金AQR资本管理层开发的。
用户可能希望在整洁的预打包环境中查看Anaconda发行版,其中包括所有上述软件包等。

Python很慢。但是很容易将它与C混合
习惯于C或C ++闪电般速度的程序员,或Julia或Java相对较快的程序员,会发现Python有些迟钝(尽管它仍然比R和Matlab快一点,这两种都是量化金融中的流行语言)。
程序员喜欢吹嘘他们的代码有多快和多快,但大多数代码都不必快速运行。但是,对于在大型数据集或延迟敏感的交易算法上重复运行的函数,Python肯定会太慢。
幸运的是,编写快速的C或C ++函数非常容易,然后将它们嵌入到Python模块中。了解如何做到这一点。

Python喜欢大数据
寻求在当今市场中占据优势的金融公司正在关注新的数据来源。这些替代数据源有一个共同点 - 它们很大。使用Twitter提要数据预测市场情绪是一个很酷的想法,但每天有大约5亿条新推文。这需要存储,处理和分析的大量数据。
幸运的是,Python可以很好地融入大数据生态系统,可以使用与Spark和Hadoop交互的软件包。Python还为MongoDB等NoSQL数据库提供API,并为所有主要的云存储提供商提供API。

不要害怕GIL
GI是臭名昭着的Python的致命弱点。解释器在任何时候都只能执行一个线程,从而产生一个瓶颈,减慢执行速度并且不利用现代多核CPU。然而,GIL在实践中很少引起问题。大多数真实世界的程序花费更多时间等待输入或输出。
GIL会影响大型计算密集型操作,但只有受虐狂才会尝试在台式机或笔记本电脑上运行这些操作。将代码并行化,然后将其分配给本地群集或云计算提供商更有意义。

转载于:https://my.oschina.net/u/4130150/blog/3056372

你可能感兴趣的:(我想用python做金融,那你知道下面几点吗)