数据处理

数据处理在金融领域中占据核心地位,它是将原始数据转化为有价值信息的关键环节。在金融行业,数据不仅是数字的简单堆砌,更是一种洞察力和决策依据的来源。有效的数据处理能够揭示市场趋势、评估投资风险、优化资产配置、提升交易策略,并加强风险管理。在大数据时代,金融机构不仅需要收集和存储海量的数据,更需要通过高级算法和强大的计算能力对这些数据进行清洗、整合、分析和解释。数据处理技术的进步,如人工智能和机器学习,使得金融企业能够更准确地预测未来市场动向,为客户提供个性化服务,以及自动化和优化内部运营。因此,对于金融行业来说,掌握先进的数据处理技术并将其应用于实践,是保持竞争优势和实现持续增长的关键。

【平台使用】模拟交易中使用到CSV文件怎么处理呢

模拟交易中使用到CSV文件怎么处理呢

更新时间:2025-02-15 11:30

【其他】关于中金高频多因子构建的求助

最近读到中金量化多因子系列中提到一些高频因子,比如50分钟K线最高与最低价相关系数平方的均值、成交量最高50根K线成交量收益率动量等等,那么根据分钟行情数据构建出来的话,应该是计算出多行的数据,那么对于我们量化爱好者来说,做因子测试的话是利用这些日内多行的数据吗?还是需要做降频处理到每日只取一行数据?之前听万老师讲课听过一般会对高频因子做降频处理,这样处理数据算力负担不会太大。所以有些疑惑,一、想确认下刚才所讲的这两个高频因子是需要取多行数据还是可以降频处理?二、如果可以做降频处理,那么采用什么方式处理比较好?比如取它们均值还是什么?

更新时间:2025-02-15 11:22

【其他】c_normalize只适用于单表

SELECT
    sf.instrument,
    sf.date as date,
    sf.total_market_cap,

    -- 从技术指标表中选择的字段
    ta.ma_golden,
    ta.ma_long,
    ta.volume_golden,
    ta.volume_long,
    ta.three_red_soldiers,
    ta.hammer,
    ta.morning_star,
    ta.kdj_golden,
    ta.kdj_long,

更新时间:2025-02-15 11:19

【代码报错】换手率的市值中性化怎么sql操作啊

neutralize(sum(turn_0,90), total_market_cap) as hsl, 报错。

更新时间:2025-02-15 11:16

【指标定制】算子转换问题

group_sum(date,where(price_limit_status_03,1,0))/mean(group_sum(date,where(price_limit_status_03,1,0)),180),请问这个算子怎么转成新版的sql

更新时间:2025-02-15 11:02

【代码报错】eft分钟数据没有前一日收盘价

拉取数据显示报错,没有per_close字段

更新时间:2025-02-14 10:48

【平台使用】特征表达式无法抽取数据

https://bigquant.com/codesharev3/0fcad747-50d5-47b1-81ea-c6d9127ccae5

为何在加入了2个特征表达式,什么值都去不到。谢谢各位

更新时间:2025-02-14 09:13

【代码报错】求助:时间会报错

    with t1 as (
    SELECT
        date,
        date_format(date,"%Y-%m-%d") as new_date,
        instrument,
        close,
    FROM
        cn_stock_bar1m
    WHERE
        1 = 1
        AND date >= '2024-03-01'
        AND date <= '2024-03-02'
    )   
    SELECT * FROM t

更新时间:2025-02-14 07:01

【平台使用】数据接口更改为DAI

请工程师帮忙把这个策略改成将数据接口更改为 DAI的,我这个是固定模型的,固定的数据我已做好了,但是还是不知道数据怎么改成DAI的

https://bigquant.com/codeshare/692be05e-a686-4b22-968e-bab70c56d69b

\

更新时间:2025-02-05 02:55

耍单票策略——一字涨停取消卖出

前言

在上一个教程中,我们讲解了如何开发一个AI StockRanker耍单票策略,今天我们在这个策略上做一个细节的调整:一字涨停取消卖出。本文的目的是做成一个教程示例,让大家了解如何在回测引擎里通过日期索引得到当天的因子值。

正文

因为持仓里的票如果是一字涨停,那么继续拿住也说得过去,因此我们加入这样的一个逻辑。

在历史数据回测中,要实现这样的功能,需要提前拿到次日的数据,包括最高价、最低价、收盘涨跌停状态。这几个因子,我们在输入特征列表里抽取出来,因为是次日数据,所以我们使用m_lead算子来抽取:

![](/wiki/api/attachments.redirec

更新时间:2025-01-12 14:41

【代码报错】ArrowInvalid: Object "_6d344565ed5a4f89b31d48b6d65cd0d9" is not found in Bigma

如何获取bigm模块中的内容


m1 = M.input_features_dai.v30(
    input_1=m7.data,
    mode="""表达式""",
    expr="",
    expr_filters="return",
    expr_tables="""cn_stock_prefactors""",
    extra_fields="""date, instrument""",
    order_by="""date, instrument""",
    expr_drop_na=True,
    extract_d

更新时间:2025-01-06 01:57

111

102

# 在有序数组中找到出现最多的元素
def func() :
  num = arr[0]
  cnt = arr1
  maxNum = arr[0]
  maxCnt = 1
  
  for i in arr[1:]:
    if i == num :
      cnt += 1
    else:
      if cnt > maxCnt:
        maxCnt = cnt
        maxNum = num
    
    
  if cnt > maxCnt:
    maxCnt = cnt
    maxNum = num
  

更新时间:2024-12-26 15:11

【平台使用】如何将平台处理后的数据保存到本地?

我在平台进行了数据处理,需要保存到本地运行,如何保存到本地?

更新时间:2024-12-12 01:44

【代码报错】ArrowInvalid: 没有访问 "_337e3530e87a4dc6b0649919ae791200" 的权限

DataSource apply_bdb 修改无权限提示

def fillna_to_zero(df):
    return df.fillna(0)
m3.data.apply_bdb(func=fillna_to_zero, as_type=pd.DataFrame)

:::warning

您可以去社区论坛问答交流板块反馈咨询 去发帖>>

ArrowInvalid Traceback (most recent call last)

Cell In[4], line 3

更新时间:2024-12-10 01:38

【代码报错】Parser Error: syntax error at or near "ORDER"

ORDER BY  报错 帮我看下哪里有问题

import dai


import pandas as pd

# 提取股票数据
stock_sql = """
WITH 
zuori1 AS (
    SELECT 
        cn_stock_bar1d.date, 
        cn_stock_bar1d.instrument,
        close,
        volume,
        volume AS volume_1,
        close AS close_1,
        pe_ttm,
    FRO

更新时间:2024-11-13 03:09

【代码报错】ValueError: Pandas data cast to numpy dtype of object. Check input data with np.asarray(data)

行业中性化

在复现行业中性化的代码报错

## 加载包
import dai
import pandas as pd
import numpy as np
import math
import warnings
from datetime import datetime, timedelta

from bigmodule import M
from bigtrader.finance.commission import PerOrder

niu_date= '2024-11-10'
today = datetime.now().date().strftime(

更新时间:2024-11-13 03:06

【代码报错】IndexError: single positional indexer is out-of-bounds

又出现一个single positional indexer is out-of-bounds

请帮忙处理:

https://bigquant.com/codesharev3/d5e911e4-51e9-4684-a6f5-25cb97efc1dc

\

更新时间:2024-10-28 01:52

【代码报错】ConversionException: Conversion Error: Could not convert string 'Infinity' to INT64

代码报错-Conversion Error: Could not convert string 'Infinity' to INT64

您之前说了是数据里面有inf值,进行处理,替换成0或者nan再进行因子分析,具体怎样修改哪一行代码,我已经剔除了inf,还是不行,能给出具体的操作吗?

https://bigquant.com/codesharev3/3bd6dc8b-8b9e-4207-8d68-fa1d4ce0e162

\

更新时间:2024-10-28 01:42

时间加权净委买比例

数据定义

以下涉及到的流数据暂未开放,后期我们会为大家提供流数据获取服务。

构造这个因子需要用到的数据的表格形式如下:

日期 买一量 卖一量
t1 b1 a1
t2 b2 a2
tn bn an

首先我们求出截面净委买比例:

最后将分钟内的截面净委买比例求平均即可得到时间加权的净委买比例,所以这

更新时间:2024-10-22 07:09

期货现货价差实时因子加工

本文以中证1000的股指期货(IM2503.CFE)与指数(000852.SH)价差为例, 我们来加工股指与期货的价差因子并进行实时可视化操作。以下涉及到的流数据暂未开放,后期我们会为大家提供流数据获取服务。

数据定义

因子构造思路较为简单,我们需要用到期货l1快照数据以及指数快照数据,首先计算快照上的价差,最后将价差用last函数聚合成分钟频的数据。

因子加工代码

首先导入第三方库,并将数据推送至中间表:

import dai
import time
import plotly.graph_objects as go
from IPython

更新时间:2024-10-22 07:08

【代码报错】no data left after dropnan

这个策略之前模拟正常,现在突然报错:no data left after dropnan

1、截图模拟交易报错的页面,配文:报错内容:Exception: no data left after dropnan

2、粘贴策略链接:https://bigquant.com/codesharev3/9be3987e-8535-4b59-860c-18ccd7b6f917



谢谢支持的老师。

更新时间:2024-10-12 09:05

【其他】关于代码策略的几个问题

1、bigtrade的模式和聚宽很大的一个区别就是,策略要用的数据你们是先全部提取好了作为直接输入到回测引擎,这样就可以减少回测引擎每回测一天跑一天数据的麻烦,且再次回测也会有缓存,加快回测效率。我想问的是,我在取数据的时候是取整个回测时间段的,模拟的时候取数是当前的,这两个取数代码的写法肯定不同,不像聚宽,永远取回测日当前时间数据就行,而且我策略要用到的因子数据是需要比较复杂的加工的,有sql,有python,那我提交模拟之后,模拟交易怎么能识别我计算因子的逻辑,然后计算当天的因子值

2.我write_bdb的表是永久有效的么?这个表的存储空间需要付费么?

更新时间:2024-10-10 10:24

【其他】因子分析疑问

1、如果我的因子在sql之外还需要用Python做一些处理,请问提交因子的时候factor_sql 该怎么写?

2、因子分析中是否每个股票每个交易日都要有因子值,我是否可以每个股票只有月末有一个因子,其他时间都是空的。

更新时间:2024-10-10 10:10

【平台使用】如何将从模块抽取的大表格数据单独下载?

老师,请问模块抽取出来的数据是一个大表格,如何才能将下面图示中的M4表格另外下载出来?谢谢

更新时间:2024-10-10 10:03

【平台使用】如何将DAI查询的数据导出为XLS表格?

老师,请问DAI查询出来的数据表太大,如何单独形成一个XLS表格,方便自己进行分析,谢谢

import dai

df = dai.query("""

SELECT

    date, instrument,

    IF(price_limit_status = 3,1,0) AS _zt,

    If(m_sum(_zt,10) = 1,1,0) AS _firstzt,

     open/m_lead(close,-1)-1 AS _jump,

     If(_jump > 0.04,1,0) AS _jumphigh,

     close/ope

更新时间:2024-10-10 09:49

分页第1页第2页第3页第4页第5页
{link}