BigQuant使用文档

回测API的调用(内测)

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

1.安装SDK(内测中)

联系工作人员申请成功后,将安装文件放到任意一个路径,输入pip install <路径>完成安装

2.bq命令的使用

如需测试,请在终端中测试,将下方指令替换成正确的信息(如自己的账号密码、正确的策略id)然后Enter

2.1 用户登录:

bq login <username> <password> (可选:<current_space>)

举例:

bq login abc123 123456

bq login abc123 123456 00000000-0000-0000-0000-000000000000

2.2采用AK-SK登录

bq login-keypair <AK>.<SK> (可选:<current_space>)

举例:

bq login-keypair abcdabcdabcd.abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefg

bq login-keypair abcdabcdabcd.abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefg 00000000-0000-0000-0000-000000000000

2.3 用户登出

bq logout

2.4用户信息查询

bq whoami

2.5.远程运行python脚本或.ipynb脚本

bq run (可选:-k <kernel-id>) <file_path>

举例:

bq run "tests/test.py"

bq run -k abcd1234 "tests/test.py"

2.6查看我所有运行过的策略信息

bq show mystrategy (可选:<page>) (可选:<size>)

注: page默认为1, size默认为10, 后续涉及page和size的也默认采用此默认值

举例:

bq show mystrategy

bq show mystrategy 2 3

2.7查看AI广场的策略信息

bq show aistrategy (可选:<page>) (可选:<size>)

举例:

bq show aistrategy

bq show aistrategy 1 5

2.8 (常用)根据策略id查看策略下的持仓详情和交易详情的具体信息

bq show id <id> (可选:<page>) (可选:<size>)

bq show id --strategy-id <strategy_id> (可选:<page>) (可选:<size>)

bq show id --account-id <account_id> (可选:<page>) (可选:<size>)

注: 此处的page和size表示持仓详情、交易详情的page和size

举例:

# 使用传统方式(兼容原有用法)

bq show id abcdabcdabcd-1234-5678 3 5

bq show id abcdabcdabcd-1234-5678


# 使用策略ID

bq show id --strategy-id abcdabcdabcd-1234-5678

bq show id --strategy-id abcdabcdabcd-1234-5678 2 10


# 使用账户ID

bq show id --account-id abcdabcdabcd-1234-5678

3.API的使用

导入strategy, user, run:

from bigquant.api import strategy, user, run


如需测试, 请将下方需要的代码注释掉, 换成正确的信息(如自己的账号密码、正确的策略id)然后运行:

3.1用户登录:

user.login(username='<username>', password='<password>', (可选)current_space='<current_space>')

举例:

user.login(username='abc123', password='123456')

user.login(username='abc123', password='123456', current_space='00000000-0000-0000-0000-000000000000')

说明:

如果需要登录的同时查看登录信息, 需要使用变量来接收

例如:

res = user.login(username='abc123', password='123456')

print(res)

3.2 采用AK-SK登录:

user.login(keypair='<AK>.<SK>', (可选)current_space='<current_space>')

举例:

user.login(keypair='abcdabcdabcd.abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefg')

user.login(keypair='abcdabcdabcd.abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefg', current_space='00000000-0000-0000-0000-000000000000')

说明:

如果需要登录的同时查看登录信息, 需要使用变量来接收

例如:

res = user.login(keypair='abcdabcdabcd.abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefg')

print(res)

3.3用户登出:

user.logout()

3.4用户信息查询:

res = user.whoami()

print(res)

3.5远程运行python脚本或.ipynb脚本

run.execute('<file_path>', (可选)'<kernel_id>')

举例:

run.execute('tests/test.py')

run.execute('tests/test.py', 'abcd1234')

3.6查看我的策略信息

res = strategy.get_strategy((可选)<page>, (可选)<size>)

print(res)

举例:

res = strategy.get_strategy()

print(res)

res = strategy.get_strategy(2, 3)

print(res)

\

3.7根据策略id或账户id查看持仓详情

# 使用策略ID查询

res = strategy.get_position(strategy_id='<策略id>', (可选)<page>, (可选)<size>, (可选)df=True/False)

# 或使用账户ID查询

res = strategy.get_position(account_id='<账户id>', (可选)<page>, (可选)<size>, (可选)df=True/False)

print(res)

举例:

# 使用策略ID返回JSON格式

res = strategy.get_position(strategy_id='abcd1234')

print(res)

res = strategy.get_position(strategy_id='abcd1234', page=2, size=5)

print(res)


# 使用账户ID返回JSON格式

res = strategy.get_position(account_id='abcd1234')

print(res)


# 返回DataFrame格式

positions_df = strategy.get_position(strategy_id='abcd1234', df=True)

print(positions_df)

3.8根据策略id或账户id查看交易详情

# 使用策略ID查询

res = strategy.get_order(strategy_id='<策略id>', (可选)<page>, (可选)<size>, (可选)df=True/False)

# 或使用账户ID查询

res = strategy.get_order(account_id='<账户id>', (可选)<page>, (可选)<size>, (可选)df=True/False)

print(res)

举例:

# 使用策略ID返回JSON格式

res = strategy.get_order(strategy_id='abcd1234')

print(res)

res = strategy.get_order(strategy_id='abcd1234', page=2, size=5)

print(res)


# 使用账户ID返回JSON格式

res = strategy.get_order(account_id='abcd1234')

print(res)


# 返回DataFrame格式

orders_df = strategy.get_order(strategy_id='abcd1234', df=True)

print(orders_df)

3.9根据策略id或账户id查看计划交易详情

# 使用策略ID查询

res = strategy.get_planned_order(strategy_id='<策略id>', (可选)trading_day='<yyyy-MM-dd格式的交易日>', (可选)<page>, (可选)<size>, (可选)df=True/False)

# 或使用账户ID查询

res = strategy.get_planned_order(account_id='<账户id>', (可选)trading_day='<yyyy-MM-dd格式的交易日>', (可选)<page>, (可选)<size>, (可选)df=True/False)

print(res)

注: 若不填交易日参数, 则默认显示今天的交易

举例:

# 使用策略ID返回JSON格式

res = strategy.get_planned_order(strategy_id='abcd1234')

print(res)

res = strategy.get_planned_order(strategy_id='abcd1234', trading_day='2025-07-11')

print(res)

res = strategy.get_planned_order(strategy_id='abcd1234', trading_day='2025-07-11', page=2, size=4)

print(res)


# 使用账户ID返回JSON格式

res = strategy.get_planned_order(account_id='abcd1234')

print(res)


# 返回DataFrame格式

planned_orders_df = strategy.get_planned_order(strategy_id='abcd1234', df=True)

print(planned_orders_df)

3.10根据策略id查看绩效数据

    #使用策略ID查询
    res = strategy.get_performance(strategy_id='<策略id>')
    print(res)
举例:
    # 使用策略ID查询
    res = strategy.get_performance(strategy_id='abcd1234')
    print(res)

\

{link}