如题所示:想要验证下,是直接通过backtrader计算所需要的指标速度快,还是通过pandas计算好指标,通过扩展数据加载进去速度快,废话不多说,直接说下验证的思路,罗列验证的代码,给出测试的结果。
详细的验证步骤-
生成一个1千,1万,10万,100万的随机数,保存本地,形成csv文件。
-
然后分别使用两种方法读取,计算指标
- 方法一:使用pandas读取数据,并计算10周期和20周期的均线,分别保存为两个新的列:“short_ma"和”long_ma",然后加载到cerebro中,写策略的时候,就不再计算均线
- 方法二:使用pandas数据直接加载到cerebro中,然后在策略里面计算10周期和20周期的均线,分别命名为“short_ma"和"long_ma"
-
测试在不同的数据量级别下使用的时间,然后画图。
import numpy as np
import pandas as pd
import random
import datetime
import backtrader as bt
def generate_random_n_bar_df(n):
start_datetime = datetime.datetime(1990,1,1,9,0,0)
# bar的数据和时间都是乱生成的,估计没有那种行情是这种,但是应该是不影响测试结果的可靠性
result=[[random.rando


