可以把tiger_quant
项目导入到本地IDE中(比如Idea),有2种方式导入为maven项目:
mvn clean compile -Dmaven.test.skip=true
等命令执行完成后,即可正常运行项目。
编译完成后,在本地安装mysql数据库,按照 tquant-storage
模块下的 resources/datasource/mysql_table_create.sql
中的sql来创建本地数据库和表
把 tquant-storage
模块下的 resources/datasource/mybatis-config.xml
文件中的数据库连接信息改成本地数据库配置,用户名和密码
配置 tquant-gateway
模块下的 resources/tiger_gateway_setting.json
Tiger OpenAPI 账号信息(参考下方配置说明)
执行tquant-loader
模块下的命令,可以下载历史数据,包括合约,K线,逐笔等数据。
比如BarLoader来举例,项目导入Idea后,需要在Idea启动配置中设置参数:
然后启动 BarLoader 下载K线数据,合约和逐笔数据的下载方法也是类似方式。
以上步骤执行后,可以执行下面的启动命令来运行量化策略程序。
tquant-algorithm
是策略模块,里面包含了部分策略示例
策略编写完成后,可以通过 tquant-backtester
回测模块完成功能回测(会用到K线或逐笔数据,可以通过tquant-loader
模块提前导入),里面有可以直接执行的main方法。如:
com.tquant.backtester.Backtesting.main
,可以参考已实现的示例,需注意下单接口要在回测模块中进行覆盖,否则会导致回测服务启动失败。
策略正式上线时,会通过 tquant-bootstrap
模块中的 com.tquant.bootstrap.TigerQuantBootstrap
来启动,也可以通过IDE方式来启动。
tquant-bootstrap
模块中的 TigerQuantBootstrap 是项目的Main方法入口,负责项目的启动。
用户实现的策略需要继承自AlgoTemplate,同时要提供默认构造方法。 在algorithm/algos文件目录下实现了几个demo策略,可以参考一下。
策略配置文件名:algo_setting.json
, 在 tquant-algorithm
模块resource
目录下。
每个算法文件对应一个配置项,配置项的Key与策略Java文件名称要保持一致。 配置项中必填参数如下:
enable:是否启用该策略。true 启用,false 不启用
class:策略算法对应的文件全路径名
其他参数为自选参数,在策略启动时会自动注册到策略中。
配置实例
{
"BestLimitAlgo": {
"enable": false,
"class":"com.tquant.algorithm.algos.BestLimitAlgo",
"direction": "BUY",
"volume": 100,
"symbol": "00700"
},
"DmaAlgo": {
"enable": false,
"class":"com.tquant.algorithm.algos.DmaAlgo",
"direction": "BUY",
"price": 13.2,
"volume": 100
},
"SpreadAlgo": {
"enable": true,
"class":"com.tquant.algorithm.algos.MacdAlgo",
"symbol": "SPY",
"bars": 100
}
}
全局配置文件名:global_setting.json
, 在tquant-core
模块 resources
目录下。
目前只支持Tiger券商接口,配置文件名:tiger_gateway_setting.json
,在 tquant-gateway
模块 resources
目录下。
下面配置为开发者信息相关,需要先申请开发者账号,注册开发者账号地址:https://www.tigersecurities.com/openapi
tigerId:开发者账号ID
account:开发者交易账号,可以是老虎综合账号或模拟账号。
privateKey:开发者自己生成的RSA私钥
配置实例
{
"gateway": "TigerGateway",
"apiLogEnable": true,
"apiLogPath": "log/",
"tigerId": "2015xxxx",
"account": "20190419163707900",
"privateKey": "MIICeQIBADANBgkqhkiG9w0BAQEFAASCAmMwggJfAgEAAoGBAL7..."
}
指标计算工具,包括常见的上百种指标计算。
使用上遇到任何问题,或有任何建议,欢迎在github上反馈,也欢迎加入官方QQ群:441334668。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。