交流Q群1064240775

一、概述

  近期很多小伙伴抱怨没有一个可以做逐笔回测的平台,那我就想能不能自己来做这个逐笔回测,但是现有平台呢逐笔的历史数据很少,最多只有3天的(极星),那么能不能自己存历史数据呢?当然是可以的,这就是本篇要分享的思路。

  所有实现都基于极星量化平台。

二、问题与分析

  1、如何获取tick数据

  极星量化里可以订阅tick级的历史数据,但是最多只有3天,所以有两条路子。

  A:开实时行情,一边收一边存

  B:每天取前一天的历史tick数据

  这不用说都知道肯定是B更合适对吧,好处有几点,不用运行很多的策略来收实时行情,不用担心盘中收到错误数据还得盘后去修改。所以我们的做法可以是,每天订阅合约的历史TICK,读完存完一个合约就换下一个合约,不停切换合约直到读完。

  2、如何拿到所有合约编码

  有了基本思路后,怎么拿到全部的合约编码又成了一个问题,合约比较多啊,不可能自己一个个去输入吧,好在经过我大胆假设小心求证,发现原来自选合约会存到文件的。

  不过一共只能到自选5,每个自选页面支持999个合约,一共是5个自选页面,那么就是5*999 = 4995个合约,如果要更多的话就需要再开一个客户端了。

  除了合约数量受限,你还得维护自选合约的内容,比如有了新合约你得更新,老合约得删除,是个苦差事(如果你合约量大的话)。

  3、如何自动执行历史行情的获取和存储

  前面我们从自选合约中读到了合约号,还能读tick的历史合约,那怎么自动循环去执行这个行情的存取呢。

  极星里面一次只能订阅10个合约,我们可以简单实现每启动一次策略就替换订阅的合约,但是不可能手动去点几千次吧?

  还好我眼尖发现了ReloadStrategy()函数,可以在策略里重启策略。

  

  那现在就简单了,订阅合约->存取历史数据->重启策略,完美。还可以做成每日全自动运行,简直太完美。

三、实现

  大概思路是下面这样,具体实现就篇幅有限了。

  

  得到的结果如下图所示的文件:

  

  像这样存起来肯定是很占地方的,下一节我再思考下如何省空间存储的问题

TICK回测研究一,每日批量获取行情相关推荐

  1. TICK回测研究三,数据获取部分完整的方案和实现

    交流Q群1064240775 一.概述 前面分别研究了自动获取历史的tick数据和压缩存储,接下来就是怎么实现整个全自动的流程,同时要考虑要用的时候该怎么办. 二.全自动的数据存取方案 1.已实现的功 ...

  2. 开源分布式量化交易系统——回测系统(一)

    回测系统 基础概念 在开始编写策略系统之前,需要了解一些基础概念,搞明白什么是回测系统?怎么进行回测?如何进行回测分析?并且在回测中需要注意的一些要素,真正的做到有效的策略回测. 根据回测的精度可分为 ...

  3. 期权回测框架设计思路

    期权回测,博主已经研究了很长时间,也接触了不少平台,如真格,以及这位博主提供的思路(https://blog.csdn.net/luoqingyong/article/details/10752393 ...

  4. python 股票回测书籍推荐_python实现马丁策略回测3000只股票

    python实现马丁策略回测3000只股票 批量爬取股票数据 这里爬取数据继续使用tushare,根据股票代码来遍历,因为爬取数据需要一定时间,不妨使用多线程来爬取,这里要注意tushare规定每分钟 ...

  5. Python量化投资——投资组合的评价和可视化(下):使用Matplotlib生成专业的投资回测数据可视化仪表盘【源码+详解】

    使用Matplotlib生成专业的数据可视化仪表盘(下篇) 投资结果的可视化(下篇) 图表的布局规划及格式设定 图表布局 格式设定 表头和回测结果摘要信息 表1:绘制收益率曲线图 1,绘制投资收益率以 ...

  6. backtrader回测框架实例

    backtrader是基于Python的量化回测框架,功能丰富,操作方便.其优点是运行速度快,支持pandas的矢量运算:内置多种技术指标计算,还支持股票分析技术指标库talib:支持参数自动寻优运算 ...

  7. 量化回测:如何规避陷阱及评价策略?

    任何事情都应该使其尽可能地简单,直到无法再简单为止.--爱因斯坦. 1.引言 量化交易最大的特点是有明确的交易策略并具备可回测性(Backtest) 交易策略必须包含明确的规则,如买卖信号.加减仓条件 ...

  8. 50-50的定投策略回测

    50-50策略 (1)把你准备用于投资的钱,50%定投给风险资产:指数基金(比如300ETF等),50%定投给低风险的固定收益产品(货币基金或者债券). (2)每隔固定的一段时间,对投资的资产进行一次 ...

  9. matlab alpha策略,如何用Matlab建立策略回测系统?

    一,准备工具 matlab,windmatlab量化接口,Internet网络连接. wind量化接口可以从 大奖章网站-->开放接口-->个人版  处下载,根据提示进行操作,十几分钟内就 ...

最新文章

  1. 教你如何运用python实现学生信息管理系统
  2. 联想e480一键恢复小孔_圆满收官,联想发布数款超智能电脑及平板产品
  3. 大名鼎鼎的红黑树,你get了么?2-3树 绝对平衡 右旋转 左旋转 颜色反转
  4. 可怕!那些你看不到的进程
  5. Mac查看Android动态库依赖
  6. C# 入门之 Hello World
  7. R语言观察日志(part9)--RMarkdown之输出格式
  8. 15.01.29-MVC中用Areas分解项目
  9. CentOS 下无线网卡的安装和使用
  10. 修改PostgreSQL数据库的默认用户postgres的密码
  11. 安装Centos7操作系统教程
  12. Meshlab模型对齐
  13. 简述搭建android开发环境的一般过程,Android开发环境搭建过程图文详解
  14. Mac 双系统之windows坏了咋办
  15. 简单正则^(?![^a-zA-Z]+$)(?!\D+$)[0-9a-zA-Z]{6,35}$
  16. ubuntu自带Firefox安装flash插件
  17. 利用JavaScript实现不同时间 显示不同问候语
  18. 楚留香手游服务器维护,楚留香手游3月1日更新全职业调整一览 6门派职业调整汇总...
  19. C#List子类转List父类或者Obj对象转List
  20. 最近Flash页面无法访问的问题解决方法

热门文章

  1. 达梦数据库课程干货分享LIKE、REGEXP_LIKE、INSTR的正确打开方式
  2. HBuilderX模版下载失败
  3. 华为OD机试真题 JS 实现【检测热点字符】【2023 Q1 | 100分】
  4. 【9】了解淘宝sdk引入布局模块
  5. [益智]:烧一根不均匀的绳子需要一个小时,如何用它来判断一小时15分?
  6. 一个软件外包老鸟对外包业的反思
  7. negative和passive的反义词_negative的反义词是哪个?
  8. 隐藏隧道通信:HTTP/HTTPS 代理转发
  9. 有哪些适合年轻人的挣钱项目
  10. 项目调研 | Loopring研究报告