BigQuant使用文档

BigQuant SDK 使用文档

由small_q创建,最终由small_q 被浏览 7 用户

介绍

BigQuant SDK 提供 Python API 接口,帮助开发量化投资策略和使用 BigQuant:

  • 📊 数据查询:海量金融数据的 SQL 查询接口
  • 📈 模拟交易:策略回测与模拟交易管理
  • 💰 账户管理:交易账户的持仓、订单、资金查询
  • 🔬 回测引擎:高性能本地策略回测
  • ☁️ 云端计算:BigQuant AIStudio 云计算环境
  • 🚀 分布式计算:基于BigQuant FAI 的大规模并行计算

安装

pip install bigquant

支持系统

  • 操作系统:Windows / Linux / macOS
  • Python 3.11(目前仅支持 3.11,将支持更多 Python 版本)

登录

bq --save-auth --aksk apikey

\

数据

# 读

# 写

# 查

\

策略

第一个策略:实现代码

本地回测:python xx.py

云端回测:bq aistudio run -- python xx.py

部署运行

  • 部署模拟交易:bq papertrading deploy xx.py,参数等等(代码编译?bq aistudio run -- xxxx xxx.py, …) or 在界面操作
  • 获取绩效数据和信号等:用代码获取

大规模算力

  • 创建集群
    • 命令行
    • 代码
  • 运行代码
  • 删除集群
    • 手动命令行
    • 代码

更多资料

  • BigQuant SDK 用户使用教程
  • BigQuant SDK 详细文档




如何查询数据?

示例:

from bigquant import dai


data = dai.query("SELECT date, instrument, close, volume FROM cn_stock_bar1d WHERE instrument = '000001.SZ' AND date >= '2024-01-01' LIMIT 5")

print(data)

示例结果:

           date instrument   close      volume

  0  2024-01-02  000001.SZ  10.15   512345678

  1  2024-01-03  000001.SZ  10.28   623456789

  2  2024-01-04  000001.SZ  10.12   434567890

  3  2024-01-05  000001.SZ  10.35   745678901

  4  2024-01-08  000001.SZ  10.42   856789012

直达教程:#


如何获取我的策略?

from bigquant import papertrading


strategies = papertrading.list()

print(strategies)

直达教程:#


如何查看策略绩效?

from bigquant.papertrading import get


strategy = get("your-strategy-id")
perfs = strategy.get_performances()
print(perfs)

直达教程:#


如何进行本地回测?

def initialize(context):
   context.symbol = "000001.SZ"

def handle_data(context, data):
  price = data.current(context.symbol, "close")
  context.order_target_percent(context.symbol, 1.0)
 
result = client.bigtrader.backtest.run(
         start_date="2024-01-01",
         end_date="2024-12-31",
         strategy={
                 "initialize": initialize,
                 "handle_data": handle_data
         },
         capital_base=1000000,
         market="cn_stock",
         frequency="1d"
)
print(result['algorithm_period_return'].iloc[-1])

示例结果:

0.1823

直达教程:#


如何使用云端计算?

from bigquant.aistudio import start


studio = start()  # 自动启动云端环境
# 等待启动...(约 10-30 秒)
result = studio.run("""
    import pandas as pd


    print(f'Pandas version: {pd.__version__}')
    df = pd.DataFrame({'A': \[1, 2, 3\]})
    print(df)
""", is_code=True)

print(result)

studio.close()  # 释放资源

示例结果:

  Pandas version: 2.2.0

     A

  0  1

  1  2

  2  3

直达教程:#


两种调用方式

BigQuant SDK 提供两种等价的调用方式:

  • 方式 1:通过客户端对象(推荐)
import bigquant

client = bigquant.from_config(r“自定义配置路径“)

result = client.dai.query("SELECT * FROM cn_stock_bar1d LIMIT 10")

strategies = client.papertrading.list()

适用场景:多账户、需要显式管理客户端

  • 方式 2:直接使用模块函数(首次认证默认账户)
from bigquant.dai import query

from bigquant.papertrading import list

result = query("SELECT * FROM cn_stock_bar1d LIMIT 10")

strategies = list()

适用场景:单账户、快速开发


1.4 接下来

📚 用户指南

深入了解各个模块的详细用法:

  • Dai 数据查询
  • Papertrading 模拟交易
  • Bigtrader 回测引擎
  • AIStudio 云端计算
  • Fai 分布式计算

🔍 API 参考

查看所有可用的类、方法和参数:

  • API 完整文档

💬 社区

  • https://bigquant.com/community - 提问、分享经验
  • 示例代码库 - 查看更多实战案例

\

标签

模拟交易

文档

BigQuant-SDK API 文档
{link}