【历史文档】算子-交易函数
由polll创建,最终由small_q 被浏览 1168 用户
{{use_style}}
更新
本文内容对应旧版平台与旧版资源,其内容不再适合最新版平台,请查看新版平台的使用说明
新版量化开发IDE(AIStudio):
https://bigquant.com/wiki/doc/aistudio-aiide-NzAjgKapzW
新版模版策略:
https://bigquant.com/wiki/doc/demos-ecdRvuM1TU
新版数据平台:
https://bigquant.com/data/home
https://bigquant.com/wiki/doc/dai-PLSbc1SbZX
新版表达式算子:
https://bigquant.com/wiki/doc/dai-sql-Rceb2JQBdS
新版因子平台:
https://bigquant.com/wiki/doc/bigalpha-EOVmVtJMS5
\
按排序买入
根据排序买入。排序数据从 context.options['data'] 读取。 总买入资金由 context.curr_data['buy_target_percent'] 确定:None表示跳过,cash
表名:trade_func_buy_by_rank.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
输入参数 | 权重模式 | mode | choice | 权重模式,等权重:等权重购买;对数权重:1/log2(position+bias);倒数权重:1/(position+bias) | 对数权重 |
bias | bias | float | bias,权重参数 bias | 2 | |
股票数量 | stock_count | int | 股票数量,买入股票数量 | 5 | |
单位对齐 | unit | int | 单位对齐,例如100表示整百股(A股的1手)下单,0表示不限制 | 0 | |
每只股票最大仓位 | max_position_per_instrument | float | 每只股票最大仓位 | 0.1 | |
输出端 | 函数 | functions | 通用 | 函数 |
在第一天买入
只在第一天买入指定的股票
表名:trade_func_buy_on_first_trading_day.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
输入参数 | 买入证券代码 | instruments | str | 买入证券代码,多个代码用英文逗号分隔 | *必填 |
仓位比例 | positions | str | 仓位比例,多个比例用英文逗号分隔,其和不能超过1 | 1 | |
输出端 | 函数 | functions | 通用 | 函数 |
自定义买入
用户自定义买入函数
表名:trade_func_customized_buy.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
input_1 | input_1 | 通用 | input_1 | None | |
input_2 | input_2 | 通用 | input_2 | None | |
输入参数 | 买入函数 | func | code | 买入函数 | [默认代码](javascript:void(0);) |
param_1 | param_1 | str | param_1 | ||
param_2 | param_2 | str | param_2 | ||
param_3 | param_3 | str | param_3 | ||
输出端 | 函数 | functions | 通用 | 函数 |
自定义卖出
用户自定义卖出函数
表名:trade_func_customized_sell.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
input_1 | input_1 | 通用 | input_1 | None | |
input_2 | input_2 | 通用 | input_2 | None | |
输入参数 | 卖出函数 | func | code | 卖出函数 | [默认代码](javascript:void(0);) |
param_1 | param_1 | str | param_1 | ||
param_2 | param_2 | str | param_2 | ||
param_3 | param_3 | str | param_3 | ||
输出端 | 函数 | functions | 通用 | 函数 |
平衡对冲仓位
根据给定的证券代码,对冲其他证券持仓
表名:trade_func_rebalance_hedge.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
输入参数 | 用于对冲的证券代码 | instruments | str | 用于对冲的证券代码,多个代码用英文逗号分隔 | *必填 |
仓位比例 | positions | str | 仓位比例,相对于多头持仓价值,多个比例用英文逗号分隔 | 1 | |
输出端 | 函数 | functions | 通用 | 函数 |
调仓管理
调仓周期。 输出:context.curr_data['buy_target_percent']和context.curr_data['sell_target_percent']
表名:trade_func_rebalance_manage.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
输入参数 | 模式 | mode | choice | 模式,滚动:每天调仓,在给定周期轮完成一轮;固定:每给定周期的一天完成调仓 | 滚动 |
周期 | period | int | 周期,调仓周期 | 5 | |
输出端 | 函数 | functions | 通用 | 函数 |
卖出全部持仓
每次调仓,平掉当前已有持仓。此模块会忽略 context.curr_data['sell_target_percent']。
表名:trade_func_sell_all_positions.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
输出端 | 函数 | functions | 通用 | 函数 |
按持仓时间卖出
每次调仓,卖出持有时间超过指定日期的证券。一般用于固定时间持仓策略。
表名:trade_func_sell_by_hold_days.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
输入参数 | 持仓时间 | hold_days | int | 持仓时间,卖出持有超过此天数(>=)的证券,0表示使用调仓周期 | 0 |
输出端 | 函数 | functions | 通用 | 函数 |
按排序卖出
根据排序卖出。排序数据从 context.options['data'] 读取。 总买入资金由 context.curr_data['sell_target_percent'] 确定:None表示跳过,cash
表名:trade_func_sell_by_rank.v1
类别 | 显示名称 | 名称 | 类型 | 描述 | 必填/默认 |
---|---|---|---|---|---|
输入端 | 前置处理函数 | input_functions | 通用 | 前置处理函数 | None |
输出端 | 函数 | functions | 通用 | 函数 |
\