示例#1
0
 def receive_executions(self, pubnub, message):
     executions = self.executions2df(message)
     if executions.shape[0] < 10:
         return
     print("History loaded. start trading")
     df = Backtest.resample_candle(executions, exchange="bitflyer", freq="%sN" % self.candle_nsec)
     df = pd.concat([self.df, df])
     df = df.drop_duplicates(subset='start', keep='first')
     self.df = df.iloc[:-1, :]
     self.backtest.action(self.df, self.strategy, self.params[self.strategy], self.step_action)
示例#2
0
 def get_hisotry(self):
     candleSize = self.params[self.strategy]["candleSize"]
     historySize = self.params[self.strategy]["historySize"]
     self.candle_nsec = int(candleSize*6*10e9) # minute end nanosecond
     minutes = int(candleSize * historySize*10)
     from_date = datetime.datetime.today() - datetime.timedelta(minutes=minutes)
     trade = self.exchange.get_trade(from_date)
     candle = Backtest.resample_candle(trade, exchange="bitflyer", freq="%sN" % self.candle_nsec)
     candle.to_csv("data/realtime_bitflyer_%s_candle.csv" % self.pair, index=None)
     for col in "open,high,low,close,vwp,volume".split(","):
         candle[col] = candle[col].astype(np.float64)
     candle = candle.drop(candle.index[-1])
     self.df = candle
     self.size = self.df.shape[0]
     self.indsize = len(self.indicators)
     self.col = {x: self.df.columns.tolist().index(x) for x in ["open", "high", "low", "close", "vwp", "volume", "start"]}
     self.candles = self.df.values
     return self.df