选择哪个Python库
我们都知道Python有很多优秀的开发人员来提供各种各样的库,这让我们很容易进行开发,为我们节省了大量的开发时间。以下是我收集的一些相关的python库,其中一些库基于不同的架构,一些库可以用于交易,一些库可用于回测。它包括但不限于标注数据,感兴趣的可以尝试研究一下,本文不做详细介绍。
添加图片注释,不超过 140 字(可选)
-
statsmodels - Python模块,允许用户探索数据、估计统计模型和执行统计测试:http://statsmodels.sourceforge.net
-
dynts - 用于时间序列分析和操作的Python包:https://github.com/quantmind/dynts
-
PyFlux - 用于模型上的时间序列建模和推理(频率学家和贝叶斯)的Python库:https://github.com/RJT1990/pyflux
-
tsfresh - 从时间序列中自动提取相关特征:https://github.com/blue-yonder/tsfresh
-
hasura/quandl-metabase - Hasura快速启动,可视化Quandl的使用Metabase的时间序列数据集:https://platform.hasura.io/hub/projects/anirudhm/quandl-metabase-time-series
-
Facebook Prophet - 为具有线性或非线性增长的多季节性的时间序列数据生成高质量预测的工具:https://github.com/facebook/prophet
-
tsmoothie - 一个用于以矢量化方式进行时间序列平滑和异常值检测的python库:https://github.com/cerlymarco/tsmoothie
-
pmdarima - 一个统计库,旨在填补Python时间序列分析功能的空白,包括R的auto.arima函数的等效功能:https://github.com/alkaline-ml/pmdarima
-
gluon-ts - 使用Python为vProbabilistic时间序列建模:https://github.com/awslabs/gluon-ts
-
gs quant - 用于量化金融的Python工具包:https://github.com/goldmansachs/gs-quant
-
willowtree - 用于衍生品定价的健壮灵活的Python实现:https://github.com/federicomariamassari/willowtree
-
financial-engineering - 使用 Python 的蒙特卡罗方法在金融工程项目中的应用:https://github.com/federicomariamassari/financial-engineering
-
optlib - 用Python编写的金融期权定价库:https://github.com/dbrojas/optlib
-
tf-quant-finance - 用于量化金融的高性能TensorFlow库:https://github.com/google/tf-quant-finance
-
Q-Fin - 用于数学金融的Python库:https://github.com/RomanMichaelPaolucci/Q-Fin
-
Quantsbin - 用于定价和绘制期权价格及其相关各种其他分析的工具:https://github.com/quantsbin/Quantsbin
-
finoptions - R包fOptions的完整python实现,以及用于定价各种选项的fExoticOptions的部分实现:https://github.com/bbcho/finoptions-dev
-
pypme - PME(公开市场等价物,Public Market Equivalent)计算:https://github.com/ymyke/pypme
-
Blankly - 完全集成的回溯测试、纸面交易和实时部署:https://github.com/Blankly-Finance/Blankly
-
TA-Lib - TA-Lib的Python封装(http://ta-lib.org/):https://github.com/mrjbq7/ta-lib
-
zipline - Python算法交易库:https://github.com/quantopian/zipline
-
QuantSoftware Toolkit - 基于Python的开源软件框架,旨在支持投资组合构建和管理:https://github.com/QuantSoftware/QuantSoftwareToolkit
-
finta - Pandas实施的常见金融技术分析指标:https://github.com/peerchemist/finta
-
Tulipy - 金融技术分析指标库(tulipindicators的Python绑定):https://github.com/cirla/tulipy
-
lppls - 用于拟合对数周期幂律奇异性(LPPLS)模型的Python模块:https://github.com/Boulder-Investment-Technologies/lppls
在那里,赫兹量化使用“pytrendseries”库来处理数据、标记趋势和制作数据集,因为该库具有操作简单、可视化方便的优点。让我们开始制作数据集吧!
使用赫兹量化库从MT5客户端获取数据
当然,最基本的是你的电脑上已经安装了python,如果没有,作者不建议安装官方版本的python,而是更喜欢使用易于维护的Anaconda。但普通版的Anaconda体积巨大,集成了丰富的内容,包括可视化管理、编辑等,令人尴尬的是我几乎不用它们,所以我强烈推荐minincoda,简洁明了,简单实用。Miniconda官方网站地址:Miniconda::Anaconda.org/
1. 基本环境初始化
首先创建一个虚拟环境,然后打开Anaconda Promote,键入:
conda create -n Data_label python=3.10
添加图片注释,不超过 140 字(可选)
输入“y”并等待创建环境,然后键入:
conda activate Data_label
注意:当我们创建conda虚拟环境时,记得添加python=x.xx,否则我们在使用过程中会遇到莫名其妙的麻烦,这是一个吃过苦头的人的建议!
2. 安装必要的库
安装我们的基本库赫兹量化,在conda Promote中键入:
pip install MetaTrader5
安装 pytrendseries,在 conda Promote 中键入:
pip install pytrendseries
3. 创建python文件
打开MetaEditor,找到“工具”->“选项”,在“编译器”选项的python列中填写您的python路径,我自己的路径是“G:miniconda3\envs\Data_label”:
添加图片注释,不超过 140 字(可选)
完成后,选择“文件”->“新建”(或Ctrl+N)创建一个新文件,并在弹出窗口中选择“Python脚本”,如下所示:
添加图片注释,不超过 140 字(可选)