【StudyQuant Python量化投资课堂系列3】| CCXT开源框架 调用K线数据可能有滞后性【特别注意】

前言

如果你想入门量化,了解更多量化投资知识,欢迎点击加入关注我们的「量化投资博客」,欢迎大家加入。
也欢迎大神交流投资,互相学习。个人VX: 82789754

StudyQuant量化投资学院 计划在未来逐步公开以下内容:

  • 量化投资学院:「Python量化投资教程」中进行详细的介绍,你也可以直接查看我们实时更新
  • Python免费课程 :「零基础Python课程」网易云课堂长期更新

【特别注意】CCXT开源框架 调用K线数据可能有滞后性

ccxt项目介绍

即一个封装了诸多数字货币交易平台的api的开源库。支持python、php、javascrit三种语言,github上可以下载源码。ccxt结构明确,易于使用,所有api被封装成统一格式的接口,返回数据被封装成统一格式的字典,基本省去了api开发时间。

安装 · 使用 · 手册 · 常见问题 · 例子 · 贡献 · 社交

CCXT库是用来连接和与世界各国cryptocurrency / altcoin交流和支付处理服务贸易。它可以快速访问市场数据,用于存储,分析,可视化,指标开发,算法交易,策略回溯测试,机器人编程,网上商店集成和相关软件工程。

它旨在供编码人员,开发人员,技术熟练的交易员,数据科学家和金融分析师用于构建交易算法。

优势

  • 支持许多交易市场,统一API接口

  • 为所有交易所完全实施的公共和私人API

  • 所有货币,山寨币和符号,价格,订单,交易,代码等...

  • 用于交叉交换或跨货币分析和套利的可选标准化数据

  • 开箱即用的统一一体化API非常易于集成

  • 适用于Node 7.6 +,Python 2和3,PHP 5.4+,Web浏览器

缺点

  • 交易所过多, 如果部分交易所接口升级,CCXT不一定能及时更新

  • 数据的处理好处 统一接口,统一返回调用K线的数据

  • 数据的处理缺点 如果数据处理的不当,就会出现一些问题。 比如 CCXT在调用5分钟的数据的时候, 对K线的筛选规则进行了一定的处理。 那么本次测试中,在使用CCXT调用5分钟K线时, 出现了数据滞后的问题。

CCXT调用K线数据滞后性说明

 since = now - limit * 5 * 60 * 1000
df = pd.DataFrame(bitmex.fetch_ohlcv(symbol, timeframe='5m', limit=limit, since=since),
columns=['time', 'open', 'high', 'low', 'close', 'volume'])

如果数据处理的不当,就会出现一些问题。 比如 CCXT在调用5分钟的数据的时候, 对K线的筛选规则进行了一定的处理。 那么本次测试中,在使用CCXT调用5分钟K线时, 出现了数据滞后的问题。比如在同一时间调用5分钟的K线,官方接口给出了最新 6点40分的K线数据, 然而CCXT只给出了 6点35分的K线数据,整整滞后了5分钟, 如果你使用CCXT的这个接口获取K线来跑量化投资策略,那么,如果您使用的是1分钟以上的周期数据(如5分钟)。 那么,请检查调取出来的K线数据最后一根K线是否准确,如果缺少数据,那你用这个接口跑的策略,都会出现信号滞后的现象 这是一个很严重的问题!!**

无图无真相

CCXT 调取K线数据 滞后1根K线

image

BITMEX 官方API 调取K线数据

image

解决方案

修改CCXT接口底层代码

前言

如果你想入门量化,了解更多量化投资知识,欢迎点击加入关注我们的「量化投资博客」,欢迎大家加入。
也欢迎大神交流投资,互相学习。个人VX: 82789754

更多量化学习资源

扫上方二维码,关注公众账号 量化投资学院 ,获取下列免费资源

  • 回复“热点研报”,获取近年热点券商金融工程研究报告

  • 回复“Python3”,获取Python免费学习教程

  • 回复“Python”,获取免费Python量化投资入门课程

你可能感兴趣的:(【StudyQuant Python量化投资课堂系列3】| CCXT开源框架 调用K线数据可能有滞后性【特别注意】)