AIStudio 可视化模块开发
由jliang创建,最终由ydong 被浏览 282 用户
核心概念
BigQuant 是一个集成了数据科学和人工智能技术的量化投资平台,旨在为投资者提供强大的策略开发、回测和优化工具。在 BigQuant 上,用户可以通过可视化策略开发工具轻松创建、测试和优化自己的投资策略。这一过程通常涉及几个关键组成部分,包括可视化策略开发界面、模块以及数据流处理图(DAG)等。
可视化策略开发
BigQuant 的可视化策略开发环境旨在降低编程门槛,使得无论是编程新手还是经验丰富的开发者都能够轻松地开发和测试量化投资策略。通过拖拽和配置预定义的策略模块,用户可以快速搭建策略原型并进行迭代优化。
模块
BigQuant 提供了一系列预定义的模块,这些模块覆盖了数据处理、因子/特征抽取、AI算法模型构建、训练、回测、绩效评估等多个方面。每个模块都封装了特定的功能,用户可以通过配置模块参数来定制策略逻辑。模块化的设计使得策略开发既灵活又高效,同时也便于策略的重用和共享。
同时平台支持用户开发模块来扩展平台功能,本文主要介绍如何开发。
数据流处理图(DAG)
在 BigQuant 的策略开发中,所有的模块都通过数据流处理图(DAG)相互连接。DAG 是一种有向无环图,用于表示模块之间的数据流向和依赖关系。用户可以通过可视化界面构建 DAG,明确地定义数据如何从一个模块流向另一个模块。这种方式不仅使得策略的逻辑更加清晰易懂,也便于发现和修正潜在的逻辑错误。
模块
- 输入
- 输出
- 参数
- 处理逻辑
- run,主体逻辑
- post_run
开发一个模块
进入 BigQuant AIStudio 命令行终端终端开发模块
# 0. 初始化一个模块,名为 hello_module
bq module init hello_module
cd hello_module
# 1. 安装模块到开发路径,在开发里默认安装为 v0 版本
bq module install --dev
# 2. 测试模块
# 在可视化开发模块列表找到对应模块
# 或者通过代码访问(x, y替换为具体的模块名和版本号):
python3 -c "from bigmodule import M; M.hello_module.v0()"
# 3. 测试完成后卸载开发环境模块
bq module uninstall --dev
# 4. 发布模块到模块库,以用于正式使用
bq module publish
# 5. 刷新页面,可以在可视化开发界面看到新的模块
找到更多模块
BigQuant 平台提供 1000+ 模块,并将逐步开源。
开源地址 https://github.com/orgs/BigQuant
模块使用和开发示例
模块开发
进入BigQuant 平台https://bigquant.com 需要登录
登录之后点击编写策略
之后可以使用本平台提供可视化策略文件。
推荐前面两个的可视化策略
按住enter进行文件创建
这个文件的创建路径默认为work路径
也可以自己选择创建的路径 只需要选中文件夹,这里选中的是userlib文件夹,然后重复上面的创建步骤,文件就在该文件夹中了
之后点击我们刚才创建的文件,打开终端
也可以使用快捷方式同时使用“ctrl+·”打开终端
在终端中输入以下命令,其中hello_module_test是我们自己设定的模块名字
bq module init hello_module_test
显示创建成功
可以查看创建的模块代码进行调试
之后需要在终端中进入创建的模块文件夹,并输入命令进行安装
cd hello_module_test #进入创建文件夹
bq module install --dev #在本地环境开发
之后可以在我们刚才创建的可视化文件进行查看,注意需要刷新页面才可以查看
或者可以在该可视化文件中新建一个代码块进行测试
在代码块中输入如下命令 其中hello_module_test是我们创建模块的名称,v0是我们默认的版本
from bigmodule import M
m3 = M.hello_module_test.v0()
如果觉得自己的模块已经很完善,希望更多人使用则可以使用以下命名
# 测试完成后卸载开发环境模块
bq module uninstall --dev
# 发布模块到模块库,以用于正式使用
bq module publish
然后就可以在我们创建的可视化策略查看 同意需要刷新页面也可以新建写代码块进行测试
\
模块使用
从https://github.com/orgs/BigQuant/repositories中克隆自己想要使用的模块 这里以dai_datasource为例点击进去
点击code
点击https里面的复制
进入https://bigquant.com点击编写策略,和上面一样需要登录
点击等待页面初始化
可以和按照上面的方式打开终端
将从github上克隆的命令输入终端,注意需要在前面添加git clone并进入该项目文件夹,
克隆成功之后可以在对应路径下找到文件,当前在work/code路径下
然后打开一个可视化策略
选择一个可视化策略推荐前面两个,这里选的第一个
按enter键,然后进行创建文件
在开发这里就出现了我们前面写的category的列名
然后点击上面的代码
会出现下图
在里面写入
from bigmodule import M
m1 = M.dai_datasource.v0(id="holidays")
m1.data.read()
其中dai_datasource为你在git上克隆的模块名,v0为默认模块版本
其中id为我们自己创建的数据源或者现有的数据源下面为创建数据源链接
https://bigquant.com/wiki/doc/dai-PLSbc1SbZX#h-%E8%BF%9B%E9%98%B6-datasource
如果觉得自己代码在本地测试完毕可以将模块发布到模块库,让更多的人使用以下为上传的命令
注意上传的时候需要删除该模块防止出现问题,需要在该文件路径下的终端中输入如下命令 bq module uninstall --dev 然后输入 bq module publish
之后可以在可视化策略里面的用户路径下找到自己编写的模块
以上就是可视化开发的全部流程。