Type/to search
8
Follow
0
Followers
求教各位大神关于trade中成交量分类统计的问题
Help
Created 2022-08-18 12:56:23  Updated 2022-08-20 16:07:39
 4
 1152

各位大神,我想要把某个周期K线中成交量按buy、sell两种类型分开统计出来,比如1分钟周期的K线图,每根K线对应的成交量中buy,sell两种类型的成交量分别是多少。
我的是思路是当没有新K线生产时,获取trade数据并累加起来,然后在新K线生成后,对累计的trade数据进行分类统计,重置取数的各个参数,进入下一个循环。但是用实盘级回测时出现了问题,一个是统计到的成交量数据与实际每个K线records[-2]["Volume"]的成交量对不上,差别很大,统计到的买单成交量加上卖单成交量,都比records[-2]["Volume"]显示的成交量大。
代码如下,绕了我两天了。请各位大神指导一下是不是逻辑有问题,还是说回测本身就会有这个问题?如果是逻辑有问题请详细指点一下,谢谢。

def GetRecords(self): if self.LastBarTime == self.BarTime: trades = _C(exchange.GetTrades) if trades : for i in range (len(trades)): if trades[i] not in self.trades: self.trades.append(trades[i]) if self.LastBarTime != self.BarTime: #新K线 if self.trades : for i in range (len(self.trades)): if self.trades[i]["Type"] == 0 : #买单 self.trade_buy.append(self.trades[i]) if self.trades[i]["Type"] == 1 : #卖单 self.trade_sell.append(self.trades[i]) if self.trade_buy: for i in range (len(self.trade_buy)): self.totlebuyamount += self.trade_buy[0-i]["Amount"] if self.trade_sell: for i in range (len(self.trade_sell)): self.totlesellamount += self.trade_sell[0-i]["Amount"] Log("总成交量",self.totlebuyamount+self.totolesellamoun,"买单成交量",self.totlebuyamount,"卖单成交量",self.totolesellamount) self.trades = [] self.trade_buy = [] self.trade_sell = [] self.totlebuyamount = 0 self.totlesellamount = 0
Related Recommendations
Comment
All comments (4)

    回测的订单流是模拟的。这个要实盘测试才行的。

    4 years ago

    数字货币市场用订单流数据就行,trades数据。

    4 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)