Пример #1
0
limit = 20
ticks = 0
save_period = 1000
path = 'E:/Projects/market-analysis-system/data/crypto/'

data = dict(zip(symbols, [dict({'data':[]}) for i in symbols]))


while True:
    try:
        start_time = time.time()
        for symbol in symbols:
            candles = pd.DataFrame(api.candlesticks(symbol=symbol, interval=period, limit=limit), dtype=np.float)
            tickers = pd.DataFrame(api.tickers(symbol=symbol, limit=limit))
            trades = pd.DataFrame(api.aggr_trades(symbol=symbol, limit=limit), dtype=np.float)
            # data[symbol]['candles'] = np.column_stack((candles.values[:, 1:6], # o,h,l,c,v
            #                                                     candles.values[:, 7:11])) # qav, nt, bv, qv
            # data[symbol]['tickers'] = np.column_stack(([np.array([x[0:2] for x in tickers['bids'].values], dtype=np.float),
            #                                                     np.array([x[0:2] for x in tickers['asks'].values], dtype=np.float)]))
            # data[symbol]['trades'] = trades[['p', 'q']].values
            data[symbol]['data'] = np.append(data[symbol]['data'], np.column_stack((np.column_stack((candles.values[:, 1:6], # o,h,l,c,v
                                                                                                     candles.values[:, 7:11])), # qav, nt, bv, qv
                                                                                    np.column_stack(([np.array([x[0:2] for x in tickers['bids'].values], dtype=np.float),
                                                                                                      np.array([x[0:2] for x in tickers['asks'].values], dtype=np.float)])),
                                                                                    trades[['p', 'q']].values))).reshape(len(data[symbol]['data'])+1, limit*15)

        if ticks % save_period == 0:
            for symbol in symbols:
                fname = path + symbol + '/' + str(round(time.time())) + '.csv'
                np.savetxt(fname, data[symbol]['data'], delimiter=';', fmt='%.8f')
ticks = 0
save_period = 1000
path = 'd:/mas/'

data = dict(zip(symbols, [dict({'data': []}) for i in symbols]))

while True:
    try:
        start_time = time.time()
        for symbol in symbols:
            candles = pd.DataFrame(api.candlesticks(symbol=symbol,
                                                    interval=period,
                                                    limit=limit),
                                   dtype=np.float)
            tickers = pd.DataFrame(api.tickers(symbol=symbol, limit=limit))
            trades = pd.DataFrame(api.aggr_trades(symbol=symbol, limit=limit),
                                  dtype=np.float)
            # data[symbol]['candles'] = np.column_stack((candles.values[:, 1:6], # o,h,l,c,v
            #                                                     candles.values[:, 7:11])) # qav, nt, bv, qv
            # data[symbol]['tickers'] = np.column_stack(([np.array([x[0:2] for x in tickers['bids'].values], dtype=np.float),
            #                                                     np.array([x[0:2] for x in tickers['asks'].values], dtype=np.float)]))
            # data[symbol]['trades'] = trades[['p', 'q']].values
            data[symbol]['data'] = np.append(
                data[symbol]['data'],
                np.column_stack((
                    np.column_stack((
                        candles.values[:, 1:6],  # o,h,l,c,v
                        candles.values[:, 7:11])),  # qav, nt, bv, qv
                    np.column_stack(([
                        np.array([x[0:2] for x in tickers['bids'].values],
                                 dtype=np.float),