回测模块

回测模块是金融领域中至关重要的分析工具,通过对历史数据进行模拟交易,量化策略在不同市场环境下的表现。它能够评估投资策略的盈利能力、风险水平及稳定性,帮助投资者优化策略,提高未来实际交易的成功率和风险控制能力。回测模块通过严格的算法和数据分析,为金融决策提供有力支持,是金融专业人士不可或缺的决策辅助工具。

回测模块的benchmark参数怎么设置为某只股票,基金代码?

比如设置为 513100( 纳指ETF)的代码是多少?谢谢

更新时间:2024-02-18 03:19

算到回测模块出问题,这是什么问题,怎么解决?

https://bigquant.com/codeshare/168a21b0-908a-45f2-9a09-97e7ffce37de

\

更新时间:2024-01-18 08:46

为什么出现“Exception: not supported instruments type: ”错误?

这个是自动生成的例子,输出的数据结构给bigtrade模块进行回测,没有出错,可以正常运行。

这个是我写的代码,输出的数据结构给bigtrade模块进行回测,却提示“Exception: not supported instruments type: ”这是为什么?

\

更新时间:2024-01-09 06:08

交易引擎

交易引擎简介

1.1 交易引擎的作用

交易引擎回测模块的功能是实现用户的交易逻辑

  • 当用户将策略编写好之后,我们需要在一段时间当中,用策略逻辑,模拟一下在金融市场中的买卖,通过收益情况判断策略的好坏
  • 如果想测试策略在某段历史时期上的表现,只需在本地运行回测模块即可
  • 如果想测试策略从今天开始一直到未来的表现,需要将含有回测模块的策略提交到模拟交易
  • 在交易引擎中,用户可以自定义一些买卖逻辑,也叫交易逻辑,它和策略逻辑还是有一定区别的

策略逻辑与交易逻辑的对比:

策略逻辑 交易逻辑
使用什么样的数据\n使用什么

更新时间:2023-12-06 01:59

回测模块的高开不买问题

请问如何在回测模块中添加代码,实现每天开盘时计划买入的股票如果高开9%以上,就取消买入的功能?请平台的技术专家给个代码例子,谢谢

更新时间:2023-10-09 07:10

实盘中会不会用盘前处理?

回测模块中盘前处理是可以调用到当日数据的。这个写在回测模块中可以调用当日open判断当日下午交易,这样做并不会产生未来函数。可是实际模拟交易中信号是前一天下午收盘后产生,请问这是程序是否会调用盘前处理功能。

更新时间:2023-10-09 07:08

问题:回测模块相关问题

现在平台的回测模块,显示的数据 ,是扣完 佣金和印花税的数据 ,还是没扣的数据?

比如说,一个策略年化收益测出来 是 1年100% ,这里面扣完 佣金和印花税 可能需要10% , 那我们平常看到回测模块显示的结果 ,是100% ,还是会显示90%?

更新时间:2023-10-09 06:44

关于回测模块中自定义context.zdy参数超参寻优的编写

{w:100}如图,我想对回测模块中的这3个参数进行超参寻优,平台中的超参寻优模块应该怎么编写

更新时间:2023-10-09 06:26

“回测模块“的数据怎么与前面的模块的模块衔接

刚接触BigQuant,很多基础不理解。求高手指点。我做了一个简单的任务,发现最后的回测模块里面的主函数不知道怎么修改。

任务:有一个指定了10只股票的股票池,按照5日收益率return_5升序排列,希望每天调仓,排序前5的股票作为买入列表,卖出不在列表中的股票。

问题:做到最后的“回测模块”,其中的主函数,不知道如何修改,如何获取排序后的结果数据,实现买卖逻辑。看了代码

instruments=m1.data,
options_data=m2.data,
history_ds=m6.sorted_data,
从前面模块获取的数据到了这3个变量,难道从他们可以取出数据?

更新时间:2023-10-09 03:37

实盘中是否会用盘前处理?

回测模块中盘前处理是可以调用到当日数据的。这个写在回测模块中可以调用当日open判断当日下午交易,这样做并不会产生未来函数。可是实际模拟交易中信号是前一天下午收盘后产生,请问这是程序是否会调用盘前处理功能。。。

更新时间:2023-10-09 03:36

盘前数据处理未来函数问题

在回测模块中,例如生成订单日期是1号,实际下单日期是2号。2号的时候是可以调用盘前处理的。盘前处理的时候如果使用data.histroy是可以在盘前就获取当天的开盘和收盘信息的。这个属于未来函数,不过如果下午交易,用上午开盘价是否低开做cancel order判断是ok的。但是问题来了。回测这样操作是可以的,可是如果模拟交易和实盘都是在前一天就生成信号,所以就想问一下这个盘前数据处理是否会在模拟交易和实盘中运行,如果运行取的是哪一天的数据。。。因为回测中2号盘前运行可以取到2号全天数据,这个在现实中明显取不到,当天开盘都是取不到的。。。

所以问题是

那么如果回测模块中布置了盘前数据处理,

更新时间:2023-10-09 03:33

请问回测模块加中入 m_deps=np.random.randn(), 是做什么用的呢?

3. 启动回测

策略回测接口: https://bigquant.com/docs/module_trade.html

m = M.trade.v4( instruments=['510330.HOF'], start_date=start_date, end_date=end_date, initialize=initialize, history_ds = history_ds, before_trading_start=None, handle_data=handle_data, # 买入订单以开盘价成交 order_pric

更新时间:2023-10-09 03:32

关于自定义基准收益曲线的问题

发现Trade (回测/模拟)模块支持的基准收益代码还是比较少的,主要是几个比较大的指数。

但是在做策略回测的时候其实有时候是想比较择时的有效性,真正想对比的可能是股票本身的走势,不知道是否可以自定义某只股票或者行业指数作为基准收益?

更新时间:2023-10-09 03:02

回测模块报错”no module named ‘dai.fuctions‘“

策略在执行回测模块是代码出现报错,求大神解答,多谢!!!

\

更新时间:2023-10-09 02:38

日历效应实现

https://bigquant.com/codeshare/9d324229-34f1-4516-ae55-78e8149adba7

在回测模块我想实现,周四买入股票周一卖出,来做一个基于周内日历效应的策略,请问回测平台中的主函数部分应当如何写代码才能实现我这个需求呢?求大神解答!!!

更新时间:2023-10-09 02:35

回测模块,还有很多评价模块图画不出来

多策略回测,换手率分析等回测模块都显示plot is deprecated, 都画不出来,麻烦工程师们看一下是代码该更新了吗?

更新时间:2023-10-09 02:08

有没有关于context、T、label等的详细介绍

问题

不是很清楚这几个自带的变量都是什么,都有什么?

\

解答

context是用来调用回测模块中对象的,具体可以调用哪些可以参考以下两个文档:

  1. https://bigquant.com/wiki/doc/-spI0guZnrT → HFTrade模块
  2. https://bigquant.com/wiki/doc/fangfa-context-lOnbF8oISJ → Trade模块

T 是平台内部封装的一些方法,常用的是T.plot, T.parallel_map, T.norm这种;

label没太明白是什么

更新时间:2023-06-01 14:26

策略如何在实盘里实现,而不是在回测模块

问题

{w:100}{w:100}

解答

模拟盘也好 实盘也好,和回测运行的是同一个notebook,但仍然会有一些细小的区别:

  1. 模拟盘实盘是每个交易周期都会触发运行初始化函数,而回测只会运行一次初始化函数;
  2. 模拟盘和实盘里,前一日赋值的变量无法保留到下一个交易期,比如在方法里自定义的context.a = 123这种变量,回测里是可以定义一次后在所有交易期均可以调用;而模拟盘和实盘里则不行,只会当天定义的变量当

更新时间:2023-06-01 02:13

怎么在回测模块的主函数中,获取当日的最大策略收益指标?

问题

在回测模块的主函数中,我想要获取截止到当日的策略累计收益,如下语句,怎么报错啊?莫非不是这个参数?

context.perf_tracker.cumulative_risk_metrics.algorithm_period_return (报错)

而取下面的最大回撤指标就没有问题,正确的方式是怎样的?

context.perf_tracker.cumulative_risk_metrics.max_drawdown (正常)

下面取日收益也没有问题,咋累计收益就不行呢?

context.perf_tracker.cumulative_risk_metrics.algo

更新时间:2023-06-01 02:13

请教一个问题!,关于ranker_prediction

问题

大家好,我看很多关于AI的策略里面都有以下两句代码

ranker_prediction 和 context.benckmark_risk.ix[today_date].values[0]。我想请问这个内嵌的逻辑是什么…

  • context.ranker_prediction就是传给回测模块的预测结果数据,通过context.options[‘data’].read_df()读出来。 ranker_prediction就获取到回测当天的预测结果数据

![{w:100}{w:100}{w:100}{w:100}{w:100}](/wiki/api

更新时间:2023-06-01 02:13

请帮忙看下,设置了每日调仓,怎么回测7日才调仓,模拟也不会调仓

问题

请帮忙看下,设置了每日调仓,怎么回测7日才调仓,模拟也不会调仓

策略

https://bigquant.com/experimentshare/ad6ecb9d63cf4b3b8ae7d397f7fd205a

把回测模块的主函数这个地方注释即可。这个代码表示持仓5天才判断交易逻辑

![{w:100}{w:100}](/wiki/api/attachments.redirect?id=b7f8ae9d-aa05-4ebb-

更新时间:2023-06-01 02:13

回测模块中如何导入库

问题

请问如何在回测模块中导入一个自定义的库呢?写在盘前函数里好像无效。

更新时间:2023-06-01 02:13

回测中如何避免买入停牌股票或一字涨停的股票?

问题

回测中如何避免买入停牌股票或一字涨停的股票?

解答

这是一个好问题。BigQuant平台回测模块专门对这个问题进行了相应处理。当遇到次日停牌或者一字涨停\跌停的情形,平台会自动取消该订单,于是是不能成交。

更新时间:2023-06-01 02:13

'Outputs' object has no attribute 'm_lazy_run'

问题

'Outputs' object has no attribute 'm_lazy_run'

这个报错没搞懂,用了高频特征就这样了

「分享出去没有回测模块」

回测模块在知识库里看到没有 克隆到开发环境之后 是有的

策略

https://bigquant.com/experimentshare/00d5181ea03a4301ab73caf36256dd86

\

更新时间:2023-06-01 02:13

index 0 is out of bounds for axis 0 with size 0

问题

[2021-11-22 16:30:01.137076] ERROR: moduleinvoker: module name: backtest, module version: v8, trackeback: IndexError: index 0 is out of bounds for axis 0 with size 0
[2021-11-22 16:30:01.148826] ERROR: moduleinvoker: module name: trade, module version: v4, trackeback: IndexError: in

更新时间:2023-06-01 02:13

分页第1页第2页