Type/to search
8
Follow
0
Followers
Me gustaría preguntar a los expertos sobre la clasificación y las estadísticas del volumen de transacciones en el comercio.
Help
Created 2022-08-18 12:56:23  Updated 2022-08-20 16:07:39
 4
 1154

Dioses, quiero calcular el volumen de transacciones en una línea K de un período por los dos tipos de compra y venta por separado, por ejemplo, en el gráfico de la línea K de un período de 1 minuto, el volumen de transacciones correspondiente en cada línea K de compra y venta de los dos tipos de transacciones respectivamente.
La idea es que cuando no se produzca una nueva línea K, se obtienen los datos de comercio y se acumulan, luego, después de generar una nueva línea K, se clasifican los datos de comercio acumulados, se restablecen los parámetros de los números tomados y se pasa al siguiente ciclo. Pero cuando se realiza la medición a nivel de disco duro, surgen problemas, uno de los cuales es que los datos de transacción estadísticos se comparan con los registros reales de cada línea K.[-2]["Volume" tiene un volumen de transacciones muy diferente, ya que el volumen de transacciones de compra y venta, sumado al volumen de transacciones de venta, es mayor que el de "records".[-2]["Volume"] muestra una gran cantidad de transacciones.
El código es el siguiente y me ha estado dando vueltas por dos días. Por favor, guíenme si hay algún problema con la lógica, o si la retroalimentación en sí misma puede tener este problema. Si hay algún problema con la lógica, por favor indique en detalle, gracias.

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)