# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: MIT-0 from __future__ import unicode_literals from base64 import decode from datetime import datetime import numpy as np import requests import csv import random import heapq #äº¤æ˜“å¯¹æ•°é‡ symbollist = ['COIN'] #æ¯ä¸ªäº¤æ˜“对生æˆçš„黑客用户交易记录数 subs = 20 for symbol in symbollist: filename = './kline/'+symbol +'.csv' dates, highest_prices, \ lowest_prices = np.genfromtxt( filename, delimiter=',', usecols=(0, 1, 2), unpack=True, dtype=('|U20','f8','f8'), encoding='utf-8-sig', skip_header=1 ) print(filename) print(dates) minusResult = highest_prices - lowest_prices print("type of data",type(highest_prices)) print("type of minusResult:",type(minusResult)) sorted = heapq.nlargest(10,minusResult) print(sorted) aaaa = np.where(minusResult==sorted[2]) print("sorted:",sorted) header = ['time','price'] for i in range(1,subs): print(i) sellname = './sell/'+'sell_'+symbol+'_'+'hacker'+'_'+str(i)+'.csv' buyname = './buy/'+'buy_'+symbol+'_'+'hacker'+'_'+str(i)+'.csv' times = random.randrange(3,10) with open(buyname,'w+') as f: buywriter = csv.writer(f) buywriter.writerow(header) with open(sellname,'w+') as f: sellwriter = csv.writer(f) sellwriter.writerow(header) for j in range(1,times): cur = random.randrange(0,9) idxList = np.where(minusResult==sorted[cur]) idx = idxList[0][0] #print('j:',times,"idx:",idx) row = [] row.append(dates[idx]) riseAmount = highest_prices[idx] - lowest_prices[idx] if riseAmount/lowest_prices[idx] < 0.005: continue rate = random.randrange(90,100) mockSellprice = lowest_prices[idx]+riseAmount*rate/100 row.append(mockSellprice) #print(row) with open(sellname,'a+') as f: sellwriter = csv.writer(f) sellwriter.writerow(row) row = [] row.append(dates[idx]) riseAmount = highest_prices[idx] - lowest_prices[idx] if riseAmount/lowest_prices[idx] < 0.005: continue rate = random.randrange(0,10) mockBuyprice = lowest_prices[idx]+riseAmount*rate/100 row.append(mockBuyprice) #print(row) with open(buyname,'a+') as f: buywriter = csv.writer(f) buywriter.writerow(row)