修复问题:

希望修复的脚本是:tests\add_tests/test_analyzer_returns.py

运行测试并获取错误原因,尝试修复

安装并重新运行

pip install -U .

pytest tests\add_tests/test_analyzer_returns.py

如果还没通过,可以多按照上面的步骤尝试几次,也可以去和 master 版本进行对比分析,找到具体的 bug,按照下面步骤进行

对比目的

分析一下主分支和当前分支运行情况,主分支是正确的分支,当前分支是需要重构的分支,存在 bugs 和性能上的缺陷,这次尝试分析哪里导致了性能缺陷,并尝试修复

对比

  1. 切换到 remove-metaprogramming 分支,pip install -U . 安装当前分支的 backtrader,运行脚本进行对比

  2. 切换到 master 分支,pip install -U . 安装当前分支的 backtrader,运行脚本进行分析

  3. 对比相应的结果,分析一下 remove-metaprogramming 分支的代码是否存在问题,并尝试解决

  4. 性能的下降很可能是循环用的不对,本来一个 O(n)的循环变成了 O(n^2)的循环.分析是否使用了不必要的循环。