最近在研究Crypto量化交易,发现CCXT支持大量主流交易所,应该是将各个交易所的API统一适配CCXT定义的接口,通过CCXT可以同时获取多个交易所多个币对的信息。通过CCXT可以实现很多交易策略的回测+部署一条龙服务,可以说非常强大。
CCXT库支持用JavaScript / Python / PHP / C#等语言进行开发,我是半吊子出身,就用最简单易懂的Python了。CCXT链接:https://github.com/ccxt/ccxt 。
有一定基础的同学学习新代码一般都是从Example直接撸代码的方式开始学习的,当我们从github上下载ccxt API包后,打开Examples能看到多种语言的例子,直接选择py。
但是当你想随便运行一个CCXT的代码,如果你是国内的ip,就算科学了也会出现例如:“Error:RequestTimeOut”,“远程服务器断开连接”,“requests.exceptions.ConnectTimeout”之类的报错。这个问题困扰了我很久,找了许久答问发现CCXT在访问这些交易所API的时候需要本机代理IP:Port。并且,我发现最重要的一点是:不同CCXT访问方式(同步/异步/websocket/socket)设置代理的语句是不一样的,这个细节坑了许多不仔细阅读文档的人。下面开始讲解两个步骤帮你顺利用上CCXT:
1. 寻找本机代理IP