Catalyst是什么
- catalyst是用python编写的加密货币算法交易库,可以用它编写交易策略,并进行日线和分钟线级别的历史数据进行回测。
- catalyst是基于Zipline框架的币圈增强版本
- Catalyst支持加密货币的实盘交易,目前支持四个交易所(Binance、BitFinex、BitTrex和Poloniex),以后还会支持更多交易所。
GitHub:https://github.com/enigmampc/catalyst
官方文档:https://enigma.co/catalyst/index.html
==系统环境:macOS High Sierra 10.13.6==
一. 用conda安装Catalyst
步骤:
-
确保你已经安装了Anaconda或者Miniconda,官网推荐的版本是Python3.6的,下载地址为:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
对应的安装包如下(图片来自网络):
安装好之后用conda list
验证一下是否正确安装 -
下载python3.6-environment.yml(点击Raw进去,然后右键点“Save as”),打开终端cd到文件位置,开始安装:
conda env create -f python3.6-environment.yml
为了避免与conda自带的库造成混乱,上述命令创建了一个虚拟环境来单独存放catalyst需要的库文件
-
激活catalyst环境,注意每次新开一个终端都需要重新激活:
source activate catalyst
激活成功会出现
(catalyst)
标识,如下图:image
然后用catalyst --version
验证一下是否正确安装:
image
Opps,报错了
ModuleNotFoundError: No module named 'numpy.core._multiarray_umath'
应该是numpy的问题,经Google查阅(https://github.com/alpacahq/pylivetrader/issues/73),似乎需要修改一下numpy版本,在python3.6-environment.yml文件中,numpy的版本是1.14.0,我选择了直接升级:pip install --upgrade numpy
再
catalyst --version
就看到catalyst版本号了
image
由于有红色部分的提醒,以后若出现什么问题可以尝试用pip install --upgrade --force-reinstall numpy==版本号
来解决
二. 用pip安装Catalyst
用pip安装很简单,官方推荐安装在virtualenv里:
$ pip install virtualenv
$ virtualenv catalyst-venv
$ source ./catalyst-venv/bin/activate
source的作用是激活虚拟环境(同样是每次新开终端都要执行这一步)
image
然后再执行这步(注意是两个包:enigma-catalyst和matplotlib)
pip install enigma-catalyst matplotlib
同样,装好之后执行catalyst --version
也是会出现上述numpy的问题,参考上面修改numpy的步骤即可
三. Catalyst的升级
官方推荐了先删后装的做法来升级,确保已经激活虚拟环境,然后执行下面命令:
pip uninstall enigma-catalyst
pip install enigma-catalyst
因为这种做法不会改变已经安装的依赖环境。
也可以采取下面的做法升级:
pip install -U enigma-catalyst
但是这样会同时升级所有的依赖库,可能会导致使用Catalyst的过程中报错。