创建python开发环境

python 安装包

建议直接从官网下载对应的版本(目前咱们使用的版本是python3.11): 下面是windows的下载地址,至少需要win7以上操作系统(应该大部分同学都是)

python下载

https://www.python.org/downloads/windows/

安装过程就不细表了。 值得一提的是,有些做过数据分析同学,可能会建议使用Anaconda。

Anaconda是一个流行的Python数据科学平台,它包括了Python解释器、一套科学计算、数据分析和机器学习库以及管理这些库的工具。Anaconda由Anaconda, Inc.(原Continuum Analytics)开发,旨在简化包管理和部署。

大家建议使用Anaconda的可能的理由是它内置了很多依赖包,并且解决了依赖关系,开箱即用。

我不推荐的Anaconda的几个理由

1、python的开发规范里,向来建议使用虚拟环境venv来隔离不同的应用。 使用anaconda的内置包的原因,默认假设就是把这些包安装在本地环境里。带来的问题就是,你安装新包时,要解决的兼容问题,比使用venv要更多,更复杂。而如果你使用venv的话,那Anaconda最大的便利就没有了。

2、Anaconda安装包很大,动辄好几个G

3、有些包的更新也是滞后的。

有了SDK之后,我们还需要一个开发环境。所有的语言都需要一个好的开发环境(IDE)。 如果你不知道怎么选,我强烈推荐pycharm,社区版本就够多了,免费的。

下载地址是:https://www.jetbrains.com.cn/pycharm/download/?section=windows

默认看到是专业版本,是需要收费的,往下拉有社区版本

社区版本功能是完整且够用的。

有同学想使用vscode的python开发插件。

我的建议是,如果你会折腾能驾驭,你用什么都可以。如果你不了解,建议就是pycharm社区版,会省掉很多不必要的麻烦。

python依赖包安装

pip是python 内置的包安装和管理工具。

在python里使用时,建议在如下位置打开“终端”:

若你当前工程有虚拟环境,它会默认激活虚拟环境,这样你新安装的包都会在虚拟环境里:

解决pip安装速度慢的问题:

加上国内的pip源,可以在搜索引擎上找相应的源:

pip install 包名 -i 源

下面是使用清华的pip源安装numpy最新版本的包的例子:

pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple

如果是使用requirements.txt也是类似:

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

如果不想每次都如此麻烦,我们通常把这个源加到pip的全局配置里。

C:\Users\用户名\pip\pip.ini里输入(如果没有,自行创建一个文件):

[global]

index-url = https://pypi.tuna.tsinghua.edu.cn/simple

配置完成之后,重新打开terminal,默认就是会配置的源中搜索相应的包,速度很快。

jupyter notebook

量化开发的另一个辅助的开发环境是notebook,有了pycharm,为何还需要notebook?

Notebook简介

Jupyter Notebook 是一个交互式的计算环境,它允许用户在网页浏览器中编写和运行代码,并将代码、计算结果、可视化和描述文本组合在一个文档中。以下是使用 Jupyter Notebook 的一些好处:

交互式编程:可以在编写代码的同时立即看到结果,这对于调试和探索数据非常有用。

文档和代码的整合:可以轻松地将文本、方程、图像和代码结合在一起,形成自包含的文档。

易于分享和协作:Jupyter Notebook 文件(.ipynb)可以很容易地在互联网上分享,使得协作和交流更加方便。

可重复性:Jupyter Notebook 允许用户记录和重现整个分析过程,这对于科学研究和数据分析非常重要。

教育和学习:它是一个强大的教育工具,可以用于教学和学习编程、数据分析和机器学习。

数据可视化:Jupyter Notebook 支持多种数据可视化库,如 Matplotlib、Seaborn 和 Plotly,使得数据探索变得直观。

实验和原型开发:它非常适合快速实验和原型开发,因为可以快速迭代和测试想法。

使用 Jupyter Notebook 可以极大地提高编程、数据分析和机器学习的效率,特别是对于那些喜欢交互式学习和工作方式的用户。

当然notebook也有一些缺点:

1、 代码提示功能偏弱。它的代码提示功能肯定与pycharm不可同日而与。

因此不适合在这里封装复杂的函数,而更适合的场景是函数已经封装好,我们尝试各种输入看结果,以及需要把这个结果分享给第三方的场合。

2、 不支持单步debug。它的每一个cell相当于就是单步,我们可以把中间变量打印出来也算是一种调试。因此同样不适合调试一个在开发中的逻辑复杂的函数。

notebook安装

使用pip在虚拟环境里直接安装即可:

pip install jupyter notebook

然后在终端直接运行jupyter notebook

点击链接打开浏览器:

点击任意一个.ipynb笔记本,可以直接看到我的实验过程和结果展示:

notebook直接保留了代码和运行的过程。

小结:

投资最令人着迷也令人“绝望 ”之处在于,它没有圣杯。

但我们还是大有可为。

无论是从战略资产配置,还是战术资产轮动,或者择时,总有人可以找到相应的Alpha。

量化是投资的工具,AI是量化的工具。

用前沿的机器学习来辅助提升交易的胜率和赚钱的概率。

工欲善其事,必先利其器。

我们推荐python开发语言,使用pycharm作为开发工具,同时使用jupyter notebook作为策略开发和展示的辅助工具

有了这些认知和准备,下一节咱们就可以进入量化投资的世界了