Closed chechi closed 7 months ago
value != value 是判断 nan, 重复查找 h5 文件请问具体是哪里,谢谢。
environment.py 142 行 def get_instrument(self, order_book_id): return self.data_proxy.instrument(order_book_id) 这个函数调用了14次,建议通过参数或者是集中在业务上下文的对赋值一次。 资金充足的验证和交易费用的计算或许应该集中在一起一次性计算 订单的提交拆分了多次,可以在一个事件中集中处理,zipline的处理方式很简洁. 交易风控和一些验证也比较分散,没有集中处理,代码有很多人编写,有冗余的地方,响应on_bar事件的业务有一些混乱
如果我有遗漏或者误解麻烦给出代码位置及更具体的描述,亦欢迎提交pr。
提 ISSUE 须知
请先阅读文档 rqalpha文档
如果仍有问题的话请在 issue列表 中寻找是否有相关问题的解决方案
如果没有的话 麻烦开一个issue 描述以下问题:
1. RQAlpha的版本 5.0
2. Python的版本 3.10
3. 是Windows/Linux/MacOS or others? mac
4. 您出现问题对应的源码/或者能复现问题的简易代码 以及对应的配置
5. 您出现的错误堆栈日志信息
trad.py 有这样一段代码 for value in (price, amount, commission, tax, frozenprice): if value != value: raise RuntimeError(( "price, amount, commission, tax and frozen_price of trade {trade_id} is not supposed to be nan, " "current_value is {price}, {amount}, {commission}, {tax}, {frozen_price}" ).format( trade_id=trade_id, price=price, amount=amount, commission=commission, tax=tax, frozen_price=frozen_price ))
if value != value: 这个判断是什么意思?提个建议,基于事件的整体架构不错,订单提交和撮合的逻辑有重复逻辑,多处地方重复查找h5文件,逻辑有点不清晰,没有zipline的简单清晰