比赛讨论

数据调用和因子加工

由xuxiaoyin创建,最终由xuxiaoyin 被浏览 10 用户

DAI数据抽取

DAI是BigQuant研发的高性能分布式数据平台,其详细介绍可参考 数据平台/DAI

import dai    # 导入第三方库

# 开始日期和结束日期
start_date = '2023-01-01 09:00:00'
end_date = '2023-02-01 16:00:00'

# 从训练集中取数, 取出2023年1月份的所有个股分钟收盘价(表格的具体字段名称请参考https://bigquant.com/data/datasources/cpt_jyc_2025_stock_csi1000_bar1m)
df = dai.query(
    """
    SELECT date, instrument, close
    FROM cpt_jyc_2025_stock_csi1000_bar1m
    """,
    filters={
        "date": [start_date, end_date],
    },
).df()

DAI算子调用

DAI的所有算子均可在 DAI SQL 函数列表 中查询到, 合理使用DAI算子可为你的程序提速, 这里给大家介绍几个算子使用样例。

样例1: 计算五分钟均线

import dai    # 导入第三方库

# 开始日期和结束日期
start_date = '2023-01-01 09:00:00'
end_date = '2023-02-01 16:00:00'

# 在训练集中加工五分钟均线
df = dai.query(
    """
    SELECT date, instrument, m_avg(close, 5) AS ma_5
    FROM cpt_jyc_2025_stock_csi1000_bar1m
    """,
    filters={
        "date": [start_date, end_date],
    },
).df()

样例2: 计算个股分钟收盘价截面上的排名百分比

import dai    # 导入第三方库

# 开始日期和结束日期
start_date = '2023-01-01 09:00:00'
end_date = '2023-02-01 16:00:00'

# 在训练集中加工五分钟均线
df = dai.query(
    """
    SELECT date, instrument, c_pct_rank(close) AS rank_close
    FROM cpt_jyc_2025_stock_csi1000_bar1m
    """,
    filters={
        "date": [start_date, end_date],
    },
).df()

样例3: 计算个股

\

{link}