BigQuant使用文档

◆快速入门

由jliang创建,最终由jliang 被浏览 3408 用户

BigQuant 开始使用

BigQuant 导航

快速创建一个量化策略

  1. 登录 BigQuant,进入 编写策略

    \

  2. 创建策略:点击左侧栏 AIStudio新建策略 +,点击 可视化线性策略,然后输入策略名(本文用 quant101 为例),Enter

    \

  3. 查看策略:策略会创建并打开,在左侧资源管理器可以看到刚才创建的策略文件

    \

  4. 运行策略:点击右上角 全部运行,运行策略文件全部内容,滑动到页面底部,可以看到策略运行输出和结果

    \

  5. 开始模拟交易:点击右上角 提交模拟,确定

    \

  6. 查看模拟交易任务,点击左侧栏 任务管理,点击刚才创建的模拟交易任务

    \

  7. 查看交易信号和绩效详情,进入 我的交易 查看

    \

  8. 在微信里接收交易信号推送,模拟交易信号产生后会自动推送到微信。如果没有收到微信信号推送,请进入 我的交易,确认模拟交易更新通知里的微信是开启的(点击微信图标开启)。

快速创建一个AI量化策略

和开发一个上述开发一个传统量化策略流程一样,开发一个AI量化策略在BigQuant平台也非常简单:

  1. 登录 BigQuant > 进入 编写策略 > 新建策略 + > 点击 可视化AI策略 > 输入策略名(本文用 ai101 为例),Enter 创建策略并打开,得到如下使用 StockRanker 算法的AI策略

    \

  2. 【可选、推荐】升级计算资源:底部状态栏 > 点击 资源 K0(1C/6G) > 选择 K2 (4C/16G,资源越大,计算越快)\nAI策略基于算法使用大数据和大算力训练投资预测模型。模型越复杂(比如 StockRanker算法的 树的数量 越大)、数据越大(比如数据时间周期越长、数据因子越多),计算耗时越长,需要数分钟、甚至数小时、数天才能完成训练。通过提升计算资源,可以显著加快训练速度,降低等待时间。用户注册后,平台会送宽币,可用于升级资源。

    \

  3. 运行 > 查看预测效果和回测结果。这里耗时可能较长(可能需要数分钟),可以在页面上看到实时的训练过程和日志

    \

  4. 提交模拟交易、每天接收微信推送信号通知,和前述一样

开发策略逻辑

理解可视化策略开发,根据自己的逻辑实现策略。

  1. 打开前面创建的 quant101 策略或者新建一个策略 (新建策略 > 可视化线性策略),通过可视化方式可以快速看到这个策略的工作流

    1. 定义选股逻辑
    2. 抽取和计算数据
    3. 回测验证效果

    \

  2. m1 输入特征 (其中 m1 是模块在策略中的id,这个是自动生成的) 用于定义选股逻辑,点击此模块,在 属性 > 参数 特征(SQL) 里看到他的逻辑实现,使用 DAI SQL 实现

    将这里SQL替换如下:

    -- 使用DAI SQL获取数据,构建因子等,如下是一个例子作为参考
    -- DAI SQL 语法: https://bigquant.com/wiki/doc/dai-PLSbc1SbZX#h-sql%E5%85%A5%E9%97%A8%E6%95%99%E7%A8%8B
    
    SELECT
        -- 【在这里输入因子表达式】
        -- DAI SQL 算子/函数: https://bigquant.com/wiki/doc/dai-PLSbc1SbZX#h-%E5%87%BD%E6%95%B0
        -- 数据&字段: 数据文档 https://bigquant.com/data/home
        -- 使用在时间截面的total_market_cap排名、五日日均成交量m_avg(amount_0, 5)作为本模版的两个因子
        -- 这里使用了DAI提供的c_normalize函数对因子进行z-score标准化处理以在多因子线性合成时不被量纲影响
        -- 还可以增加系数调节因子权重,这里对两个因子简单地添加了0.4、0,6的系数,在这个示例中没有经济学意义
        -- 另外可以使用DAI提供的cut_outliers函数去极值,c_indneutralize、c_neutralize函数进行行业、行业市值中性化
        0.4 * c_normalize(total_market_cap) + 0.6 * c_normalize(m_avg(turn, 5)) AS score,
    
        -- 日期,这是每个股票每天的数据
        date,
        -- 股票代码,代表每一支股票
        instrument
    -- 预计算因子和数据 cn_stock_factors https://bigquant.com/data/datasources/cn_stock_factors
    FROM cn_stock_factors
    
    -- where 数据过滤
    WHERE
       st_status = 0
       AND total_market_cap BETWEEN 1000000000 AND 4000000000
    
    -- QUALIFY 数据过滤,支持过滤窗口函数,在 WHERE 之后才执行窗口函数。这里简化了一下,都放到QUALIFY了。对于专业用户建议分开WHERE和QUALIFY,有更好的升性能和准确性
    QUALIFY
        -- 剔除ST股票
        st_status = 0
        -- 上市天数 > 270, 过滤掉新股
        AND list_days > 270
        -- 要求 pe > 0,-- 表示注释
        -- AND pe_ttm > 0
        -- 非停牌股
        AND suspended = 0
        -- 不属于北交所
        AND list_sector < 4
        -- 去掉有空值的行
        AND COLUMNS(*) IS NOT NULL
      
    
    -- 按因子值排名,从小到大
    ORDER BY date, score
    

    其中修改了

    1. 排序 score:0.4 * c_normalize(total_market_cap) + 0.6 * c_normalize(m_avg(turn, 5)) AS score,并每天按score从小到达排序 ORDER BY date, score
    2. 过滤条件:添加市值要求在10亿到40亿之间:AND total_market_cap BETWEEN 1000000000 AND 4000000000

    \

  3. m2 数据抽取 根据m1输出的选股逻辑做数据计算和抽取:修改结束日期为 2024-02-08,以查看最近运行效果。主要参数说明:

    1. 数据开始日期和结束日期
    2. 向前取 90 天数据:有的SQL算子可能用到更早日期数据,比如 m_avg(turn, 5) 计算当日的5日换手率均值,需要用到过去5日的数据,所以多向前看一些数据
    3. 绑定交易日:选中后,在模拟交易模式下,这个参数将使用实际交易日

    \

  4. m4 BigTrader 根据数据做回测,默认逻辑是每天买入排序最小的10(target_hold_count = 10)只股票,每天(holding_days = 1)换仓。\n点击模块,修改参数:

    1. 初始资金改为 10000000
    2. 修改持有股票数量为20和调仓周期为5天
    3. 基准修改为 000852.SH 中证1000

    在日线策略(参数数据频率daily),主要交易逻辑见代码见 K线处理函数

    \

  5. 运行策略,查看回测效果,效果有所提升,也看到最近两个月市场特殊行情运行结果

开发AI策略因子

使用数据、公式/算子实现自己的因子并用于AI策略中。

  1. 预测目标
  2. 因子(特征):量化的因子/特征工程
  3. 训练数据
  4. 预测数据
  5. 训练
  6. 预测
  7. BigTrader (m7)

BigQuant平台

BigQuant是一站式量化策略开发AI平台和社区。在前述的几个快速开发例子中可以看到,BigQuant提供的可视化AI开发IDE (AIStudio),让投资者可以更简单、更快速的用上量化和AI。同时BigQuant 策略开发环境完全支持 VSCode 代码开发、调试、终端等能力,可视化模式和代码模式可无缝切换,支持多种开发语言、量化框架等。

可视化策略通过模块和连接组合来定义策略工作流

  1. 模块:模块是可视化开发的基本单元,同一个模块可以有不同版本。点击模块,可以设置模块运行参数。平台已支持 1000+ 各种功能的模块
  2. 模块连接:通过连线,将上一个模块的输出作为下一个模块的输入

通过这样的工作流,平台可以实现高效的向量化计算,在海量数据和负责逻辑情况下可以提供数量级的性能提升


BigQuant是一站式量化策略开发AI平台和社区:

  • 数据
  • 因子
  • 策略开发和回测
  • 部署模拟交易,云端托管
  • 部署实盘交易
    • 云端
    • 本地
  • 学院
  • 知识库

\

标签

AIStudio量化策略
{link}