BigQuant使用文档

BigQuant 期货实盘交易文档

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

在本地电脑上运行实盘交易策略时,需要先安装bigquant相关的sdk包,安装完成后就可以将在bigquant aistuio开发高频交易策略原样下载下来,并添加用户自己的账户信息至环境变量就可以开启实盘交易了。sdk使用步骤:

一、安装 bigquant sdk 包

1)先安装 python3.11 x64 环境

2)执行命令:pip install -i https://pypi.bigquant.com/simple/ bigquant -U,该命令会自动安装 bigquant sdk 包及其依赖包

3)关于升级:若是 bigquant 包升级了,则再执行上述命令即可,若是 bigtradercpp(交易引擎包)升级了,则执行命令:bq pkg upgrade

4)独立安装:pip install -i https://pypi.bigquant.com/simple/ bigtradercpp==0.1.8,或者 pip uninstall bigtradercpp

二、策略示例

1)现支持期货 CTP 接口交易,期货公司包括:SimNow,宏源期货主席

2)需要设置的环境变量:

变量名 变量值 说明
BROKER 您开户交易的经纪商名称 现只支持 "SimNow" 和 "宏源期货主席",前者为仿真交易,后者为实盘交易
ACCOUNT_ID 您在经纪商开户的资金账号
ACCOUNT_PASSWORD 资金账号的密码

3)策略示例

import os

from bigquant import bigtrader


# 当实盘时需要设置以下环境变量(回测时不需要)
os.environ["BROKER"] = "宏源期货主席"  # 您要交易的经纪商,还可以是 'SimNow',底层会通过此名字自动匹配支持的经纪商的地址信息
os.environ["ACCOUNT_ID"] = "038313"  # 您在经纪商开户的资金账号
os.environ["ACCOUNT_PASSWORD"] = "123456"  # 您的资金账号密码


def initialize(context: bigtrader.IContext):
    print("initialize")


def before_trading_start(context: bigtrader.IContext, data: bigtrader.IBarData):
    print(f"before_trading_start instruments={context.instruments}") 
    # 订阅行情
    context.subscribe(context.instruments)


def handle_tick(context: bigtrader.IContext, tick: bigtrader.ITickData):
    price = tick.last_price
    instrument = tick.instrument
    print(f"收到tick: {instrument} @ {price}")
    # 可以通过 context 的接口获取资金/持仓,或者报撤单


def handle_order(context: bigtrader.IContext, order: bigtrader.IOrderData):
    print(f"收到order: {order}")


def handle_trade(context: bigtrader.IContext, trade: bigtrader.ITradeData):
    print(f"收到trade: {trade}")


bigtrader.run(
    market=bigtrader.Market.CN_FUTURE,
    frequency=bigtrader.Frequency.TICK,
    instruments=["IF2606.CFE"],
    initialize=initialize,
    before_trading_start=before_trading_start,
    handle_tick=handle_tick,
   handle_order=handle_order,
   handle_trade=handle_trade,
)
 

4)交易引擎接口文档:BigTrader 量化交易引擎(回测)

三、DAI 数据使用

1)若在策略中需要bigquant的DAI数据,则需要在本地中使用 daisdk,使用前需要认证aksk,使用命令:TODO:

四、注意事项

1)建议你的策略在SimNow上充分测试过后再上线实盘,即环境变量 BROKER 设置为 "SimNow" 仿真环境,而不是 "宏源期货主席" 的生产环境

2)实盘策略运行时,建议打开其它终端,如快期,便于做账户监控和及时干预

3)策略运行时,会产生两个日志,一个是 bigtrader python 模块的日志,一个是 bigtrader engine 的日志,默认都在 logs 目录下

{link}