自己写了一个策略。需要对它进行一个评价。
引入backtrader中的Analyzer计算盈亏比。
但发现Analyzer好像只能对trade级别进行分析计算,而我希望能对order级别进行分析计算。
请大家教我怎么弄,万分感谢~
backtrader中的Analyzer主要是用来分析交易的。那么,为了对订单级别进行分析计算,您可以考虑遍历每个订单,并在订单成交时记录其订单细节。当然,这需要您自己编写一些代码来处理这些订单信息,并且可能需要对已有的Analyzer进行一些修改。
具体而言,您可以重载backtrader策略中的buy和sell方法,并在这些方法中,将订单相关的信息传递给相应的Analyzer对象。比如,您可以创建一个新的类,命名为OrderAnalyzer,并将其作为backtrader策略中的成员变量。然后,在buy和sell方法中,先执行正常的交易操作,接着记录订单的细节信息,最后将它们传递给OrderAnalyzer对象进行处理。
同时,您也可以参考一些开源的backtrader策略,比如Backtrader Cerebro One,了解如何在策略中处理订单信息,以及如何编写自己的Analyzer对象。