Meine Herren und Herren, ich möchte die Transaktionsmenge in einer bestimmten Periode K-Linie nach zwei Arten von kaufen und verkaufen getrennt zu berechnen, zum Beispiel 1 Minute-Periode K-Linie Graph, wie viele der Transaktionsmenge von zwei Arten von kaufen und verkaufen in jeder K-Linie entsprechen. Die Idee ist, wenn keine neuen K-Linien erzeugt werden, die Trade-Daten zu erhalten und zu akkumulieren, und dann, nachdem die neuen K-Linien erzeugt wurden, die Klassifizierungsstatistiken für die akkumulierten Trade-Daten zu erstellen, die Parameter für die Auswahl zu übertragen und in den nächsten Kreislauf zu gehen.[-2][“Volume” hat einen sehr großen Unterschied zwischen den beiden Verkäufen, da der Kauf- und der Verkauf der einzelnen Verkäufe im Vergleich zu den Rekords sehr unterschiedlich sind.[-2][“Volume”] zeigt eine hohe Transaktionsrate. Der Code ist folgendermaßen und hat mich zwei Tage lang umgangen. Bitte weisen Sie uns an, ob es ein Problem mit der Logik gibt, oder ob die Rückmessung selbst ein Problem mit der Logik hat.
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