量化金融策略开源框架:QUANTAXIS
简介: QUANTAXIS量化金融策略框架,是一个面向中小型策略团队的量化分析解决方案,是一个从数据爬取、清洗存储、分析回测、可视化、交易复盘的本地一站式解决方案。
QUANTAXIS量化金融策略框架,是一个面向中小型策略团队的量化分析解决方案,是一个从数据爬取、清洗存储、分析回测、可视化、交易复盘的本地一站式解决方案。 我们通过高度解耦的模块化以及标准化协议,可以快速的实现面向场景的定制化解决方案.QUANTAXIS是一个渐进式的开放式框架,你可以根据自己的需要,引入自己的数据,分析方案,可视化过程等,也可以通过RESTful接口,快速实现多人局域网/广域网内的协作。
1.功能
1.1 行情服务
1.1.1 股票/期货/期权/美股/外汇/宏观的历史/实时行情(日线/分钟线/tick/实时五档)服务
例:最新交易价格
QA.QA_util_log_info(
'最后一次交易价格'
)
QA.QA_util_log_info(
'参数为列表'
)
data=QA.
QAFetch
.
QATdx
.QA_fetch_get_stock_latest([
'000001'
,
'000002'
])
QA.QA_util_log_info(
'参数为一只股票'
)
data=QA.
QAFetch
.
QATdx
.QA_fetch_get_stock_latest(
'000001'
)
1.1.2 财务/基本面/宏观数据
例:现金及现金等价物净增加情况
'154现金的期末余额'
:
'cashEndingBal'
,
'155现金的期初余额'
:
'cashBeginingBal'
,
'156现金等价物的期末余额'
:
'cashEquivalentsEndingBal'
,
'157现金等价物的期初余额'
:
'cashEquivalentsBeginningBal'
,
'158现金及现金等价物净增加额'
:
'netIncreaseOfCashAndCashEquivalents'
,
1.1.3 自定义数据源的数据
例:QUANTAXIS WEB 爬虫
git clone https:
//gitee.com/yutiansut/QUANTAXIS_WEBDRIVER/
1.2 数据运维服务
一键更新,WINDOWS开启自动脚本,数据自动更新
1.3 分析服务
1.3.1 专门为A股股票数据适配的数据结构
例:取多个股票的数据
QA.QA_fetch_stock_day_adv([
'000001'
,
'000002'
],
'2017-01-01'
,
'2017-10-01'
)
In
[
6
]: QA.QA_fetch_stock_day_adv([
'000001'
,
'000002'
],
'2017-01-01'
,
'2017-10-01'
)
Out
[
6
]: QA_DataStruct_Stock_day
with 2
securities
1.3.2 精心为A股指标计算适配的指标类
例:获取某一个时刻的某个股票的某个指标值
inc.get_indicator(
'2018-01-12'
,
'000001'
,
'WR1'
)
WR1
48.148148
Name
: (
2018
-
01
-
12 00
:
00
:
00
,
000001
), dtype: float64
1.4 可扩展事件驱动框架
QUANTAXIS的事件框架是一个多线程架构:
QUANTAXIS/QAENGINE
QAENGINE分三个部分
-
QAEvent
-
QATask
-
QAThread
(可扩展
ProcessEngine
/
AsyncioEngine
)
事件的核心可以简单理解为一个带队列的线程(进程/协程),将事件分类,做成生产者消费者模式,通过队列传递任务
1.5 回测服务
1.5.1 股票/日内t0/ 的日线/分钟线级别回测
例:风险分析模块
R=QA.QA_Risk(ACCOUNT,benchmark_code=
'000300'
,benchmark_type=MARKET_TYPE.INDEX_CN)
#< QA_RISK ANALYSIS ACCOUNT-Acc_50wle3cY >
R()
# R() 是一个datafram形式的表达结果
account_cookie annualize_return max_dropback portfolio_cookie profit time_gap user_cookie volatility
0 Acc_50wle3cY
-
0.000458 0.00012 Portfolio_oAkrKvj9
-
0.000011 6
USER_l1CeBXog
64.696986
R.message
{
'account_cookie'
:
'Acc_50wle3cY'
, 'annualize_return'
: -
0.0004582372482384578
, 'max_dropback'
:
0.00012000168002352033
, 'portfolio_cookie'
:
'Portfolio_oAkrKvj9'
, 'profit'
: -
1.1000154002127616e-05
, 'time_gap'
:
6
, 'user_cookie'
:
'USER_l1CeBXog'
, 'volatility'
:
64.69698601944299
}
1.6 实盘
1.6.1 股票(实盘易) 1.6.2 期货(python3 CTP win/mac/linux)
1.7 网站HTTP服务
1.7.1 网站后台标准化接口
quantaxis 采用前后端分离的模式开发,所以对于后端而言 是一个可以快速替换/语言随意的部分.只需要按照规则设置好REST的url即可
2.安装和部署
2.0 安装说明
2.2 部署式安装
pip install quantaxis -U
2.3 本地代码
git clone https:
//github.com/quantaxis/quantaxis --depth 1
cd quantaxis
pip install -e .
2.4代码提交式安装
fork QUANTAXIS 到你的github账户
git clone https:
//github.com/你的账户名/quantaxis
3.回测Webkit插件概览
4.QUANTAXIS 标准化协议和未来协议
QUANTAXIS-Stardand-Protocol 版本号0.0.8
5.电脑配置推荐
推荐配置: 6代以上CPU+ 16/32GB DDR3/DDR4内存+ 256GB以上SSD硬盘 最低配置: 支持X64位的CPU 因为在存储本地数据的时候,需要存储超过2GB的本地数据,而32位的MONGODB最高只支持2GB左右的数据存储,因此最少需要一个X64位的CPU 如果SSD资源够用,尽量将数据存储在SSD中,增加wiretiger写盘的速度 如果是阿里云/腾讯云的服务器,请在最初的时候 选择64位的操作系统
点击“了解更多”查看GitHub开源地址
量化金融策略开源框架:QUANTAXIS的更多相关文章
- 金融量化分析【day112】:量化交易策略基本框架
摘要 策略编写的基本框架及其实现 回测的含义及其实现 初步学习解决代码错误 周期循环的开始时间 自测与自学 通过前文对量化交易有了一个基本认识之后,我们开始学习做量化交易.毕竟就像学游泳,有些东西讲是 ...
- 目前比较流行的Python量化开源框架汇总(交易+风险分析工具)
注:点击框架名称通往Github talib talib的简称是Technical Analysis Library,主要功能是计算行情数据的技术分析指标 numpy 介绍:一个用python实现的 ...
- Android 开源框架Universal-Image-Loader完全解析(二)--- 图片缓存策略详解
转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/26810303),请尊重他人的辛勤劳动成果,谢谢! 本篇文章 ...
- Android 开源框架Universal-Image-Loader全然解析(二)--- 图片缓存策略具体解释
转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/26810303),请尊重他人的辛勤劳动成果,谢谢! 本篇文章 ...
- Android 开源框架Universal-Image-Loader学习
Android 开源框架Universal-Image-Loader完全解析(一)--- 基本介绍及使用 Android 开源框架Universal-Image-Loader完全解析(二)--- 图片 ...
- Pyhton开源框架(加强版)
info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...
- Python开源框架
info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...
- hibernate 入门([数据访问中间件] 开源框架)
1.内容: hibernate 也是一个经典的[数据访问中间件] 开源框架. 2.hibernate核心组件 SessionFactory[整个数据的操作]重量级组件 ...
- Android 开源框架Universal-Image-Loader完全解析(三)---源代码解读
转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/39057201),请尊重他人的辛勤劳动成果,谢谢! 本篇文章 ...
随机推荐
- java的excel表格的导出与下载
今天做一个java对excel表格的导出和下载的时候,从网络上搜寻了下载的模板,代码如下: 控制层: @RequestMapping(value = "excelOut_identifier ...
- 【jupyter】文件解压
Jupyter使用便捷,但是不能上传文件夹.可以将文件夹压缩,上传后再利用python或者terminal进行解压. windows 可以用python的zipfile包来解压.比如: import ...
- 常用Linux软件安装
JDK 先从Oracle官网下载JDK Linux版本的安装包,上传到服务器,这里推荐在服务器中创建一个目录/software,可以将所有软件的安装包放在这个目录下(或者是/opt目录下),将软件包解 ...
- dockerfile+docker-compose
Dockerfile 一.简介 1.1 dockerfile中常用的命令合集 1.2 docker build 基于dockerfile制作镜像的命令 docker build [OPTIONS] P ...
- java信号量
维基百科解释的信号量概念如下 信号量(英语:semaphore)又称为信号标,是一个同步对象,用于保持在0至指定最大值之间的一个计数值.当线程完成一次对该semaphore对象的等待(wait)时,该 ...
- [C#]AdvPropertyGrid的使用示例(第三方控件:DevComponents.DotNetBar2.dll)
开发环境:Visual Studio 2019 .NET版本:4.5.2 效果如下: 1.初始化界面: 2.属性“人物”-自定义控件显示: 3.属性“地址”-自定义窗体显示: 4.属性“性别”-枚举显 ...
- Flask项目之login提交
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019/11/2 20:53 # @Author : zoulixiang # @Si ...
- CnblogAndroid使用反馈 & PureMan6留言板
我们的话: 您可以在这篇博客下评论您使用CnblogAndroid时遇到的问题和您的意见与建议: 或是留言给PureMan6团队,我们会定期查看并进行回复. 同时,关于app的问题,您也可以在Cnbl ...
- Notepad++使用NppFTP插件编辑linux上的文件
[转载请注明]: 原文出处:https://www.cnblogs.com/jstarseven/p/11351446.html 作者:jstarseven 码字挺辛苦的..... 一.N ...
- Python 2 代码转 Python 3的一些转化
Python 2 代码转 Python 3的一些转化 1.“print X” 更改为“print(X)” 2.xrange改为range 3.m.itervalues() 改为 m.values() ...