Repository: theforage/forage-jpmc-swe-task-1
Branch: main
Commit: 879221fec2b8
Files: 6
Total size: 96.7 KB
Directory structure:
gitextract_0mechkk0/
├── README.md
├── client3.py
├── client_test.py
├── requirements.txt
├── server3.py
└── test.csv
================================================
FILE CONTENTS
================================================
================================================
FILE: README.md
================================================
# JPMC Task 1
Starter repo for task 1 of the JPMC software engineering program
================================================
FILE: client3.py
================================================
################################################################################
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
import json
import random
import urllib.request
# Server API URLs
QUERY = "http://localhost:8080/query?id={}"
# 500 server request
N = 500
def getDataPoint(quote):
""" Produce all the needed values to generate a datapoint """
""" ------------- Update this function ------------- """
stock = quote['stock']
bid_price = float(quote['top_bid']['price'])
ask_price = float(quote['top_ask']['price'])
price = bid_price
return stock, bid_price, ask_price, price
def getRatio(price_a, price_b):
""" Get ratio of price_a and price_b """
""" ------------- Update this function ------------- """
return 1
# Main
if __name__ == "__main__":
# Query the price once every N seconds.
for _ in iter(range(N)):
quotes = json.loads(urllib.request.urlopen(QUERY.format(random.random())).read())
""" ----------- Update to get the ratio --------------- """
for quote in quotes:
stock, bid_price, ask_price, price = getDataPoint(quote)
print("Quoted %s at (bid:%s, ask:%s, price:%s)" % (stock, bid_price, ask_price, price))
print("Ratio %s" % getRatio(price, price))
================================================
FILE: client_test.py
================================================
import unittest
from client3 import getDataPoint
class ClientTest(unittest.TestCase):
def test_getDataPoint_calculatePrice(self):
quotes = [
{'top_ask': {'price': 121.2, 'size': 36}, 'timestamp': '2019-02-11 22:06:30.572453', 'top_bid': {'price': 120.48, 'size': 109}, 'id': '0.109974697771', 'stock': 'ABC'},
{'top_ask': {'price': 121.68, 'size': 4}, 'timestamp': '2019-02-11 22:06:30.572453', 'top_bid': {'price': 117.87, 'size': 81}, 'id': '0.109974697771', 'stock': 'DEF'}
]
""" ------------ Add the assertion below ------------ """
def test_getDataPoint_calculatePriceBidGreaterThanAsk(self):
quotes = [
{'top_ask': {'price': 119.2, 'size': 36}, 'timestamp': '2019-02-11 22:06:30.572453', 'top_bid': {'price': 120.48, 'size': 109}, 'id': '0.109974697771', 'stock': 'ABC'},
{'top_ask': {'price': 121.68, 'size': 4}, 'timestamp': '2019-02-11 22:06:30.572453', 'top_bid': {'price': 117.87, 'size': 81}, 'id': '0.109974697771', 'stock': 'DEF'}
]
""" ------------ Add the assertion below ------------ """
""" ------------ Add more unit tests ------------ """
if __name__ == '__main__':
unittest.main()
================================================
FILE: requirements.txt
================================================
python-dateutil==2.8.2
================================================
FILE: server3.py
================================================
################################################################################
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
import csv
# from BaseHTTPServer import BaseHTTPRequestHandler,HTTPServer
import http.server
import json
import operator
import os.path
import re
import threading
from datetime import timedelta, datetime
# from itertools import izip
from random import normalvariate, random
from socketserver import ThreadingMixIn
import dateutil.parser
################################################################################
#
# Config
# Sim params
REALTIME = True
SIM_LENGTH = timedelta(days=365 * 5)
MARKET_OPEN = datetime.today().replace(hour=0, minute=30, second=0)
# Market parms
# min / max / std
SPD = (2.0, 6.0, 0.1)
PX = (60.0, 150.0, 1)
FREQ = (12, 36, 50)
# Trades
OVERLAP = 4
################################################################################
#
# Test Data
def bwalk(min, max, std):
""" Generates a bounded random walk. """
rng = max - min
while True:
max += normalvariate(0, std)
yield abs((max % (rng * 2)) - rng) + min
def market(t0=MARKET_OPEN):
""" Generates a random series of market conditions,
(time, price, spread).
"""
for hours, px, spd in zip(bwalk(*FREQ), bwalk(*PX), bwalk(*SPD)):
yield t0, px, spd
t0 += timedelta(hours=abs(hours))
def orders(hist):
""" Generates a random set of limit orders (time, side, price, size) from
a series of market conditions.
"""
for t, px, spd in hist:
stock = 'ABC' if random() > 0.5 else 'DEF'
side, d = ('sell', 2) if random() > 0.5 else ('buy', -2)
order = round(normalvariate(px + (spd / d), spd / OVERLAP), 2)
size = int(abs(normalvariate(0, 100)))
yield t, stock, side, order, size
################################################################################
#
# Order Book
def add_book(book, order, size, _age=10):
""" Add a new order and size to a book, and age the rest of the book. """
yield order, size, _age
for o, s, age in book:
if age > 0:
yield o, s, age - 1
def clear_order(order, size, book, op=operator.ge, _notional=0):
""" Try to clear a sized order against a book, returning a tuple of
(notional, new_book) if successful, and None if not. _notional is a
recursive accumulator and should not be provided by the caller.
"""
(top_order, top_size, age), tail = book[0], book[1:]
if op(order, top_order):
_notional += min(size, top_size) * top_order
sdiff = top_size - size
if sdiff > 0:
return _notional, list(add_book(tail, top_order, sdiff, age))
elif len(tail) > 0:
return clear_order(order, -sdiff, tail, op, _notional)
def clear_book(buy=None, sell=None):
""" Clears all crossed orders from a buy and sell book, returning the new
books uncrossed.
"""
while buy and sell:
order, size, _ = buy[0]
new_book = clear_order(order, size, sell)
if new_book:
sell = new_book[1]
buy = buy[1:]
else:
break
return buy, sell
def order_book(orders, book, stock_name):
""" Generates a series of order books from a series of orders. Order books
are mutable lists, and mutating them during generation will affect the
next turn!
"""
for t, stock, side, order, size in orders:
if stock_name == stock:
new = add_book(book.get(side, []), order, size)
book[side] = sorted(new, reverse=side == 'buy', key=lambda x: x[0])
bids, asks = clear_book(**book)
yield t, bids, asks
################################################################################
#
# Test Data Persistence
def generate_csv():
""" Generate a CSV of order history. """
with open('test.csv', 'wb') as f:
writer = csv.writer(f)
for t, stock, side, order, size in orders(market()):
if t > MARKET_OPEN + SIM_LENGTH:
break
writer.writerow([t, stock, side, order, size])
def read_csv():
""" Read a CSV or order history into a list. """
with open('test.csv', 'rt') as f:
for time, stock, side, order, size in csv.reader(f):
yield dateutil.parser.parse(time), stock, side, float(order), int(size)
################################################################################
#
# Server
class ThreadedHTTPServer(ThreadingMixIn, http.server.HTTPServer):
""" Boilerplate class for a multithreaded HTTP Server, with working
shutdown.
"""
allow_reuse_address = True
def shutdown(self):
""" Override MRO to shutdown properly. """
self.socket.close()
http.server.HTTPServer.shutdown(self)
def route(path):
""" Decorator for a simple bottle-like web framework. Routes path to the
decorated method, with the rest of the path as an argument.
"""
def _route(f):
setattr(f, '__route__', path)
return f
return _route
def read_params(path):
""" Read query parameters into a dictionary if they are parseable,
otherwise returns None.
"""
query = path.split('?')
if len(query) > 1:
query = query[1].split('&')
return dict(map(lambda x: x.split('='), query))
def get(req_handler, routes):
""" Map a request to the appropriate route of a routes instance. """
for name, handler in routes.__class__.__dict__.items():
if hasattr(handler, "__route__"):
if None != re.search(handler.__route__, req_handler.path):
req_handler.send_response(200)
req_handler.send_header('Content-Type', 'application/json')
req_handler.send_header('Access-Control-Allow-Origin', '*')
req_handler.end_headers()
params = read_params(req_handler.path)
data = json.dumps(handler(routes, params)) + '\n'
req_handler.wfile.write(bytes(data, encoding='utf-8'))
return
def run(routes, host='0.0.0.0', port=8080):
""" Runs a class as a server whose methods have been decorated with
@route.
"""
class RequestHandler(http.server.BaseHTTPRequestHandler):
def log_message(self, *args, **kwargs):
pass
def do_GET(self):
get(self, routes)
server = ThreadedHTTPServer((host, port), RequestHandler)
thread = threading.Thread(target=server.serve_forever)
thread.daemon = True
thread.start()
print('HTTP server started on port 8080')
while True:
from time import sleep
sleep(1)
server.shutdown()
server.start()
server.waitForThread()
################################################################################
#
# App
ops = {
'buy': operator.le,
'sell': operator.ge,
}
class App(object):
""" The trading game server application. """
def __init__(self):
self._book_1 = dict()
self._book_2 = dict()
self._data_1 = order_book(read_csv(), self._book_1, 'ABC')
self._data_2 = order_book(read_csv(), self._book_2, 'DEF')
self._rt_start = datetime.now()
self._sim_start, _, _ = next(self._data_1)
self.read_10_first_lines()
@property
def _current_book_1(self):
for t, bids, asks in self._data_1:
if REALTIME:
while t > self._sim_start + (datetime.now() - self._rt_start):
yield t, bids, asks
else:
yield t, bids, asks
@property
def _current_book_2(self):
for t, bids, asks in self._data_2:
if REALTIME:
while t > self._sim_start + (datetime.now() - self._rt_start):
yield t, bids, asks
else:
yield t, bids, asks
def read_10_first_lines(self):
for _ in iter(range(10)):
next(self._data_1)
next(self._data_2)
@route('/query')
def handle_query(self, x):
""" Takes no arguments, and yields the current top of the book; the
best bid and ask and their sizes
"""
try:
t1, bids1, asks1 = next(self._current_book_1)
t2, bids2, asks2 = next(self._current_book_2)
except Exception as e:
print("error getting stocks...reinitalizing app")
self.__init__()
t1, bids1, asks1 = next(self._current_book_1)
t2, bids2, asks2 = next(self._current_book_2)
t = t1 if t1 > t2 else t2
print('Query received @ t%s' % t)
return [{
'id': x and x.get('id', None),
'stock': 'ABC',
'timestamp': str(t),
'top_bid': bids1 and {
'price': bids1[0][0],
'size': bids1[0][1]
},
'top_ask': asks1 and {
'price': asks1[0][0],
'size': asks1[0][1]
}
},
{
'id': x and x.get('id', None),
'stock': 'DEF',
'timestamp': str(t),
'top_bid': bids2 and {
'price': bids2[0][0],
'size': bids2[0][1]
},
'top_ask': asks2 and {
'price': asks2[0][0],
'size': asks2[0][1]
}
}]
################################################################################
#
# Main
if __name__ == '__main__':
if not os.path.isfile('test.csv'):
print("No data found, generating...")
generate_csv()
run(App())
================================================
FILE: test.csv
================================================
2019-02-01 00:30:00.966511,ABC,buy,118.24,21
2019-02-01 16:29:33.406644,DEF,buy,120.09,71
2019-02-02 18:37:52.442361,ABC,buy,120.09,131
2019-02-03 11:49:54.753944,ABC,buy,118.13,145
2019-02-04 12:34:43.199076,ABC,sell,120.24,2
2019-02-05 04:03:01.708103,DEF,buy,110.79,52
2019-02-05 18:25:31.835007,ABC,buy,112.7,101
2019-02-06 08:07:20.411698,ABC,buy,115.46,245
2019-02-07 12:04:33.363229,DEF,buy,115.14,12
2019-02-08 05:45:58.422127,DEF,sell,117.87,74
2019-02-09 02:10:38.317086,ABC,buy,112.79,80
2019-02-10 10:07:43.237974,ABC,sell,116.63,183
2019-02-11 18:12:31.763344,ABC,buy,110.5,35
2019-02-13 00:41:03.061658,DEF,sell,117.51,84
2019-02-13 19:37:03.654348,DEF,buy,113.65,40
2019-02-14 08:26:51.287677,DEF,buy,112.39,54
2019-02-14 22:54:17.994967,DEF,sell,116.98,41
2019-02-15 19:51:35.120133,DEF,sell,116.9,16
2019-02-17 02:30:47.122289,ABC,buy,112.27,91
2019-02-17 19:35:22.154753,DEF,sell,116.05,105
2019-02-18 12:30:42.187256,DEF,buy,111.17,273
2019-02-19 17:08:20.400814,ABC,buy,108.62,92
2019-02-20 21:26:54.664490,ABC,sell,113.04,253
2019-02-21 12:31:57.442982,DEF,sell,114.47,68
2019-02-22 01:35:01.655558,DEF,buy,112.29,97
2019-02-23 06:36:37.717586,ABC,buy,111.24,93
2019-02-24 13:43:36.615682,ABC,sell,116.17,22
2019-02-25 04:54:36.476134,ABC,buy,109.03,108
2019-02-25 20:06:18.131320,ABC,buy,110.35,175
2019-02-27 03:31:20.961622,ABC,sell,111.65,74
2019-02-27 23:09:41.106498,ABC,buy,107.04,130
2019-02-28 21:40:40.238896,DEF,sell,111.68,156
2019-03-02 01:55:48.640233,ABC,sell,115.57,60
2019-03-03 00:10:38.079285,DEF,sell,113.62,14
2019-03-03 18:30:47.050607,ABC,buy,106.16,40
2019-03-04 09:05:05.419473,ABC,buy,107.53,68
2019-03-05 17:49:40.846183,ABC,sell,112.39,11
2019-03-06 06:40:35.041441,ABC,buy,106.94,60
2019-03-07 13:59:29.291951,ABC,buy,105.77,59
2019-03-08 23:35:56.746472,ABC,buy,109.2,56
2019-03-10 03:38:27.596382,ABC,sell,110.27,64
2019-03-11 10:23:52.781283,ABC,buy,105.63,27
2019-03-12 14:15:55.227949,DEF,sell,109.27,10
2019-03-13 07:01:35.342559,ABC,buy,106.37,37
2019-03-14 01:16:06.136558,DEF,sell,112.76,7
2019-03-14 21:42:08.012696,ABC,buy,108.74,12
2019-03-16 02:08:37.533436,ABC,buy,104.38,56
2019-03-16 23:04:36.166315,DEF,sell,109.83,25
2019-03-17 18:31:27.760441,ABC,buy,107.55,202
2019-03-18 12:38:13.606208,ABC,sell,113.12,0
2019-03-19 22:22:54.040153,DEF,sell,115.16,68
2019-03-20 23:02:25.850131,ABC,buy,111.62,145
2019-03-21 20:36:35.476887,DEF,sell,114.6,141
2019-03-22 09:43:03.471379,ABC,sell,116.77,70
2019-03-23 09:34:49.336990,DEF,buy,109.75,16
2019-03-23 22:04:26.812142,DEF,buy,109.85,14
2019-03-25 00:39:53.320423,ABC,sell,113.53,19
2019-03-26 06:01:58.895705,ABC,buy,110.41,118
2019-03-27 09:06:46.537723,ABC,sell,114.19,97
2019-03-28 13:44:48.249941,DEF,sell,116.33,14
2019-03-29 14:08:02.247788,ABC,buy,112.66,55
2019-03-30 04:50:16.044901,DEF,sell,115.76,111
2019-03-31 11:58:15.666679,DEF,sell,115.78,35
2019-04-01 11:55:24.073957,DEF,buy,110.1,19
2019-04-02 04:53:05.228984,ABC,sell,115.28,62
2019-04-02 20:23:26.130366,DEF,buy,111.14,24
2019-04-03 15:50:09.987424,ABC,buy,111.57,75
2019-04-04 12:52:41.254838,DEF,buy,109.53,136
2019-04-05 16:38:39.023546,ABC,buy,111.52,63
2019-04-06 12:41:48.755998,DEF,buy,110.7,9
2019-04-07 04:20:47.537559,ABC,buy,112.96,133
2019-04-08 11:05:03.621711,DEF,buy,112.11,227
2019-04-09 13:01:42.296983,DEF,sell,115.47,61
2019-04-10 21:05:44.760840,DEF,buy,113.29,121
2019-04-12 04:17:26.274648,ABC,buy,114.48,73
2019-04-13 08:44:06.013282,DEF,sell,117.04,23
2019-04-14 05:28:33.151392,ABC,buy,114.05,20
2019-04-15 09:42:14.426547,DEF,sell,119.2,7
2019-04-16 02:27:16.101261,ABC,sell,120.8,16
2019-04-16 19:15:07.422371,ABC,buy,116.4,231
2019-04-17 11:13:25.432400,DEF,sell,120.44,7
2019-04-18 00:07:04.768087,DEF,buy,114.18,5
2019-04-18 21:21:52.963034,DEF,buy,113.57,33
2019-04-19 17:55:29.018736,ABC,buy,112.19,147
2019-04-21 01:55:03.472619,DEF,buy,114.73,85
2019-04-22 04:35:30.585456,DEF,buy,114.65,40
2019-04-23 02:28:45.618826,DEF,buy,116.0,137
2019-04-23 22:37:20.868606,ABC,sell,123.37,47
2019-04-25 08:37:18.347364,DEF,buy,110.96,172
2019-04-26 09:57:36.379367,DEF,sell,118.25,48
2019-04-27 03:58:31.643303,ABC,sell,119.31,163
2019-04-28 15:42:01.718765,ABC,buy,114.54,2
2019-04-29 13:53:43.470320,ABC,sell,118.7,142
2019-04-30 17:16:37.357174,DEF,sell,119.9,79
2019-05-01 18:09:26.412464,DEF,sell,117.83,27
2019-05-02 12:55:21.152408,ABC,sell,117.47,129
2019-05-03 03:27:00.683917,DEF,buy,109.91,166
2019-05-04 09:54:42.317726,DEF,buy,112.99,76
2019-05-04 22:13:42.320289,ABC,sell,119.29,39
2019-05-06 08:39:32.855590,DEF,sell,120.09,140
2019-05-07 04:58:20.385951,DEF,buy,116.18,170
2019-05-07 22:01:00.410529,ABC,sell,116.95,57
2019-05-08 17:41:21.773503,DEF,buy,113.76,32
2019-05-09 06:42:58.665282,ABC,buy,114.83,85
2019-05-10 17:25:40.463745,ABC,buy,118.18,173
2019-05-11 11:27:20.728437,ABC,sell,122.4,145
2019-05-11 23:28:50.041898,ABC,buy,119.1,88
2019-05-13 04:54:35.255504,ABC,buy,119.61,83
2019-05-14 02:47:45.243607,DEF,buy,117.7,153
2019-05-14 23:36:31.044770,ABC,buy,120.17,23
2019-05-15 21:31:00.475836,ABC,buy,117.38,137
2019-05-16 10:57:03.222613,ABC,buy,118.2,51
2019-05-17 22:38:44.203711,ABC,buy,122.45,32
2019-05-18 20:14:43.073412,DEF,sell,128.29,9
2019-05-19 22:05:06.307934,DEF,buy,124.55,45
2019-05-20 11:07:09.737387,ABC,buy,122.44,212
2019-05-21 15:30:13.809274,DEF,sell,129.54,24
2019-05-22 06:30:16.274013,DEF,buy,123.52,38
2019-05-23 01:03:01.019365,DEF,buy,126.81,210
2019-05-24 03:20:49.396787,ABC,sell,131.8,15
2019-05-25 14:44:36.205029,DEF,buy,123.78,76
2019-05-26 03:51:11.892198,ABC,buy,125.45,58
2019-05-26 15:59:10.752224,DEF,buy,124.07,139
2019-05-27 18:17:22.506216,DEF,buy,125.02,30
2019-05-29 03:56:36.961704,DEF,buy,128.38,87
2019-05-29 23:39:55.619075,ABC,sell,133.01,94
2019-05-31 04:44:25.669327,ABC,buy,125.11,157
2019-06-01 09:31:01.535043,DEF,sell,127.94,145
2019-06-01 23:20:02.748345,DEF,buy,128.2,32
2019-06-03 06:03:02.129228,ABC,sell,132.12,133
2019-06-04 06:48:54.131871,DEF,buy,121.52,20
2019-06-05 18:16:13.667974,DEF,buy,127.09,175
2019-06-06 15:55:40.360587,ABC,sell,128.23,285
2019-06-07 04:46:10.130650,DEF,buy,127.89,55
2019-06-07 22:23:38.414203,ABC,buy,127.06,118
2019-06-09 07:38:03.278759,DEF,buy,127.45,183
2019-06-10 17:55:51.136003,ABC,sell,129.84,168
2019-06-11 15:36:36.077084,DEF,buy,128.03,123
2019-06-12 05:12:22.008019,DEF,sell,134.02,64
2019-06-12 17:23:28.290442,ABC,sell,136.91,101
2019-06-14 04:26:29.074847,ABC,sell,135.97,62
2019-06-15 14:22:10.678774,DEF,buy,133.08,127
2019-06-16 08:47:49.614759,ABC,sell,135.83,23
2019-06-17 06:08:15.942386,DEF,buy,132.59,141
2019-06-18 17:41:56.239316,DEF,buy,132.74,23
2019-06-19 13:56:40.309747,DEF,sell,138.34,55
2019-06-20 17:06:17.933853,ABC,buy,134.39,15
2019-06-22 01:35:13.509672,DEF,buy,137.94,29
2019-06-23 06:46:16.944986,DEF,buy,135.63,80
2019-06-24 04:25:32.950446,ABC,buy,137.31,38
2019-06-25 07:19:55.681960,DEF,buy,138.57,113
2019-06-26 03:16:48.667914,DEF,sell,141.57,53
2019-06-27 12:13:43.187161,ABC,sell,141.35,241
2019-06-28 22:29:06.771417,ABC,sell,145.12,7
2019-06-29 13:37:36.835703,ABC,sell,145.26,89
2019-06-30 14:07:19.603768,ABC,sell,146.4,153
2019-07-01 09:01:54.181301,ABC,buy,140.87,126
2019-07-02 01:35:36.426830,ABC,buy,138.12,38
2019-07-03 00:12:03.547053,ABC,sell,145.67,102
2019-07-03 18:43:52.573942,DEF,buy,140.16,5
2019-07-04 17:19:04.291722,DEF,sell,142.38,48
2019-07-05 07:52:01.660000,DEF,buy,137.85,195
2019-07-06 11:34:27.159495,ABC,sell,147.93,35
2019-07-07 02:45:38.691866,DEF,sell,145.32,59
2019-07-08 12:17:08.159629,ABC,sell,146.13,99
2019-07-09 04:59:29.551436,ABC,buy,141.94,17
2019-07-10 16:56:23.927825,ABC,buy,140.4,64
2019-07-11 13:05:39.316353,DEF,buy,141.97,6
2019-07-12 09:38:52.645459,DEF,sell,145.71,7
2019-07-13 09:02:36.194082,DEF,buy,140.39,1
2019-07-14 02:19:04.248606,ABC,sell,144.07,6
2019-07-15 00:22:36.272503,ABC,sell,146.98,17
2019-07-16 00:23:28.846209,DEF,sell,148.53,62
2019-07-16 14:40:44.616201,DEF,sell,146.53,9
2019-07-17 21:29:47.581678,ABC,sell,144.61,54
2019-07-19 03:59:26.479899,DEF,sell,152.75,17
2019-07-20 01:37:46.304516,ABC,sell,152.42,298
2019-07-21 04:03:38.750854,DEF,sell,155.48,260
2019-07-22 03:54:18.111829,ABC,buy,146.11,3
2019-07-23 07:02:47.671106,DEF,sell,150.36,83
2019-07-24 04:47:37.355947,DEF,buy,143.41,76
2019-07-25 16:13:09.593154,DEF,buy,144.64,50
2019-07-27 03:29:20.181943,ABC,buy,145.66,70
2019-07-28 10:42:55.073195,DEF,buy,146.63,40
2019-07-29 18:59:56.438486,DEF,buy,145.19,79
2019-07-30 07:30:49.755254,DEF,sell,152.46,58
2019-07-31 03:50:18.416632,ABC,buy,145.76,115
2019-07-31 22:31:28.042738,ABC,buy,142.53,108
2019-08-01 15:07:28.285327,ABC,buy,140.28,53
2019-08-02 05:50:43.865510,DEF,sell,145.33,39
2019-08-03 03:04:13.115818,ABC,buy,144.27,64
2019-08-04 06:59:41.946799,DEF,buy,143.39,134
2019-08-04 19:10:11.773469,DEF,buy,139.85,45
2019-08-06 03:03:58.960013,DEF,sell,146.89,82
2019-08-07 10:05:15.184090,DEF,sell,145.22,168
2019-08-08 14:38:26.590661,DEF,sell,149.04,33
2019-08-09 05:58:10.065983,ABC,sell,151.55,6
2019-08-10 16:34:14.522054,ABC,sell,151.23,103
2019-08-12 02:07:20.473439,ABC,sell,148.36,178
2019-08-12 16:34:53.398896,ABC,buy,144.26,26
2019-08-14 03:12:21.014012,DEF,buy,143.52,32
2019-08-15 09:05:12.063866,DEF,sell,150.59,41
2019-08-16 15:25:15.691706,DEF,sell,149.19,12
2019-08-17 11:33:16.927968,ABC,buy,144.13,115
2019-08-18 06:44:08.171191,DEF,sell,151.66,153
2019-08-19 00:26:56.076273,ABC,sell,149.82,179
2019-08-19 15:24:50.369502,DEF,buy,145.01,96
2019-08-20 06:26:24.045528,DEF,sell,150.54,156
2019-08-21 11:33:43.513404,ABC,buy,142.39,36
2019-08-22 13:36:42.052751,DEF,sell,149.44,56
2019-08-23 14:26:47.274807,ABC,buy,145.05,2
2019-08-24 08:09:27.140593,ABC,buy,143.92,15
2019-08-25 01:03:58.839078,ABC,buy,146.41,265
2019-08-26 06:55:42.875330,ABC,buy,146.94,157
2019-08-27 04:18:34.735112,ABC,sell,152.11,79
2019-08-28 12:50:43.211209,ABC,sell,151.52,134
2019-08-29 03:08:16.625251,DEF,sell,151.66,178
2019-08-29 22:49:26.848892,DEF,buy,145.01,1
2019-08-30 20:00:35.567127,DEF,sell,150.11,42
2019-08-31 17:36:16.521351,ABC,sell,149.79,200
2019-09-01 15:28:46.215146,ABC,buy,147.44,90
2019-09-02 07:50:13.771205,ABC,buy,148.65,82
2019-09-03 04:15:57.504749,ABC,sell,152.36,62
2019-09-04 01:13:11.034031,DEF,sell,151.48,38
2019-09-05 08:28:40.843427,ABC,sell,152.11,53
2019-09-06 00:09:21.303824,DEF,buy,146.12,10
2019-09-06 23:34:14.396449,DEF,sell,152.49,158
2019-09-08 11:06:15.389266,DEF,sell,153.2,93
2019-09-09 19:35:26.920010,ABC,buy,146.42,150
2019-09-10 10:26:04.827613,DEF,sell,149.95,35
2019-09-11 05:49:42.182254,DEF,sell,152.72,53
2019-09-11 21:29:59.187137,ABC,sell,148.18,61
2019-09-12 18:45:19.841229,DEF,buy,147.69,242
2019-09-14 01:18:03.859110,DEF,buy,147.03,226
2019-09-14 14:12:32.511221,DEF,buy,147.62,27
2019-09-15 06:11:50.599202,DEF,buy,147.35,70
2019-09-16 09:01:46.566870,ABC,sell,150.48,194
2019-09-17 00:06:34.268150,DEF,buy,146.84,53
2019-09-17 12:57:50.400888,ABC,buy,146.17,15
2019-09-19 00:29:35.629326,ABC,sell,152.62,184
2019-09-20 02:27:57.557369,ABC,sell,152.56,147
2019-09-20 18:33:03.042245,DEF,sell,149.43,60
2019-09-21 21:44:57.247947,ABC,sell,151.97,40
2019-09-22 14:00:23.051818,DEF,sell,152.79,77
2019-09-23 13:59:26.771946,DEF,sell,153.4,8
2019-09-24 16:51:55.188192,ABC,sell,150.58,45
2019-09-25 12:33:54.085644,DEF,buy,148.2,239
2019-09-26 03:23:45.395720,ABC,sell,152.46,21
2019-09-27 15:02:34.250253,ABC,sell,152.58,108
2019-09-28 07:50:39.400793,DEF,buy,149.07,38
2019-09-28 20:18:12.114080,ABC,buy,147.28,97
2019-09-30 08:14:21.735486,DEF,sell,150.98,130
2019-10-01 10:04:58.584849,ABC,buy,146.8,60
2019-10-02 17:33:28.946601,ABC,buy,146.9,17
2019-10-03 08:22:49.109896,DEF,buy,147.41,43
2019-10-04 02:19:03.981575,ABC,sell,151.19,38
2019-10-04 22:28:01.053118,DEF,sell,150.37,27
2019-10-05 18:04:33.591615,ABC,sell,151.2,153
2019-10-06 19:26:23.168662,DEF,buy,144.63,52
2019-10-07 18:06:53.558940,ABC,sell,149.99,58
2019-10-09 01:36:46.495874,DEF,sell,150.28,52
2019-10-09 21:43:48.406167,DEF,buy,144.38,225
2019-10-10 12:24:27.843886,DEF,sell,152.63,73
2019-10-11 06:13:53.952253,ABC,buy,147.53,149
2019-10-12 04:27:03.315268,DEF,buy,147.13,76
2019-10-12 23:03:31.330192,DEF,sell,153.01,175
2019-10-13 18:17:22.521683,ABC,sell,154.66,5
2019-10-14 18:29:25.392694,ABC,buy,146.32,47
2019-10-15 12:44:40.913731,ABC,sell,151.91,221
2019-10-16 20:17:38.013756,DEF,sell,151.87,31
2019-10-18 08:09:57.258085,DEF,buy,145.58,36
2019-10-19 14:32:12.693153,ABC,sell,152.27,64
2019-10-20 23:16:06.838369,ABC,sell,152.83,23
2019-10-22 09:28:36.578717,ABC,sell,153.01,109
2019-10-23 17:55:58.959351,DEF,sell,151.27,26
2019-10-24 18:57:31.329529,DEF,sell,155.01,92
2019-10-26 01:29:00.741244,DEF,sell,151.98,160
2019-10-27 01:35:34.555412,ABC,sell,151.83,6
2019-10-28 00:01:44.010975,DEF,buy,148.92,9
2019-10-28 16:53:02.066552,DEF,sell,151.51,67
2019-10-29 17:42:42.028127,ABC,buy,146.83,92
2019-10-30 17:48:59.222056,ABC,buy,146.65,3
2019-10-31 08:35:32.868524,ABC,buy,146.0,67
2019-11-01 14:30:42.443700,DEF,buy,146.69,45
2019-11-02 23:29:13.822874,ABC,buy,147.45,25
2019-11-04 05:36:02.993955,DEF,sell,149.18,171
2019-11-05 05:09:40.253337,DEF,buy,146.4,74
2019-11-06 14:48:18.819584,DEF,buy,147.18,65
2019-11-07 17:47:12.983357,DEF,buy,145.57,105
2019-11-08 14:04:39.065372,DEF,sell,149.5,62
2019-11-09 15:29:32.189657,DEF,sell,149.09,27
2019-11-10 05:41:56.219594,DEF,buy,148.69,101
2019-11-11 09:49:11.996183,DEF,sell,150.92,97
2019-11-12 01:05:10.275872,ABC,sell,151.02,7
2019-11-13 10:50:38.029670,ABC,sell,149.2,16
2019-11-14 09:45:41.737007,ABC,sell,150.35,44
2019-11-15 00:06:08.241208,DEF,sell,149.84,198
2019-11-15 20:43:09.222486,DEF,sell,150.67,127
2019-11-17 06:31:55.039853,ABC,buy,148.02,21
2019-11-18 06:55:54.768701,ABC,buy,147.34,84
2019-11-19 09:22:32.240298,ABC,sell,150.76,112
2019-11-20 01:02:22.919502,ABC,sell,149.92,189
2019-11-20 15:41:26.888820,DEF,buy,145.66,143
2019-11-21 19:36:10.749684,ABC,sell,151.8,86
2019-11-22 08:11:26.109300,ABC,sell,151.89,0
2019-11-23 19:49:34.205741,DEF,buy,147.74,141
2019-11-24 21:17:18.866234,ABC,sell,148.5,66
2019-11-26 09:10:21.660282,DEF,buy,143.38,4
2019-11-27 16:39:37.034404,DEF,buy,144.72,169
2019-11-28 17:02:21.368631,ABC,sell,145.92,90
2019-11-29 17:09:49.667946,ABC,buy,141.5,61
2019-11-30 09:18:01.408249,ABC,buy,141.18,135
2019-11-30 23:42:47.021902,ABC,buy,142.9,40
2019-12-01 19:52:04.607887,ABC,buy,141.6,50
2019-12-02 14:30:05.809809,DEF,buy,139.37,88
2019-12-03 21:45:31.828134,DEF,sell,143.72,158
2019-12-04 21:02:44.850173,DEF,buy,142.44,58
2019-12-06 01:08:30.406967,ABC,sell,139.93,47
2019-12-07 07:39:33.733221,ABC,sell,140.02,7
2019-12-08 09:03:56.908377,DEF,sell,140.98,147
2019-12-09 02:49:38.382594,ABC,buy,140.6,45
2019-12-09 21:22:18.043324,DEF,sell,141.53,23
2019-12-10 16:11:16.761970,ABC,sell,142.65,42
2019-12-11 23:47:12.577798,DEF,sell,141.57,33
2019-12-12 17:50:52.701763,DEF,buy,137.37,188
2019-12-13 14:56:19.751690,DEF,buy,136.38,72
2019-12-14 22:30:36.236938,DEF,sell,141.56,15
2019-12-16 09:04:31.226950,ABC,sell,139.66,233
2019-12-16 21:23:20.385642,DEF,buy,135.69,60
2019-12-18 08:28:34.654300,ABC,buy,138.65,8
2019-12-19 10:09:39.714313,DEF,sell,142.37,133
2019-12-20 01:23:49.253222,ABC,buy,137.55,134
2019-12-20 19:20:50.625308,ABC,sell,142.56,135
2019-12-21 19:58:33.851193,ABC,sell,143.6,43
2019-12-22 17:45:42.102989,ABC,sell,144.84,41
2019-12-23 12:27:25.503619,ABC,sell,141.97,107
2019-12-24 03:39:06.646835,DEF,sell,141.73,2
2019-12-24 21:51:37.386945,ABC,sell,144.61,226
2019-12-25 18:16:34.089004,DEF,sell,145.54,162
2019-12-26 09:54:49.794693,DEF,sell,142.0,0
2019-12-27 20:51:41.328747,ABC,sell,144.06,64
2019-12-29 03:30:49.915927,DEF,buy,139.88,104
2019-12-30 15:12:14.623705,DEF,sell,144.89,137
2019-12-31 05:24:16.245877,ABC,buy,141.11,9
2020-01-01 08:04:29.021195,DEF,sell,144.41,66
2020-01-02 12:46:11.450500,DEF,sell,144.11,7
2020-01-03 13:05:21.728279,ABC,buy,138.62,56
2020-01-04 04:27:47.210948,ABC,sell,141.5,217
2020-01-04 23:58:06.560175,DEF,buy,137.89,173
2020-01-06 02:36:12.518124,DEF,buy,139.72,85
2020-01-07 08:05:32.726370,ABC,sell,143.69,205
2020-01-08 08:51:51.939638,DEF,sell,142.12,62
2020-01-09 10:17:04.098355,DEF,sell,142.11,142
2020-01-10 07:15:56.001890,ABC,buy,139.37,56
2020-01-11 10:11:14.093955,ABC,sell,142.04,92
2020-01-12 02:22:55.497325,ABC,buy,137.69,198
2020-01-13 09:39:46.501455,ABC,buy,137.96,39
2020-01-14 15:45:35.616131,DEF,buy,137.56,27
2020-01-15 12:13:10.003038,ABC,buy,137.03,101
2020-01-16 01:59:56.947895,DEF,sell,139.66,45
2020-01-16 19:43:15.169704,ABC,buy,137.81,4
2020-01-17 13:21:04.838348,ABC,sell,138.95,203
2020-01-18 18:01:55.239443,DEF,sell,137.65,91
2020-01-19 20:07:04.625411,ABC,sell,136.72,82
2020-01-20 20:48:41.528047,ABC,buy,132.32,119
2020-01-22 08:42:14.591094,DEF,sell,134.64,3
2020-01-23 00:10:32.545444,DEF,sell,135.33,158
2020-01-24 06:58:02.471912,DEF,sell,134.39,152
2020-01-25 10:18:24.161512,ABC,buy,132.81,64
2020-01-26 01:03:22.263458,DEF,buy,134.43,150
2020-01-26 19:54:20.806665,DEF,sell,139.07,6
2020-01-27 13:45:21.370554,ABC,sell,137.56,154
2020-01-28 09:11:15.014497,DEF,buy,133.2,159
2020-01-29 02:13:54.438680,ABC,sell,136.56,152
2020-01-29 16:17:59.039199,DEF,sell,138.9,59
2020-01-30 06:55:11.158342,DEF,buy,135.32,288
2020-01-31 09:58:41.350958,DEF,sell,135.4,56
2020-02-01 00:16:21.526178,ABC,buy,130.82,41
2020-02-02 10:47:47.420986,DEF,sell,132.31,28
2020-02-03 15:44:39.119071,ABC,buy,131.9,159
2020-02-05 02:42:10.805304,DEF,sell,134.0,216
2020-02-06 14:21:58.289290,ABC,buy,130.13,144
2020-02-07 12:49:34.448742,DEF,buy,131.0,83
2020-02-08 09:41:01.922889,ABC,buy,132.11,91
2020-02-09 10:13:39.403488,DEF,sell,135.4,148
2020-02-10 15:00:31.236576,DEF,sell,134.81,57
2020-02-12 02:34:31.050450,ABC,buy,130.39,82
2020-02-12 23:31:02.390711,ABC,sell,134.91,13
2020-02-14 09:30:31.089353,DEF,sell,133.7,43
2020-02-15 15:14:35.824625,ABC,sell,132.54,39
2020-02-16 11:04:35.961514,DEF,buy,128.82,120
2020-02-17 00:52:38.644194,ABC,buy,127.27,57
2020-02-18 11:50:41.867743,ABC,buy,128.58,248
2020-02-19 22:25:06.079293,ABC,sell,132.73,108
2020-02-21 06:55:17.916969,DEF,buy,131.0,3
2020-02-22 17:49:26.163364,DEF,sell,132.55,10
2020-02-24 01:56:34.331627,ABC,buy,127.89,50
2020-02-24 17:26:58.439144,DEF,buy,125.08,54
2020-02-25 19:34:59.675583,ABC,sell,129.16,241
2020-02-26 09:35:59.962100,ABC,buy,126.36,22
2020-02-27 01:52:29.043564,ABC,sell,128.21,137
2020-02-28 12:08:41.913198,ABC,sell,130.45,6
2020-02-29 01:29:41.072469,ABC,sell,130.0,57
2020-02-29 15:37:48.012903,ABC,sell,130.25,63
2020-03-01 21:09:00.300707,ABC,sell,131.25,99
2020-03-03 04:12:03.468618,DEF,sell,130.97,198
2020-03-04 00:42:28.369708,DEF,sell,130.22,61
2020-03-05 03:10:39.370586,ABC,buy,127.43,121
2020-03-06 04:03:36.779682,DEF,buy,126.03,205
2020-03-07 03:31:41.510136,ABC,buy,126.15,5
2020-03-08 12:58:41.185930,ABC,buy,126.6,64
2020-03-09 08:26:06.981541,DEF,buy,127.52,101
2020-03-09 21:00:34.331684,DEF,buy,128.83,1
2020-03-11 04:30:04.854084,ABC,buy,131.41,66
2020-03-12 15:20:51.780073,DEF,sell,135.0,37
2020-03-14 00:40:58.009144,ABC,sell,133.67,113
2020-03-14 23:33:04.119272,DEF,buy,130.62,50
2020-03-16 07:34:10.008498,ABC,buy,129.77,194
2020-03-17 07:11:32.059053,DEF,buy,131.08,61
2020-03-17 20:09:22.608194,ABC,buy,133.61,126
2020-03-18 23:36:19.021289,ABC,buy,135.82,140
2020-03-20 00:29:11.037802,DEF,buy,137.42,3
2020-03-21 09:21:21.516028,DEF,buy,134.91,67
2020-03-22 05:29:39.016806,ABC,sell,137.39,25
2020-03-23 02:40:51.381952,DEF,sell,137.26,3
2020-03-24 10:29:27.218283,ABC,sell,136.13,42
2020-03-25 17:15:21.024745,DEF,sell,136.41,14
2020-03-26 13:27:26.159282,DEF,buy,132.63,25
2020-03-27 05:37:03.044155,DEF,sell,135.67,81
2020-03-28 00:11:34.621312,ABC,sell,138.61,14
2020-03-28 22:58:01.566486,DEF,sell,137.3,9
2020-03-29 11:31:21.108673,DEF,buy,134.44,142
2020-03-30 15:28:34.890661,DEF,buy,133.31,81
2020-03-31 10:31:27.569305,DEF,sell,135.07,119
2020-04-01 12:59:01.241598,DEF,buy,134.94,30
2020-04-02 04:57:58.635332,DEF,sell,135.45,77
2020-04-03 03:15:28.379371,DEF,buy,131.04,108
2020-04-04 05:08:35.647714,DEF,sell,135.62,75
2020-04-05 09:15:37.375667,ABC,buy,132.68,53
2020-04-06 18:19:02.399983,ABC,buy,131.66,29
2020-04-08 04:20:34.768440,ABC,sell,138.63,202
2020-04-08 19:38:15.511325,ABC,sell,135.23,101
2020-04-10 00:24:24.801399,ABC,sell,136.04,139
2020-04-11 10:23:32.618744,ABC,buy,132.3,74
2020-04-12 05:19:07.041174,ABC,sell,135.81,20
2020-04-13 04:54:00.768030,DEF,buy,132.83,71
2020-04-14 09:22:22.459286,DEF,buy,134.33,225
2020-04-15 03:05:33.726289,DEF,buy,134.04,172
2020-04-16 12:56:06.764705,ABC,sell,136.39,156
2020-04-17 18:39:24.973103,DEF,buy,133.85,170
2020-04-18 12:45:40.498632,ABC,buy,134.12,70
2020-04-19 07:36:49.380143,DEF,buy,133.01,7
2020-04-20 17:56:20.486915,ABC,buy,130.28,0
2020-04-22 02:44:51.145294,DEF,sell,134.33,26
2020-04-23 13:56:16.670102,ABC,buy,131.92,41
2020-04-24 11:12:57.815497,DEF,buy,132.86,26
2020-04-25 20:35:09.542041,DEF,buy,132.93,85
2020-04-27 02:43:01.117950,DEF,sell,135.34,25
2020-04-27 23:16:43.445135,ABC,buy,132.48,47
2020-04-29 04:23:39.644623,ABC,buy,134.39,40
2020-04-30 16:15:03.635462,ABC,buy,132.65,77
2020-05-01 22:09:10.825776,DEF,buy,131.43,9
2020-05-03 02:23:29.164802,DEF,sell,134.46,28
2020-05-04 09:53:36.153276,DEF,sell,132.5,71
2020-05-04 22:50:11.825373,ABC,sell,131.2,72
2020-05-05 11:33:12.130632,DEF,sell,130.99,132
2020-05-06 06:35:58.523532,ABC,buy,129.01,66
2020-05-06 23:48:11.020231,ABC,sell,130.25,115
2020-05-07 15:51:48.138843,DEF,sell,131.56,72
2020-05-09 00:05:05.054775,ABC,sell,131.47,46
2020-05-10 05:46:12.550763,DEF,sell,130.2,112
2020-05-11 05:58:56.886138,DEF,buy,126.55,10
2020-05-12 06:26:15.881957,DEF,buy,124.34,3
2020-05-13 12:22:02.086260,DEF,buy,123.15,71
2020-05-14 09:24:22.490910,DEF,sell,126.25,5
2020-05-15 01:27:23.687095,DEF,sell,126.83,36
2020-05-16 00:35:52.237621,ABC,sell,125.84,70
2020-05-16 21:09:31.958083,ABC,sell,123.92,29
2020-05-18 02:02:12.578094,DEF,sell,124.8,126
2020-05-19 11:03:28.420471,ABC,sell,123.27,138
2020-05-20 04:29:58.027985,DEF,buy,121.65,30
2020-05-21 00:51:46.480736,DEF,buy,123.76,101
2020-05-21 13:23:46.499756,DEF,buy,123.3,70
2020-05-22 22:31:10.926553,ABC,sell,128.84,109
2020-05-23 10:37:29.632318,ABC,buy,125.38,175
2020-05-24 01:14:47.139924,DEF,sell,127.35,51
2020-05-24 18:13:36.395073,ABC,sell,129.52,37
2020-05-26 03:27:18.013193,DEF,sell,126.84,67
2020-05-27 10:44:33.327606,ABC,buy,125.76,29
2020-05-28 11:44:38.296613,DEF,sell,131.0,64
2020-05-29 01:20:59.840169,ABC,buy,127.59,82
2020-05-30 10:33:20.418294,DEF,sell,131.86,138
2020-05-31 07:32:30.776366,ABC,sell,129.44,14
2020-06-01 17:06:11.636984,DEF,buy,126.96,24
2020-06-03 02:06:48.052171,ABC,sell,129.28,58
2020-06-03 14:33:59.200641,DEF,sell,128.14,142
2020-06-04 03:12:28.830566,ABC,buy,126.12,279
2020-06-04 18:13:36.423394,DEF,buy,126.9,40
2020-06-05 22:55:50.922403,DEF,sell,127.52,66
2020-06-07 02:07:11.492616,DEF,sell,127.73,14
2020-06-07 22:21:24.979990,DEF,sell,126.62,39
2020-06-09 00:33:24.992573,ABC,buy,124.07,48
2020-06-10 11:16:06.163047,DEF,buy,124.66,7
2020-06-11 01:51:11.849586,DEF,buy,124.08,21
2020-06-12 03:14:05.139082,ABC,buy,125.07,198
2020-06-12 18:29:06.953386,DEF,sell,126.51,1
2020-06-13 23:33:06.542991,DEF,buy,124.62,2
2020-06-14 21:56:04.049079,DEF,sell,126.03,51
2020-06-16 03:55:18.999235,ABC,sell,125.05,80
2020-06-17 07:05:15.793769,DEF,sell,125.15,101
2020-06-18 04:30:08.270672,ABC,buy,123.98,2
2020-06-19 02:50:19.699892,ABC,buy,123.45,7
2020-06-19 17:27:42.020439,DEF,buy,121.89,67
2020-06-20 06:12:30.674699,ABC,buy,123.61,39
2020-06-21 12:41:46.877725,DEF,sell,125.05,139
2020-06-22 06:05:22.146894,DEF,buy,122.95,161
2020-06-23 07:29:59.824055,ABC,buy,122.57,55
2020-06-24 04:10:29.051035,ABC,sell,126.85,103
2020-06-25 00:23:36.772399,ABC,sell,126.65,96
2020-06-26 04:33:23.037957,ABC,buy,127.27,65
2020-06-27 16:24:34.817022,DEF,sell,128.28,100
2020-06-29 01:52:42.741314,ABC,sell,131.6,80
2020-06-30 08:54:47.904138,DEF,sell,132.56,166
2020-07-01 08:20:41.364188,ABC,buy,127.9,23
2020-07-02 12:58:33.619933,ABC,sell,129.54,21
2020-07-03 16:41:53.810106,DEF,buy,125.83,0
2020-07-05 02:06:43.986193,ABC,sell,128.99,28
2020-07-06 02:48:59.022591,DEF,buy,125.54,22
2020-07-06 21:32:00.564465,ABC,buy,126.61,118
2020-07-08 09:13:24.631751,DEF,sell,130.18,49
2020-07-09 05:23:25.038269,ABC,buy,126.04,194
2020-07-10 02:24:56.503888,ABC,buy,125.67,12
2020-07-10 20:36:23.709153,DEF,buy,127.69,159
2020-07-11 20:12:14.254790,DEF,sell,130.65,24
2020-07-13 04:45:02.672653,ABC,buy,127.45,120
2020-07-13 20:05:32.147020,ABC,sell,129.89,110
2020-07-15 03:10:32.576700,ABC,buy,127.27,12
2020-07-16 05:44:27.063993,DEF,sell,131.17,36
2020-07-17 03:13:28.860035,ABC,buy,127.6,56
2020-07-18 02:33:49.082958,ABC,sell,130.82,141
2020-07-19 06:28:27.861161,DEF,buy,125.66,83
2020-07-20 10:02:04.113666,ABC,sell,129.81,53
2020-07-21 12:41:25.863254,ABC,buy,126.49,48
2020-07-22 23:17:59.393307,ABC,sell,128.61,12
2020-07-23 15:49:44.113466,DEF,sell,132.07,58
2020-07-24 13:38:27.625819,DEF,buy,125.93,129
2020-07-25 07:52:50.997227,DEF,buy,125.07,185
2020-07-26 01:14:41.167628,ABC,sell,127.63,113
2020-07-27 01:00:20.624661,DEF,buy,123.58,67
2020-07-27 22:13:55.013416,DEF,buy,123.44,51
2020-07-28 14:16:31.792301,DEF,sell,127.37,48
2020-07-29 12:10:39.164814,DEF,sell,128.65,119
2020-07-30 18:25:17.273546,ABC,sell,127.11,75
2020-07-31 15:44:46.892615,DEF,buy,122.88,71
2020-08-01 20:15:15.559460,DEF,sell,126.9,74
2020-08-02 19:36:41.709307,ABC,buy,122.38,210
2020-08-03 19:34:15.056973,ABC,sell,125.46,45
2020-08-05 01:10:27.738687,ABC,sell,125.87,42
2020-08-05 18:36:55.491272,DEF,buy,121.63,87
2020-08-06 11:05:49.524126,ABC,sell,126.0,114
2020-08-07 06:43:10.416193,DEF,sell,128.01,18
2020-08-07 20:29:57.975905,ABC,sell,127.55,91
2020-08-09 06:37:43.924074,DEF,buy,125.14,80
2020-08-10 15:57:06.481301,DEF,buy,121.25,85
2020-08-12 02:28:12.195248,ABC,buy,122.04,35
2020-08-12 18:31:39.207810,ABC,buy,120.79,8
2020-08-13 12:26:34.576155,DEF,sell,125.96,37
2020-08-14 14:05:34.690714,ABC,buy,123.65,45
2020-08-15 19:01:26.716254,ABC,buy,123.29,114
2020-08-16 23:57:23.702950,DEF,sell,127.87,45
2020-08-17 13:07:00.473569,ABC,buy,125.77,73
2020-08-18 07:01:12.856649,DEF,buy,124.35,114
2020-08-19 15:17:46.809991,DEF,sell,126.95,13
2020-08-20 08:05:08.358697,DEF,buy,123.72,105
2020-08-21 17:09:50.753097,DEF,buy,126.69,114
2020-08-22 23:59:19.752681,ABC,buy,125.85,21
2020-08-24 01:02:54.494601,ABC,buy,125.54,68
2020-08-25 01:29:19.361943,ABC,sell,127.26,95
2020-08-26 04:34:42.395297,DEF,sell,125.63,25
2020-08-27 11:17:48.552328,DEF,sell,123.67,147
2020-08-28 08:03:24.198157,ABC,sell,123.26,12
2020-08-29 19:33:13.721604,ABC,sell,125.61,207
2020-08-30 19:44:40.149046,DEF,buy,122.33,131
2020-09-01 00:52:47.248633,ABC,sell,126.24,102
2020-09-01 23:45:53.978412,ABC,sell,127.83,14
2020-09-03 06:32:42.113118,ABC,sell,122.86,59
2020-09-04 17:18:50.034668,ABC,sell,123.61,57
2020-09-05 09:26:01.779347,DEF,buy,121.25,121
2020-09-06 06:36:17.683962,ABC,buy,122.47,24
2020-09-07 01:04:43.571093,DEF,sell,124.12,22
2020-09-07 15:03:45.601642,ABC,buy,121.74,32
2020-09-08 14:00:38.733405,ABC,buy,121.4,40
2020-09-09 08:43:40.880251,DEF,buy,123.33,15
2020-09-10 00:48:17.343375,DEF,sell,128.63,162
2020-09-10 17:04:21.894764,DEF,sell,129.08,2
2020-09-11 17:28:50.024087,DEF,buy,127.28,21
2020-09-12 08:14:22.363868,ABC,sell,130.66,69
2020-09-13 11:46:09.408750,ABC,sell,131.7,3
2020-09-14 16:34:49.835274,ABC,sell,131.79,159
2020-09-16 03:53:08.101351,DEF,buy,125.95,3
2020-09-16 16:07:07.667319,DEF,buy,124.15,100
2020-09-17 09:20:25.207493,DEF,buy,126.45,207
2020-09-18 11:19:26.897546,ABC,buy,128.48,217
2020-09-19 12:02:58.805873,ABC,buy,126.05,83
2020-09-20 08:46:33.356347,ABC,buy,126.11,10
2020-09-21 17:01:16.487348,DEF,sell,128.16,110
2020-09-22 15:26:41.222271,DEF,sell,129.23,102
2020-09-23 21:54:37.284992,ABC,sell,130.04,28
2020-09-24 19:33:54.361278,DEF,sell,130.72,83
2020-09-25 18:22:55.061476,ABC,buy,128.09,92
2020-09-27 03:16:52.927025,ABC,buy,127.75,114
2020-09-27 15:39:47.327081,DEF,sell,130.01,50
2020-09-28 08:23:45.140760,ABC,sell,130.16,86
2020-09-28 21:44:42.442398,DEF,buy,127.44,143
2020-09-30 03:28:54.875096,DEF,buy,128.27,18
2020-10-01 07:36:25.313724,ABC,buy,126.66,52
2020-10-02 00:49:32.959149,DEF,sell,126.69,135
2020-10-03 02:03:04.056650,DEF,buy,126.6,63
2020-10-04 05:44:36.441120,ABC,buy,124.46,216
2020-10-04 20:06:50.970842,DEF,buy,124.3,79
2020-10-05 10:32:56.551653,DEF,buy,123.18,133
2020-10-06 15:37:00.045598,DEF,buy,122.32,134
2020-10-07 21:11:05.684729,ABC,sell,127.45,177
2020-10-08 23:18:08.759006,DEF,sell,126.94,54
2020-10-10 09:43:32.213339,DEF,buy,125.41,152
2020-10-11 13:09:57.231102,ABC,sell,128.37,72
2020-10-12 16:17:28.052139,ABC,buy,125.43,93
2020-10-13 16:42:31.254255,ABC,buy,124.18,28
2020-10-14 20:34:33.256678,DEF,sell,126.55,41
2020-10-15 16:40:12.322651,DEF,sell,126.7,21
2020-10-16 12:19:43.942588,ABC,buy,124.88,13
2020-10-17 23:12:50.912586,DEF,buy,124.74,16
2020-10-18 17:12:32.751737,ABC,buy,126.74,81
2020-10-19 15:10:29.248084,ABC,buy,125.2,58
2020-10-20 09:48:28.540525,ABC,sell,127.44,95
2020-10-21 01:46:52.493647,DEF,sell,127.87,22
2020-10-21 23:07:46.581980,DEF,sell,129.44,3
2020-10-22 14:57:38.265245,ABC,sell,128.68,46
2020-10-23 12:54:09.915104,DEF,buy,126.42,3
2020-10-24 03:43:46.959181,DEF,buy,126.15,15
2020-10-25 02:01:21.911811,ABC,buy,124.37,107
2020-10-25 16:42:04.207971,ABC,buy,125.48,104
2020-10-26 18:04:24.843063,ABC,sell,129.53,129
2020-10-27 22:25:26.858150,ABC,sell,128.76,152
2020-10-29 03:22:50.378063,ABC,buy,122.9,36
2020-10-29 17:37:52.454426,ABC,buy,120.76,24
2020-10-30 10:51:28.766204,ABC,sell,124.12,200
2020-10-31 01:43:15.195557,ABC,buy,121.55,89
2020-11-01 12:49:28.429366,ABC,sell,123.22,96
2020-11-02 16:24:50.866723,DEF,buy,119.17,29
2020-11-03 21:11:05.126328,ABC,sell,122.59,152
2020-11-04 19:49:55.852007,DEF,sell,122.71,55
2020-11-05 23:10:28.276817,ABC,sell,119.58,28
2020-11-06 14:25:41.278962,DEF,buy,118.25,10
2020-11-07 14:59:27.841074,DEF,sell,122.24,43
2020-11-08 21:11:09.626852,DEF,sell,120.15,58
2020-11-10 05:31:06.659580,ABC,buy,118.2,146
2020-11-10 22:10:06.302198,DEF,buy,118.97,202
2020-11-11 21:01:30.541409,DEF,sell,120.19,34
2020-11-12 19:09:01.405088,DEF,buy,118.92,23
2020-11-13 11:54:26.443620,DEF,sell,124.34,83
2020-11-14 00:01:20.778598,ABC,sell,123.83,19
2020-11-14 14:33:30.935971,ABC,sell,123.88,88
2020-11-15 16:59:31.381572,ABC,buy,117.78,59
2020-11-16 11:33:05.037229,ABC,buy,119.16,56
2020-11-17 00:11:13.274292,DEF,buy,119.92,107
2020-11-18 07:41:41.259854,ABC,buy,118.9,33
2020-11-19 19:35:33.903451,ABC,buy,119.98,33
2020-11-20 16:55:36.151619,ABC,buy,117.94,33
2020-11-21 23:48:26.585315,ABC,sell,121.33,61
2020-11-23 02:41:19.685302,DEF,buy,120.1,7
2020-11-23 23:24:53.684065,ABC,buy,120.25,55
2020-11-24 18:42:13.948405,DEF,sell,123.91,213
2020-11-25 15:23:55.487930,DEF,buy,121.74,109
2020-11-26 20:36:21.667343,DEF,buy,119.2,46
2020-11-28 05:38:25.363005,ABC,buy,116.48,167
2020-11-29 14:26:25.029210,ABC,sell,121.65,75
2020-12-01 01:44:18.529028,ABC,sell,122.92,25
2020-12-02 02:47:46.469036,DEF,buy,118.94,123
2020-12-02 15:26:17.060808,ABC,buy,118.03,147
2020-12-03 14:52:01.629276,DEF,sell,121.91,37
2020-12-04 08:08:01.271633,DEF,sell,123.11,73
2020-12-05 16:30:27.725633,DEF,buy,118.09,41
2020-12-06 11:32:22.140443,ABC,sell,123.05,79
2020-12-07 01:13:30.796687,ABC,sell,126.22,112
2020-12-08 11:07:32.564828,DEF,buy,120.03,109
2020-12-09 03:59:44.285463,ABC,buy,117.59,188
2020-12-09 21:27:26.647342,ABC,sell,122.52,73
2020-12-11 06:55:06.649551,ABC,buy,121.11,27
2020-12-11 22:27:54.300770,DEF,buy,119.41,63
2020-12-13 09:59:59.141633,ABC,buy,122.25,131
2020-12-14 00:34:14.748964,DEF,buy,123.23,102
2020-12-14 20:13:26.952904,DEF,sell,127.58,149
2020-12-15 22:34:07.058778,DEF,buy,123.43,129
2020-12-17 01:14:40.897168,DEF,buy,125.64,92
2020-12-17 14:28:32.276938,ABC,sell,125.15,309
2020-12-18 07:30:59.061966,DEF,sell,127.13,29
2020-12-19 13:05:55.780565,ABC,buy,120.76,48
2020-12-20 14:36:43.585436,ABC,buy,120.58,100
2020-12-21 03:33:21.919410,ABC,buy,120.83,29
2020-12-22 11:49:26.761682,DEF,buy,119.26,44
2020-12-23 09:00:45.378770,ABC,sell,124.14,22
2020-12-24 03:03:14.104504,DEF,buy,118.8,16
2020-12-24 15:23:26.548499,DEF,sell,127.65,51
2020-12-25 11:33:19.260163,ABC,sell,125.06,114
2020-12-26 19:36:54.776772,ABC,buy,121.71,23
2020-12-27 20:56:24.035359,ABC,buy,118.53,34
2020-12-28 18:05:15.813060,DEF,buy,119.8,18
2020-12-29 10:21:43.634993,ABC,buy,118.92,173
2020-12-29 23:38:52.139688,ABC,buy,118.39,85
2020-12-31 05:02:16.288474,DEF,buy,116.78,166
2021-01-01 15:17:33.686096,DEF,sell,118.91,168
2021-01-03 02:22:52.821719,ABC,sell,118.35,70
2021-01-04 00:48:18.360331,DEF,buy,113.83,0
2021-01-04 17:54:08.620296,DEF,buy,114.1,200
2021-01-05 12:46:15.092123,DEF,buy,113.91,16
2021-01-06 02:11:05.578544,ABC,buy,115.23,69
2021-01-07 13:09:45.566190,DEF,sell,118.01,88
2021-01-08 06:21:10.003102,ABC,buy,112.51,109
2021-01-08 23:31:54.673983,DEF,sell,116.39,10
2021-01-10 04:44:38.021154,DEF,sell,114.4,62
2021-01-11 15:51:29.192791,ABC,sell,113.51,129
2021-01-13 01:43:07.240912,DEF,buy,107.88,35
2021-01-14 08:18:15.355938,ABC,buy,108.94,13
2021-01-15 13:20:42.715500,DEF,sell,114.24,250
2021-01-16 17:25:22.252359,DEF,buy,109.96,88
2021-01-17 16:39:18.720092,ABC,sell,114.8,14
2021-01-18 05:56:10.165344,ABC,sell,115.84,7
2021-01-19 01:01:00.463279,ABC,buy,112.64,153
2021-01-19 14:56:48.596338,ABC,sell,115.54,31
2021-01-20 23:52:09.918983,ABC,buy,112.95,53
2021-01-21 12:00:32.603328,DEF,buy,113.27,109
2021-01-22 23:22:27.288500,DEF,buy,111.0,119
2021-01-24 04:12:45.505914,DEF,buy,109.82,29
2021-01-25 13:59:48.774501,DEF,buy,108.82,35
2021-01-26 17:06:32.296159,ABC,sell,113.49,41
2021-01-27 20:02:06.444530,ABC,buy,107.78,20
2021-01-28 17:48:41.180312,DEF,buy,107.1,8
2021-01-29 22:40:20.596819,DEF,sell,109.88,69
2021-01-31 04:35:14.320930,DEF,buy,107.27,48
2021-02-01 07:34:15.329402,ABC,sell,109.39,215
2021-02-02 17:56:29.719959,DEF,sell,107.29,127
2021-02-03 19:54:25.069360,ABC,buy,104.43,89
2021-02-04 14:52:45.225247,DEF,buy,106.45,7
2021-02-05 18:21:17.103384,DEF,buy,103.85,14
2021-02-06 07:51:38.025965,ABC,buy,102.89,181
2021-02-07 18:41:17.358823,ABC,buy,104.04,75
2021-02-08 19:25:06.228589,DEF,buy,104.29,49
2021-02-10 05:41:10.017342,ABC,sell,109.53,147
2021-02-11 07:36:12.511603,ABC,buy,105.48,74
2021-02-12 18:50:51.674623,DEF,sell,110.58,113
2021-02-14 05:27:05.587898,DEF,sell,106.38,26
2021-02-15 06:51:02.102883,DEF,buy,104.42,70
2021-02-16 00:36:18.096018,ABC,buy,101.66,63
2021-02-16 14:45:18.566394,DEF,sell,107.77,15
2021-02-17 02:49:50.327176,ABC,buy,103.38,25
2021-02-17 21:50:51.738951,DEF,sell,104.32,202
2021-02-18 13:13:44.524198,DEF,buy,101.18,35
2021-02-19 21:24:14.954714,ABC,buy,100.68,58
2021-02-21 01:46:40.357696,DEF,buy,102.14,98
2021-02-21 19:44:00.236779,DEF,sell,105.75,119
2021-02-22 09:53:34.936695,DEF,sell,104.84,40
2021-02-23 07:36:41.546628,DEF,sell,107.11,125
2021-02-23 23:41:33.616709,DEF,sell,103.21,68
2021-02-24 23:38:52.603776,DEF,sell,103.56,56
2021-02-25 15:20:48.498561,ABC,buy,102.18,135
2021-02-26 15:03:55.703114,ABC,sell,109.36,100
2021-02-27 07:23:29.941885,ABC,buy,104.05,159
2021-02-28 12:27:15.318184,ABC,buy,103.02,151
2021-03-01 14:25:07.540528,DEF,buy,103.06,114
2021-03-02 07:57:26.220017,DEF,buy,102.64,130
2021-03-03 15:46:28.070335,DEF,buy,102.02,11
2021-03-05 03:10:34.239690,DEF,buy,104.01,69
2021-03-05 17:17:05.980588,ABC,sell,106.76,126
2021-03-07 02:31:34.746168,DEF,buy,104.84,129
2021-03-07 20:34:46.966059,DEF,buy,106.69,25
2021-03-08 22:46:23.756738,ABC,buy,106.75,91
2021-03-09 19:03:34.309904,ABC,buy,107.73,18
2021-03-10 10:30:49.545860,DEF,buy,106.38,90
2021-03-11 08:07:51.938629,DEF,buy,108.46,8
2021-03-12 19:48:38.799806,ABC,sell,112.87,24
2021-03-13 17:10:52.261999,ABC,buy,109.44,121
2021-03-15 02:05:00.431031,ABC,buy,110.34,18
2021-03-15 15:10:20.976124,DEF,sell,113.44,40
2021-03-16 09:20:30.880122,ABC,sell,114.38,208
2021-03-17 03:01:59.531501,DEF,sell,114.4,27
2021-03-17 16:14:52.771750,DEF,buy,110.26,97
2021-03-18 13:50:22.474474,DEF,buy,105.35,86
2021-03-19 11:31:27.985223,ABC,sell,108.96,108
2021-03-20 06:47:59.735685,DEF,buy,108.12,41
2021-03-21 16:05:32.953119,ABC,sell,113.1,41
2021-03-22 16:05:51.120872,ABC,buy,108.92,13
2021-03-23 16:44:01.959779,DEF,sell,114.75,55
2021-03-24 22:47:53.453842,DEF,buy,111.19,93
2021-03-26 01:18:01.997170,DEF,sell,115.52,238
2021-03-27 06:18:13.207451,ABC,buy,113.76,46
2021-03-28 15:00:12.824001,ABC,sell,115.39,3
2021-03-29 10:08:38.026485,ABC,buy,114.09,117
2021-03-30 21:02:34.087408,DEF,sell,116.42,23
2021-04-01 01:58:54.457532,ABC,buy,113.76,199
2021-04-02 02:14:37.150150,DEF,sell,118.64,113
2021-04-02 23:01:49.947526,ABC,buy,114.51,43
2021-04-03 16:26:29.455556,DEF,buy,115.4,10
2021-04-04 15:35:26.424528,ABC,sell,119.59,102
2021-04-05 16:51:46.699822,ABC,sell,115.87,190
2021-04-06 09:24:24.095421,ABC,sell,116.85,70
2021-04-07 00:20:18.915432,ABC,sell,118.7,106
2021-04-07 13:38:40.296385,DEF,buy,116.2,78
2021-04-08 07:53:12.242649,DEF,buy,117.5,96
2021-04-08 22:23:29.192739,ABC,buy,116.42,83
2021-04-10 00:07:24.341756,DEF,sell,117.0,82
2021-04-10 20:28:49.437393,DEF,sell,118.44,175
2021-04-11 09:23:44.781436,DEF,sell,117.55,78
2021-04-12 12:53:41.167397,ABC,sell,116.31,13
2021-04-13 12:05:59.676897,DEF,buy,113.76,21
2021-04-14 05:10:53.945865,ABC,buy,114.3,75
2021-04-15 15:13:28.700392,ABC,sell,116.07,20
2021-04-16 08:47:15.196973,ABC,buy,115.36,42
2021-04-17 11:27:00.058610,ABC,sell,119.34,8
2021-04-18 08:34:29.626946,DEF,buy,115.89,72
2021-04-19 16:14:23.907597,ABC,buy,115.56,31
2021-04-20 22:09:58.292767,ABC,buy,115.66,9
2021-04-21 20:27:08.653027,ABC,sell,118.99,24
2021-04-23 01:22:07.257668,ABC,buy,115.71,43
2021-04-24 08:45:21.210176,ABC,sell,120.56,58
2021-04-25 11:02:37.794321,ABC,buy,116.22,37
2021-04-26 08:30:48.846698,ABC,sell,120.8,34
2021-04-27 10:10:48.258888,ABC,sell,119.12,63
2021-04-28 13:52:47.924229,DEF,buy,116.83,51
2021-04-29 17:00:15.901014,ABC,sell,119.06,18
2021-05-01 00:19:26.922539,ABC,buy,115.83,36
2021-05-02 08:38:40.777967,DEF,sell,119.46,34
2021-05-03 18:29:48.129340,DEF,buy,118.37,103
2021-05-05 03:24:20.363101,DEF,buy,116.57,150
2021-05-06 14:34:58.840875,ABC,buy,116.91,243
2021-05-07 08:22:41.316448,ABC,buy,115.47,15
2021-05-08 06:59:43.124206,ABC,buy,117.1,64
2021-05-09 08:28:38.040660,DEF,buy,118.18,117
2021-05-10 16:42:04.305276,DEF,sell,121.52,112
2021-05-11 21:32:41.364344,ABC,buy,117.38,38
2021-05-13 01:01:38.332890,DEF,buy,116.71,3
2021-05-13 13:55:44.819401,ABC,sell,118.31,117
2021-05-14 09:29:56.638733,DEF,sell,118.7,37
2021-05-15 00:34:12.052547,ABC,sell,117.57,153
2021-05-15 17:57:39.995869,DEF,sell,118.42,59
2021-05-16 13:29:17.093242,ABC,buy,112.97,148
2021-05-17 07:33:10.410936,ABC,sell,115.7,75
2021-05-18 07:22:37.527686,DEF,buy,113.53,57
2021-05-19 00:38:18.937402,DEF,sell,116.02,209
2021-05-19 15:04:53.077144,DEF,sell,118.36,132
2021-05-20 08:52:01.026407,DEF,sell,117.83,83
2021-05-21 02:14:39.834657,DEF,sell,116.9,162
2021-05-21 18:43:37.691569,DEF,sell,115.9,39
2021-05-22 22:14:13.713722,DEF,buy,113.81,46
2021-05-23 18:07:46.454445,DEF,buy,111.77,96
2021-05-24 19:04:27.206707,DEF,sell,115.3,68
2021-05-25 15:04:26.744248,DEF,sell,114.39,4
2021-05-26 04:06:59.937896,ABC,buy,112.01,3
2021-05-27 13:50:59.521234,ABC,buy,112.33,95
2021-05-28 05:38:55.585054,DEF,sell,114.74,303
2021-05-29 00:39:09.031210,ABC,sell,112.87,16
2021-05-30 12:30:58.748033,ABC,sell,112.95,74
2021-05-31 14:10:45.160668,DEF,buy,111.7,29
2021-06-01 07:35:58.329524,DEF,sell,113.98,173
2021-06-02 02:19:03.517992,ABC,buy,113.66,48
2021-06-02 15:46:49.635860,DEF,buy,114.0,133
2021-06-03 09:55:01.099800,ABC,buy,113.51,37
2021-06-03 22:44:38.681861,ABC,buy,113.23,97
2021-06-05 08:04:53.206870,ABC,buy,113.43,59
2021-06-06 04:33:18.818918,DEF,buy,112.87,51
2021-06-07 01:43:20.576320,ABC,sell,115.97,11
2021-06-08 02:54:57.007463,ABC,buy,113.87,7
2021-06-09 07:32:23.568059,DEF,buy,114.52,81
2021-06-10 18:04:38.215573,ABC,sell,116.53,43
2021-06-12 02:36:43.296628,DEF,buy,113.66,183
2021-06-13 05:19:24.199658,DEF,buy,112.77,3
2021-06-14 12:32:07.904860,DEF,sell,116.09,53
2021-06-15 20:46:13.375458,ABC,sell,115.3,9
2021-06-16 22:03:57.935610,ABC,buy,112.73,17
2021-06-18 07:30:27.650440,ABC,sell,115.63,3
2021-06-19 07:19:04.884789,ABC,sell,115.33,89
2021-06-20 08:53:32.551015,DEF,sell,113.29,87
2021-06-21 09:39:42.410464,ABC,sell,113.99,99
2021-06-22 06:05:21.199590,ABC,buy,113.04,38
2021-06-23 16:09:43.335051,DEF,sell,114.18,8
2021-06-25 03:45:20.939413,ABC,buy,110.96,152
2021-06-26 03:37:22.175790,DEF,buy,110.62,74
2021-06-27 01:43:23.891805,DEF,buy,110.11,121
2021-06-27 14:18:11.695961,ABC,buy,108.33,68
2021-06-28 16:42:31.469368,ABC,sell,110.3,67
2021-06-30 04:34:25.897292,ABC,buy,107.63,22
2021-07-01 03:31:58.338631,DEF,buy,106.74,16
2021-07-02 11:09:04.634832,DEF,buy,107.35,90
2021-07-03 19:11:51.493674,ABC,buy,106.03,112
2021-07-05 02:45:20.576031,ABC,buy,105.97,52
2021-07-06 09:11:50.193342,ABC,buy,104.16,167
2021-07-07 16:19:42.870636,DEF,buy,103.36,103
2021-07-08 06:57:08.983589,DEF,sell,105.32,108
2021-07-09 05:30:43.141380,DEF,sell,107.47,48
2021-07-10 17:13:34.171900,ABC,buy,103.19,240
2021-07-11 07:39:38.589498,DEF,sell,106.71,6
2021-07-11 20:18:39.643145,DEF,buy,104.28,58
2021-07-12 08:56:15.008979,ABC,sell,106.57,143
2021-07-13 01:53:39.350438,ABC,sell,107.65,124
2021-07-13 17:32:19.036973,DEF,buy,103.08,140
2021-07-14 14:01:08.136126,ABC,sell,106.91,167
2021-07-15 18:35:58.661642,DEF,buy,102.61,184
2021-07-16 20:09:11.492705,DEF,sell,106.61,69
2021-07-17 18:37:30.973652,ABC,sell,105.22,29
2021-07-18 07:38:17.933011,DEF,buy,103.13,16
2021-07-18 23:11:28.043532,ABC,sell,106.21,9
2021-07-20 10:16:13.087554,DEF,buy,103.64,64
2021-07-21 10:22:02.000096,ABC,sell,105.16,96
2021-07-22 06:22:31.942938,DEF,sell,103.41,139
2021-07-23 05:35:10.791578,DEF,buy,103.07,25
2021-07-24 14:29:48.537046,DEF,buy,101.08,16
2021-07-25 12:39:24.705962,DEF,sell,103.42,127
2021-07-26 02:38:44.737872,ABC,buy,101.16,68
2021-07-27 00:24:06.187586,ABC,sell,104.48,74
2021-07-28 06:57:57.924589,ABC,sell,104.79,143
2021-07-29 14:29:36.859700,ABC,buy,102.14,35
2021-07-30 05:15:39.184013,DEF,sell,105.2,183
2021-07-30 19:57:54.200416,DEF,buy,104.01,64
2021-08-01 01:58:24.849062,DEF,sell,107.71,19
2021-08-02 10:26:48.862316,DEF,sell,108.02,125
2021-08-03 11:51:28.623708,ABC,sell,109.31,55
2021-08-04 23:44:40.838242,DEF,buy,105.94,77
2021-08-05 16:18:33.742475,DEF,buy,103.47,45
2021-08-07 03:28:41.148923,DEF,buy,105.45,199
2021-08-08 14:09:34.020093,ABC,buy,106.07,20
2021-08-09 08:03:53.785233,ABC,buy,105.01,54
2021-08-09 21:39:03.967777,DEF,buy,107.66,40
2021-08-10 22:13:57.384612,ABC,buy,106.62,124
2021-08-12 08:27:45.885898,DEF,sell,108.54,7
2021-08-13 19:50:23.061267,ABC,buy,105.09,44
2021-08-14 18:11:39.379822,DEF,sell,108.07,219
2021-08-16 02:53:47.101961,ABC,buy,107.32,97
2021-08-17 10:23:42.767114,DEF,sell,108.71,34
2021-08-18 11:08:25.725296,ABC,sell,109.87,13
2021-08-19 14:48:15.240401,ABC,buy,107.92,173
2021-08-20 17:49:26.852486,DEF,sell,110.13,26
2021-08-22 02:52:27.091048,ABC,sell,107.97,84
2021-08-22 23:56:51.500671,DEF,buy,106.43,13
2021-08-23 22:57:08.105251,ABC,sell,111.93,33
2021-08-25 01:53:37.636808,ABC,sell,110.59,3
2021-08-25 21:48:16.527683,DEF,buy,106.42,146
2021-08-26 15:35:48.429742,ABC,sell,109.72,159
2021-08-27 20:42:50.218109,ABC,buy,107.58,23
2021-08-29 00:25:27.825048,ABC,buy,107.09,44
2021-08-29 18:25:47.395654,DEF,sell,108.69,117
2021-08-30 10:04:58.115928,DEF,sell,107.54,107
2021-08-31 02:40:50.852583,DEF,sell,106.73,160
2021-09-01 14:25:38.054446,ABC,sell,106.18,60
2021-09-02 23:16:45.401421,ABC,buy,104.68,86
2021-09-04 07:47:37.483218,ABC,buy,103.96,83
2021-09-05 13:34:17.398346,DEF,buy,103.49,112
2021-09-06 20:15:40.282598,DEF,sell,106.85,161
2021-09-08 06:23:51.408672,ABC,sell,106.42,88
2021-09-09 09:15:51.495414,DEF,buy,104.02,159
2021-09-10 03:36:49.431925,DEF,buy,103.46,17
2021-09-10 16:06:22.207698,DEF,sell,105.43,142
2021-09-11 07:25:08.554890,DEF,sell,105.81,162
2021-09-11 20:57:33.441248,DEF,sell,103.65,106
2021-09-12 13:21:18.010662,ABC,sell,105.87,248
2021-09-13 15:26:51.705808,DEF,sell,105.53,25
2021-09-14 19:53:56.010628,ABC,sell,107.14,21
2021-09-15 10:04:42.882415,DEF,sell,107.25,97
2021-09-16 21:59:00.975110,DEF,sell,106.34,12
2021-09-17 17:24:56.343867,DEF,sell,102.23,5
2021-09-18 14:13:51.498183,ABC,buy,100.23,81
2021-09-19 18:16:08.027612,ABC,buy,98.99,11
2021-09-21 00:02:32.213246,ABC,buy,96.71,133
2021-09-21 15:48:07.379085,DEF,sell,99.34,58
2021-09-22 12:49:03.128060,ABC,buy,97.57,98
2021-09-23 11:28:56.225251,ABC,sell,102.78,72
2021-09-23 23:42:43.971690,DEF,buy,98.74,44
2021-09-24 23:26:06.385014,DEF,sell,103.0,98
2021-09-26 10:38:11.391197,DEF,buy,97.81,72
2021-09-27 12:53:17.050186,DEF,sell,99.65,152
2021-09-29 00:35:09.876663,ABC,buy,97.75,12
2021-09-29 14:58:31.193592,DEF,buy,100.01,49
2021-09-30 13:05:25.780080,DEF,buy,99.69,231
2021-10-01 06:28:02.942223,DEF,sell,105.3,0
2021-10-02 03:28:56.833663,ABC,sell,104.19,38
2021-10-03 15:00:59.099366,DEF,buy,98.89,26
2021-10-05 01:51:27.879903,ABC,buy,97.83,283
2021-10-06 12:31:30.521238,ABC,sell,101.48,42
2021-10-07 08:12:20.835199,DEF,sell,102.2,72
2021-10-07 20:30:27.876186,DEF,buy,96.84,108
2021-10-09 08:10:17.690730,ABC,sell,99.03,140
2021-10-10 09:48:52.434433,DEF,buy,98.06,55
2021-10-10 23:43:10.429295,ABC,sell,98.86,26
2021-10-11 20:21:55.381454,ABC,sell,99.86,240
2021-10-12 10:05:59.962662,ABC,sell,98.98,210
2021-10-13 17:28:46.776456,DEF,sell,99.73,16
2021-10-15 01:23:52.177182,ABC,sell,101.25,234
2021-10-16 06:39:37.107960,ABC,buy,97.0,28
2021-10-17 11:23:35.155663,DEF,buy,96.27,11
2021-10-18 09:57:32.666061,ABC,buy,93.37,33
2021-10-19 18:58:17.484915,ABC,sell,98.77,27
2021-10-20 10:00:13.723181,ABC,buy,94.5,70
2021-10-21 13:01:28.618877,ABC,buy,94.98,131
2021-10-22 08:49:29.574053,ABC,buy,93.04,42
2021-10-22 23:30:17.017646,ABC,buy,91.57,127
2021-10-24 05:41:54.573467,DEF,sell,99.72,48
2021-10-25 11:46:31.741770,ABC,buy,94.55,31
2021-10-26 22:25:50.721877,ABC,buy,97.2,69
2021-10-27 15:05:13.302875,DEF,buy,97.11,118
2021-10-29 00:27:38.355335,ABC,sell,101.33,47
2021-10-30 02:51:19.004739,ABC,sell,101.08,10
2021-10-31 09:09:05.634653,DEF,sell,99.58,147
2021-11-01 14:27:52.583833,ABC,sell,99.24,118
2021-11-02 14:04:01.758229,ABC,sell,97.82,37
2021-11-03 16:06:19.606885,DEF,buy,95.02,39
2021-11-04 23:58:40.342446,DEF,buy,96.91,102
2021-11-06 06:53:29.615033,DEF,sell,100.59,82
2021-11-07 02:35:09.748782,ABC,buy,99.1,17
2021-11-08 06:01:17.937900,DEF,buy,98.52,3
2021-11-08 22:04:38.763480,ABC,buy,97.76,71
2021-11-09 18:49:54.059397,ABC,sell,102.26,199
2021-11-10 13:40:04.211131,DEF,sell,100.65,70
2021-11-11 10:23:20.457844,DEF,buy,95.88,6
2021-11-12 13:17:25.676417,ABC,buy,96.93,14
2021-11-13 06:38:41.965457,ABC,sell,100.1,42
2021-11-14 07:33:16.368019,DEF,sell,100.12,95
2021-11-15 19:18:09.395249,DEF,buy,96.36,42
2021-11-17 06:28:30.181977,DEF,buy,95.65,44
2021-11-18 01:58:42.471583,DEF,sell,102.06,72
2021-11-19 04:32:57.730091,DEF,sell,100.53,47
2021-11-20 05:19:56.199613,ABC,sell,100.72,59
2021-11-20 17:47:33.288079,DEF,buy,96.59,41
2021-11-21 08:38:36.087012,DEF,buy,98.63,46
2021-11-22 20:13:33.155206,DEF,buy,98.22,31
2021-11-23 16:13:58.713459,ABC,sell,102.74,113
2021-11-24 08:57:53.367035,DEF,buy,97.51,138
2021-11-25 05:24:23.311026,DEF,buy,98.4,50
2021-11-25 20:06:23.654795,ABC,buy,98.6,53
2021-11-27 06:12:50.622176,ABC,sell,100.22,72
2021-11-28 10:20:53.105258,ABC,sell,99.97,140
2021-11-29 01:12:54.815495,ABC,buy,93.89,93
2021-11-30 05:26:34.533563,ABC,sell,100.65,90
2021-11-30 19:30:18.066595,DEF,buy,97.29,15
2021-12-01 09:55:38.815509,ABC,sell,99.63,127
2021-12-02 17:33:07.011963,ABC,sell,100.27,55
2021-12-04 02:50:45.885280,DEF,sell,98.98,97
2021-12-05 03:40:52.883618,ABC,sell,99.76,0
2021-12-06 14:36:27.727019,DEF,buy,95.4,18
2021-12-07 05:01:54.833609,DEF,buy,98.16,36
2021-12-07 21:59:54.512756,DEF,sell,100.17,35
2021-12-09 00:20:35.384426,DEF,sell,100.38,43
2021-12-09 19:23:19.768047,DEF,buy,98.72,18
2021-12-10 20:29:58.167480,ABC,sell,103.2,167
2021-12-11 10:49:20.345497,DEF,buy,98.74,55
2021-12-12 02:49:13.813667,ABC,buy,96.17,112
2021-12-12 23:12:07.706251,DEF,sell,100.87,17
2021-12-14 10:15:12.003605,DEF,sell,101.31,40
2021-12-15 09:03:09.240936,ABC,buy,100.13,74
2021-12-16 00:58:52.513328,DEF,buy,98.64,284
2021-12-17 08:21:48.453517,ABC,sell,100.86,41
2021-12-17 22:26:55.476961,DEF,sell,96.47,49
2021-12-19 06:34:54.719728,DEF,buy,92.6,111
2021-12-20 17:51:44.956000,ABC,buy,94.57,183
2021-12-21 07:35:31.636446,ABC,sell,100.63,46
2021-12-21 20:27:03.026182,DEF,sell,99.12,204
2021-12-22 18:06:27.342100,DEF,buy,97.91,104
2021-12-23 22:59:30.688170,ABC,buy,95.57,10
2021-12-24 18:50:26.020494,DEF,sell,101.53,49
2021-12-26 02:44:19.657280,ABC,buy,97.41,65
2021-12-26 19:33:48.577709,ABC,buy,98.21,59
2021-12-27 11:46:02.768814,DEF,sell,101.18,171
2021-12-28 04:08:33.083126,DEF,buy,96.59,71
2021-12-29 12:08:24.492797,ABC,sell,99.37,42
2021-12-30 16:22:16.383845,ABC,buy,95.54,43
2022-01-01 01:28:53.052112,ABC,sell,100.79,100
2022-01-01 14:45:51.788196,DEF,buy,97.15,95
2022-01-02 17:50:29.506070,DEF,buy,98.74,91
2022-01-03 13:43:44.905191,ABC,sell,100.3,61
2022-01-04 10:16:38.923458,DEF,buy,97.41,66
2022-01-05 05:49:38.548328,ABC,buy,100.99,18
2022-01-06 14:36:42.642473,DEF,buy,101.51,37
2022-01-07 23:52:35.923166,DEF,buy,101.99,15
2022-01-09 03:08:29.019706,DEF,buy,98.93,22
2022-01-09 21:17:59.296318,ABC,sell,100.28,111
2022-01-11 05:31:44.936676,DEF,sell,100.34,117
2022-01-12 06:45:30.175160,DEF,buy,97.92,184
2022-01-12 23:45:05.215447,ABC,sell,98.4,99
2022-01-14 02:13:13.163448,ABC,buy,92.96,204
2022-01-15 07:56:58.040436,DEF,buy,92.48,123
2022-01-16 13:58:37.250442,ABC,sell,97.71,85
2022-01-17 13:26:48.134677,DEF,sell,97.02,44
2022-01-18 05:17:40.621054,DEF,buy,94.32,59
2022-01-19 00:53:35.757501,DEF,sell,97.28,218
2022-01-20 06:05:14.320867,DEF,sell,97.75,90
2022-01-21 04:12:09.236467,DEF,buy,95.28,17
2022-01-22 13:47:37.002012,ABC,buy,95.13,30
2022-01-23 12:20:02.393029,DEF,sell,96.7,110
2022-01-24 03:51:27.534793,ABC,sell,98.35,156
2022-01-25 12:18:32.227446,ABC,buy,92.56,105
2022-01-26 19:45:03.189447,DEF,buy,93.01,92
2022-01-28 00:07:45.835739,ABC,buy,92.6,156
2022-01-29 07:51:24.798900,ABC,sell,95.79,13
2022-01-29 22:20:51.463504,ABC,sell,95.79,137
2022-01-31 06:10:44.465994,ABC,buy,90.88,75
2022-02-01 06:43:18.217524,DEF,buy,89.96,19
2022-02-02 09:51:15.542391,ABC,sell,93.6,206
2022-02-03 01:10:15.554314,DEF,buy,87.96,114
2022-02-04 02:19:47.212610,ABC,sell,92.8,56
2022-02-04 16:19:19.704263,DEF,sell,95.9,38
2022-02-05 07:14:49.268496,ABC,buy,88.57,2
2022-02-06 14:49:05.379726,DEF,buy,90.87,31
2022-02-07 13:46:05.602461,ABC,sell,94.97,3
2022-02-08 09:39:31.477397,DEF,sell,94.04,182
2022-02-09 13:52:28.822550,DEF,buy,90.74,74
2022-02-10 10:39:15.411899,ABC,sell,94.35,63
2022-02-11 13:40:03.007057,ABC,sell,93.08,75
2022-02-12 15:31:10.053626,ABC,sell,91.92,23
2022-02-13 10:12:59.403984,DEF,buy,89.63,112
2022-02-14 03:47:53.346405,ABC,sell,93.02,29
2022-02-14 22:59:36.473362,DEF,buy,90.8,258
2022-02-15 14:51:52.071365,DEF,buy,88.53,104
2022-02-16 10:32:18.545339,DEF,buy,89.29,186
2022-02-17 02:09:12.297055,ABC,sell,92.11,23
2022-02-18 11:49:05.454122,DEF,sell,93.05,81
2022-02-19 23:15:45.272882,ABC,buy,86.94,31
2022-02-21 09:59:15.424681,ABC,buy,88.46,73
2022-02-22 02:18:54.778476,DEF,buy,87.96,153
2022-02-22 23:53:19.268124,DEF,buy,85.7,1
2022-02-23 18:10:57.612844,ABC,sell,92.36,169
2022-02-24 08:13:32.840532,DEF,sell,89.7,193
2022-02-25 08:34:06.380170,DEF,buy,87.31,198
2022-02-26 10:31:09.108871,ABC,buy,84.28,10
2022-02-27 05:32:23.496844,ABC,sell,90.18,147
2022-02-27 22:46:56.966817,DEF,sell,90.21,0
2022-03-01 01:13:29.101587,DEF,buy,88.7,64
2022-03-02 05:49:37.560423,DEF,sell,92.98,40
2022-03-03 03:25:21.280634,DEF,sell,95.2,4
2022-03-04 07:32:06.847195,DEF,buy,89.89,110
2022-03-05 03:47:49.906098,ABC,buy,88.83,39
2022-03-06 12:17:26.829857,ABC,sell,91.59,6
2022-03-07 09:15:29.960024,ABC,sell,89.31,77
2022-03-08 03:27:57.315633,ABC,sell,89.92,19
2022-03-08 17:20:52.467785,ABC,buy,86.86,6
2022-03-09 15:48:31.687068,DEF,buy,85.27,0
2022-03-10 21:08:05.461587,DEF,sell,88.84,33
2022-03-11 14:23:00.770641,ABC,buy,84.33,28
2022-03-12 15:10:47.757495,DEF,buy,84.47,86
2022-03-13 07:59:50.208138,ABC,buy,83.04,77
2022-03-13 20:52:51.014704,DEF,sell,88.09,210
2022-03-14 14:04:19.859871,DEF,buy,85.97,43
2022-03-15 10:13:34.029529,DEF,sell,89.27,57
2022-03-16 18:17:14.328720,DEF,sell,89.27,125
2022-03-17 10:41:50.404172,ABC,buy,83.83,149
2022-03-18 05:16:22.241188,ABC,sell,86.41,31
2022-03-18 23:50:45.299430,ABC,buy,85.28,23
2022-03-19 22:28:11.764771,DEF,buy,83.58,48
2022-03-21 07:53:51.816392,ABC,buy,83.64,32
2022-03-22 15:46:22.255417,DEF,sell,82.96,34
2022-03-23 15:10:55.685775,DEF,buy,80.61,28
2022-03-24 16:44:45.459723,DEF,sell,85.59,30
2022-03-26 04:20:08.524891,ABC,sell,83.98,24
2022-03-26 22:55:10.239734,DEF,buy,80.45,124
2022-03-27 22:24:39.495479,ABC,sell,87.13,202
2022-03-29 01:41:40.107125,ABC,buy,83.2,30
2022-03-29 14:44:58.906689,DEF,sell,85.07,22
2022-03-30 21:49:49.551721,ABC,buy,82.94,137
2022-04-01 07:45:30.523769,ABC,buy,81.3,136
2022-04-02 01:04:28.670457,ABC,sell,82.8,33
2022-04-03 08:09:48.649674,DEF,sell,82.47,54
2022-04-03 20:32:21.975103,ABC,sell,83.27,18
2022-04-04 21:15:23.468100,ABC,sell,82.79,184
2022-04-06 05:18:02.804887,ABC,sell,83.81,73
2022-04-07 08:31:59.367888,ABC,sell,84.52,208
2022-04-08 14:56:11.742696,ABC,buy,81.57,11
2022-04-09 22:32:10.616551,ABC,buy,82.05,56
2022-04-11 05:17:54.916839,DEF,sell,85.54,109
2022-04-12 01:24:25.780874,ABC,sell,85.55,34
2022-04-12 21:24:01.118436,ABC,buy,82.53,87
2022-04-13 19:28:42.317977,DEF,sell,84.11,94
2022-04-14 16:55:49.392818,ABC,sell,84.2,47
2022-04-15 13:44:11.529920,DEF,buy,79.04,67
2022-04-16 19:10:14.057487,DEF,sell,84.0,8
2022-04-17 15:27:15.392851,DEF,sell,81.62,17
2022-04-19 01:16:35.602174,DEF,sell,82.96,29
2022-04-20 04:29:10.944001,ABC,buy,83.54,13
2022-04-21 05:31:17.541857,DEF,sell,85.27,13
2022-04-21 18:08:47.698388,DEF,buy,83.73,138
2022-04-23 00:47:16.099798,DEF,buy,82.66,0
2022-04-24 05:44:58.013095,ABC,buy,83.87,61
2022-04-24 23:00:44.839174,DEF,buy,81.95,12
2022-04-25 17:04:11.351581,ABC,sell,84.76,3
2022-04-26 21:22:18.173278,DEF,sell,85.2,21
2022-04-28 04:06:33.912841,DEF,buy,83.1,89
2022-04-28 23:42:13.349660,ABC,sell,88.19,61
2022-04-29 14:35:36.664900,ABC,buy,84.92,24
2022-05-01 01:52:19.642565,DEF,buy,85.55,53
2022-05-01 23:28:12.396572,DEF,buy,85.22,152
2022-05-02 12:16:32.532799,DEF,buy,85.73,93
2022-05-03 22:54:23.302276,DEF,buy,83.54,20
2022-05-04 20:21:06.893836,ABC,sell,89.0,144
2022-05-05 15:00:54.435044,ABC,sell,87.67,206
2022-05-07 01:25:22.213574,ABC,buy,86.73,16
2022-05-08 00:09:32.032168,DEF,buy,85.77,96
2022-05-09 04:04:38.601648,ABC,sell,87.47,47
2022-05-10 08:03:02.420064,DEF,buy,85.43,12
2022-05-11 10:30:38.264775,DEF,buy,87.28,55
2022-05-12 00:48:31.352032,ABC,buy,87.0,81
2022-05-13 12:45:08.049020,DEF,buy,85.54,20
2022-05-14 17:53:19.441162,DEF,sell,88.96,48
2022-05-15 15:02:38.992546,DEF,sell,88.28,71
2022-05-16 18:43:37.061731,ABC,sell,88.7,29
2022-05-18 03:35:26.931122,DEF,sell,89.61,76
2022-05-18 22:02:33.816898,DEF,sell,90.1,24
2022-05-20 00:09:50.079828,DEF,buy,87.19,23
2022-05-20 13:19:25.025646,ABC,sell,91.78,95
2022-05-21 06:29:54.529236,ABC,buy,89.33,21
2022-05-21 20:12:29.586667,DEF,buy,90.05,27
2022-05-22 09:33:04.733420,ABC,buy,90.04,141
2022-05-23 10:39:42.878345,DEF,buy,90.71,5
2022-05-24 06:20:39.405703,DEF,buy,89.46,131
2022-05-24 18:45:35.754588,ABC,buy,85.72,77
2022-05-25 09:50:58.507229,DEF,buy,86.69,165
2022-05-26 20:21:44.696648,DEF,sell,89.17,14
2022-05-27 12:26:26.991092,ABC,sell,89.23,35
2022-05-28 09:25:21.310899,DEF,sell,88.47,55
2022-05-29 20:37:01.641721,ABC,sell,88.97,47
2022-05-31 08:03:53.876809,ABC,sell,89.51,3
2022-06-01 18:12:41.837927,ABC,sell,89.66,85
2022-06-02 20:39:10.407505,DEF,buy,87.52,20
2022-06-03 14:32:58.306897,DEF,sell,87.6,61
2022-06-04 14:32:44.452827,ABC,buy,86.73,37
2022-06-05 13:39:04.095559,DEF,buy,83.82,60
2022-06-06 04:54:36.850000,ABC,sell,85.56,34
2022-06-07 01:46:08.586149,DEF,buy,83.39,31
2022-06-07 17:29:06.056507,DEF,sell,85.74,2
2022-06-08 15:58:34.824402,ABC,buy,85.05,76
2022-06-09 19:54:58.674200,ABC,buy,86.12,30
2022-06-10 11:14:13.238188,DEF,sell,84.9,95
2022-06-11 13:23:07.530150,ABC,buy,82.97,74
2022-06-12 16:43:26.227288,DEF,buy,82.86,76
2022-06-13 04:49:06.981884,ABC,sell,86.85,69
2022-06-13 17:23:18.515283,ABC,buy,83.14,92
2022-06-14 10:16:15.841738,ABC,sell,85.46,208
2022-06-15 05:15:01.657042,ABC,sell,86.45,59
2022-06-15 18:45:05.821454,DEF,sell,86.54,76
2022-06-16 08:10:43.280696,ABC,sell,86.89,134
2022-06-17 13:13:48.028693,ABC,buy,84.62,26
2022-06-18 07:43:43.194213,DEF,sell,86.0,4
2022-06-19 06:54:56.425905,DEF,buy,83.06,80
2022-06-19 20:05:48.235932,DEF,buy,82.86,133
2022-06-21 05:49:20.379655,DEF,sell,87.18,52
2022-06-22 01:26:30.250469,ABC,buy,84.81,18
2022-06-23 09:48:53.504868,ABC,buy,86.53,40
2022-06-24 07:52:23.941482,ABC,buy,87.58,78
2022-06-24 22:41:43.951270,DEF,buy,88.53,224
2022-06-25 15:11:53.091296,DEF,buy,88.49,92
2022-06-26 12:24:02.441449,DEF,buy,88.19,159
2022-06-27 02:48:39.209232,DEF,buy,88.1,163
2022-06-28 14:00:39.595202,DEF,sell,90.77,21
2022-06-29 09:57:44.133319,ABC,buy,90.12,18
2022-06-29 22:45:39.736489,DEF,sell,92.88,30
2022-07-01 04:19:33.655017,DEF,sell,93.04,46
2022-07-02 11:50:12.692650,ABC,sell,95.32,87
2022-07-03 01:14:05.304047,ABC,sell,95.02,5
2022-07-04 02:53:52.690019,ABC,buy,92.63,54
2022-07-05 03:47:44.756732,DEF,buy,94.62,27
2022-07-06 00:37:39.118535,ABC,sell,96.18,17
2022-07-07 10:04:46.864125,ABC,sell,94.24,97
2022-07-08 08:29:44.479162,ABC,buy,92.57,22
2022-07-09 02:44:27.207852,DEF,sell,93.13,15
2022-07-09 15:36:25.912099,DEF,buy,90.26,193
2022-07-10 05:46:37.583435,DEF,sell,92.96,32
2022-07-11 07:57:20.343044,DEF,buy,89.6,76
2022-07-12 16:17:49.070415,DEF,sell,91.69,55
2022-07-13 12:15:23.735365,ABC,sell,91.81,90
2022-07-14 18:39:41.050009,DEF,buy,88.13,90
2022-07-16 05:50:26.323739,ABC,sell,92.02,43
2022-07-16 19:44:54.282024,DEF,buy,90.53,52
2022-07-18 02:59:34.590334,DEF,sell,91.26,121
2022-07-18 15:14:31.020855,ABC,buy,91.47,56
2022-07-19 22:16:39.123813,ABC,sell,93.54,28
2022-07-21 08:11:46.362859,DEF,sell,93.47,116
2022-07-22 15:51:16.799159,DEF,sell,95.09,84
2022-07-23 09:42:48.293842,ABC,sell,93.35,68
2022-07-24 05:33:57.129176,ABC,buy,92.22,5
2022-07-24 18:02:42.256927,ABC,buy,92.15,246
2022-07-25 19:45:44.521382,DEF,sell,91.88,75
2022-07-26 13:45:14.014594,ABC,buy,91.65,30
2022-07-27 16:18:14.293530,ABC,buy,88.99,87
2022-07-28 17:31:44.991355,ABC,buy,88.37,156
2022-07-30 01:10:10.307045,DEF,buy,87.38,97
2022-07-30 20:00:45.969459,DEF,sell,90.5,145
2022-07-31 18:18:44.337278,DEF,buy,89.0,35
2022-08-01 11:35:07.230511,DEF,sell,90.57,24
2022-08-02 11:40:21.885760,DEF,buy,88.6,94
2022-08-03 16:16:56.317543,ABC,sell,92.24,155
2022-08-04 17:12:38.935204,DEF,buy,89.36,111
2022-08-05 07:18:47.212049,DEF,sell,92.39,123
2022-08-06 15:00:49.031418,DEF,sell,90.52,12
2022-08-07 14:19:40.358856,DEF,buy,89.41,52
2022-08-09 00:17:30.972759,DEF,buy,90.38,169
2022-08-10 02:19:15.977636,ABC,sell,93.74,57
2022-08-11 08:09:32.760665,DEF,sell,94.78,20
2022-08-12 19:46:16.686189,DEF,sell,93.79,94
2022-08-14 02:11:26.232527,DEF,buy,91.43,142
2022-08-15 09:41:39.474256,DEF,sell,94.4,36
2022-08-16 18:38:54.431298,DEF,sell,92.26,62
2022-08-17 06:44:29.339475,DEF,sell,95.05,53
2022-08-18 07:41:36.334476,ABC,sell,93.99,36
2022-08-19 15:08:39.949334,DEF,buy,90.57,2
2022-08-20 12:09:55.932678,DEF,sell,95.28,79
2022-08-21 14:27:49.503744,ABC,buy,91.26,125
2022-08-22 05:53:21.763360,DEF,sell,95.46,110
2022-08-22 22:18:47.901325,DEF,buy,94.19,43
2022-08-23 10:47:21.333940,ABC,buy,93.61,30
2022-08-24 05:53:41.003340,DEF,sell,98.23,149
2022-08-25 09:25:18.198508,ABC,buy,93.42,162
2022-08-26 05:51:44.530843,ABC,sell,95.89,174
2022-08-27 13:10:24.137086,ABC,sell,98.88,57
2022-08-28 22:28:29.835805,ABC,buy,93.6,24
2022-08-29 14:02:53.477172,ABC,sell,97.88,23
2022-08-30 15:19:17.715065,DEF,sell,97.12,55
2022-08-31 13:37:38.667583,ABC,sell,95.0,57
2022-09-01 15:47:56.042134,DEF,sell,98.82,158
2022-09-02 06:05:10.428630,ABC,sell,100.52,26
2022-09-03 05:20:10.308427,ABC,sell,98.23,141
2022-09-04 09:53:44.796688,ABC,sell,97.95,17
2022-09-05 08:27:22.756182,ABC,sell,96.54,45
2022-09-06 07:16:43.139475,ABC,sell,98.42,49
2022-09-07 09:41:45.318758,ABC,sell,95.91,119
2022-09-08 10:41:48.151817,DEF,buy,92.52,71
2022-09-09 12:15:17.796700,ABC,buy,91.97,37
2022-09-10 11:12:03.033396,DEF,buy,89.89,202
2022-09-11 06:00:03.370753,ABC,sell,96.3,193
2022-09-11 23:24:32.335155,ABC,buy,92.18,76
2022-09-12 21:46:23.350508,DEF,buy,91.54,51
2022-09-13 20:16:31.152872,ABC,sell,95.81,59
2022-09-15 05:21:19.697350,DEF,sell,95.85,53
2022-09-16 14:25:32.758334,DEF,buy,91.99,126
2022-09-18 01:40:44.978270,ABC,sell,91.14,3
2022-09-19 11:46:28.031779,ABC,buy,90.3,152
2022-09-20 14:32:43.241172,ABC,buy,89.4,27
2022-09-21 10:59:23.132375,DEF,buy,87.01,55
2022-09-22 14:11:16.488708,ABC,buy,87.19,60
2022-09-23 11:08:31.357021,DEF,sell,89.53,28
2022-09-24 09:49:56.581297,ABC,sell,89.9,199
2022-09-25 10:23:11.067344,DEF,sell,90.2,177
2022-09-26 03:01:52.832987,ABC,buy,90.56,11
2022-09-27 11:00:49.339742,DEF,buy,90.76,57
2022-09-28 08:36:34.428632,DEF,buy,91.34,159
2022-09-29 00:02:27.683264,ABC,sell,96.75,21
2022-09-30 02:18:54.171789,DEF,sell,93.7,6
2022-10-01 00:05:47.310132,DEF,buy,90.94,121
2022-10-02 05:24:19.133753,DEF,buy,90.03,62
2022-10-03 00:06:30.938449,DEF,buy,88.84,4
2022-10-03 19:50:55.778541,DEF,buy,88.51,58
2022-10-05 03:23:34.231211,DEF,buy,89.54,80
2022-10-06 08:38:41.852557,DEF,buy,87.59,154
2022-10-07 13:55:19.786945,ABC,buy,90.68,34
2022-10-08 06:49:46.177126,ABC,buy,89.89,140
2022-10-09 14:17:12.301736,ABC,sell,91.78,61
2022-10-10 03:43:16.320758,DEF,buy,88.66,18
2022-10-10 19:39:08.241838,DEF,buy,88.72,25
2022-10-11 14:07:45.220367,DEF,sell,92.72,49
2022-10-12 14:29:36.601879,ABC,sell,93.97,14
2022-10-13 09:09:22.370903,DEF,sell,93.55,96
2022-10-13 21:15:45.187231,DEF,buy,90.23,88
2022-10-14 10:50:38.153341,DEF,buy,91.4,123
2022-10-15 04:03:24.643368,DEF,sell,96.16,34
2022-10-16 15:38:17.875437,DEF,sell,96.09,64
2022-10-17 22:00:01.855377,ABC,sell,95.96,94
2022-10-18 15:39:17.503370,ABC,buy,95.0,57
2022-10-19 09:05:34.485246,ABC,sell,96.64,64
2022-10-20 14:50:27.172731,DEF,sell,99.97,5
2022-10-21 15:55:55.544989,ABC,sell,97.82,15
2022-10-22 23:14:18.152676,ABC,sell,96.77,31
2022-10-23 19:14:25.190799,DEF,sell,94.66,31
2022-10-25 02:38:20.032151,DEF,buy,92.0,80
2022-10-26 13:48:38.007764,ABC,buy,89.1,86
2022-10-27 07:05:36.573876,ABC,buy,87.14,113
2022-10-27 22:59:27.297909,DEF,buy,88.56,155
2022-10-29 05:54:21.869827,DEF,sell,90.8,62
2022-10-30 02:02:05.810883,ABC,sell,90.1,28
2022-10-31 05:01:52.364643,DEF,sell,90.49,146
2022-10-31 23:40:29.967429,ABC,buy,85.7,64
2022-11-01 21:05:31.414981,ABC,sell,88.46,72
2022-11-02 18:54:08.015573,ABC,sell,88.53,84
2022-11-03 11:15:25.686163,DEF,buy,85.79,51
2022-11-04 05:25:54.067865,ABC,sell,87.44,41
2022-11-05 11:07:15.090221,DEF,sell,87.24,46
2022-11-06 06:39:59.752243,ABC,buy,84.4,22
2022-11-06 20:04:47.843898,DEF,sell,88.46,58
2022-11-07 19:03:43.258070,DEF,sell,90.74,27
2022-11-08 20:47:57.475132,ABC,sell,90.25,36
2022-11-10 04:21:57.753385,ABC,buy,86.71,64
2022-11-11 03:30:30.605204,DEF,sell,89.83,79
2022-11-11 22:15:05.838025,DEF,sell,90.87,49
2022-11-12 14:39:49.524825,DEF,buy,85.81,124
2022-11-13 20:35:41.235059,ABC,buy,86.11,121
2022-11-15 03:55:34.454210,DEF,buy,87.97,57
2022-11-16 01:20:35.398802,DEF,buy,87.46,8
2022-11-17 05:23:37.813890,ABC,buy,87.86,101
2022-11-18 13:19:46.921138,ABC,buy,86.88,31
2022-11-19 20:34:11.323217,ABC,sell,89.79,1
2022-11-20 23:13:27.048857,ABC,sell,90.09,18
2022-11-21 13:20:27.418945,ABC,buy,85.78,25
2022-11-22 17:05:01.180546,ABC,sell,89.33,74
2022-11-23 10:34:19.951069,DEF,buy,88.34,7
2022-11-24 14:34:22.752085,DEF,sell,88.5,16
2022-11-25 19:13:15.989129,DEF,buy,86.02,130
2022-11-27 02:04:08.835730,ABC,buy,86.89,125
2022-11-27 15:28:14.235416,ABC,buy,87.31,274
2022-11-28 08:25:39.688573,DEF,sell,89.33,32
2022-11-29 09:32:05.039686,ABC,sell,89.98,109
2022-11-30 18:42:44.445032,DEF,buy,86.86,50
2022-12-01 09:17:18.940234,ABC,sell,89.29,100
2022-12-01 22:20:16.168831,DEF,sell,90.56,1
2022-12-03 00:01:34.947655,ABC,buy,85.23,9
2022-12-04 06:53:39.257275,DEF,buy,85.11,101
2022-12-05 04:41:52.049376,ABC,sell,88.75,34
2022-12-06 12:57:09.124389,DEF,buy,85.85,182
2022-12-07 07:24:13.652170,DEF,buy,84.87,45
2022-12-08 05:11:20.747663,DEF,sell,87.1,43
2022-12-08 22:20:07.076545,ABC,buy,82.5,74
2022-12-10 03:23:49.254775,ABC,buy,82.11,52
2022-12-11 11:32:10.532744,ABC,sell,87.19,21
2022-12-12 01:39:47.401707,DEF,sell,86.78,42
2022-12-13 09:40:20.580769,DEF,buy,82.61,28
2022-12-14 07:44:38.847797,DEF,buy,82.59,41
2022-12-15 07:40:29.626245,DEF,sell,84.32,68
2022-12-16 01:04:57.620175,DEF,buy,78.82,6
2022-12-16 13:12:29.293678,DEF,buy,82.7,21
2022-12-17 12:39:50.145848,ABC,sell,86.6,63
2022-12-18 17:47:46.867654,ABC,sell,87.08,182
2022-12-19 11:35:33.976170,DEF,sell,87.35,55
2022-12-20 05:50:06.061376,DEF,sell,87.13,55
2022-12-20 21:38:42.881534,DEF,sell,84.91,154
2022-12-21 22:24:38.259518,ABC,buy,83.31,208
2022-12-22 12:15:56.217069,DEF,sell,85.27,99
2022-12-23 18:16:56.806372,DEF,sell,86.17,27
2022-12-24 18:14:59.481781,DEF,buy,84.0,161
2022-12-25 20:48:45.534384,DEF,buy,85.72,32
2022-12-26 12:26:59.794816,DEF,sell,87.19,41
2022-12-27 15:20:48.489550,DEF,buy,85.42,129
2022-12-29 01:17:23.360610,DEF,sell,85.06,56
2022-12-29 20:01:51.816200,DEF,buy,82.48,157
2022-12-30 18:47:36.915526,ABC,sell,87.38,59
2022-12-31 19:48:05.508808,ABC,buy,83.32,182
2023-01-01 15:54:41.894132,ABC,sell,85.52,103
2023-01-02 20:30:25.814125,ABC,sell,84.87,6
2023-01-03 11:45:23.924014,ABC,buy,83.79,19
2023-01-04 09:42:25.130975,ABC,buy,83.3,112
2023-01-05 17:49:49.910168,DEF,buy,84.61,138
2023-01-06 08:59:17.344997,DEF,buy,84.17,116
2023-01-07 06:55:32.144991,ABC,buy,84.78,95
2023-01-08 11:19:07.240460,DEF,sell,86.98,114
2023-01-09 08:59:59.941508,DEF,sell,88.05,124
2023-01-10 19:26:39.593764,ABC,buy,87.25,74
2023-01-12 05:22:20.856852,DEF,buy,83.01,2
2023-01-13 05:48:53.327929,ABC,buy,82.3,216
2023-01-14 00:48:25.410206,DEF,buy,82.58,1
2023-01-14 18:39:48.823186,DEF,buy,82.9,15
2023-01-15 16:43:38.318982,ABC,sell,85.36,183
2023-01-16 18:55:39.369166,DEF,buy,83.42,58
2023-01-17 15:05:27.917303,ABC,buy,83.77,47
2023-01-18 17:56:29.290991,DEF,buy,83.64,22
2023-01-20 01:59:38.356147,ABC,buy,83.8,177
2023-01-21 04:11:30.563594,DEF,buy,84.91,4
2023-01-21 22:20:15.154452,ABC,buy,82.74,31
2023-01-22 19:38:13.135669,ABC,sell,85.54,71
2023-01-24 06:34:20.154922,ABC,sell,87.21,29
2023-01-25 07:17:08.929662,DEF,buy,83.56,77
2023-01-26 01:55:21.587192,ABC,buy,82.82,32
2023-01-27 02:05:34.693188,DEF,sell,85.65,22
2023-01-28 03:44:30.943467,DEF,sell,84.8,38
2023-01-29 10:45:48.018139,ABC,sell,87.35,120
2023-01-30 10:29:34.790980,ABC,sell,86.93,103
2023-01-31 10:36:17.872487,ABC,buy,86.96,136
2023-02-01 00:43:51.102920,DEF,sell,87.22,162
2023-02-01 18:27:17.842477,ABC,sell,87.39,1
2023-02-02 19:50:16.087153,ABC,buy,87.4,89
2023-02-04 05:54:52.378455,DEF,buy,86.94,6
2023-02-05 13:53:50.281328,ABC,sell,87.41,141
2023-02-06 13:03:43.650099,DEF,buy,86.9,72
2023-02-07 11:31:38.604709,DEF,buy,86.03,0
2023-02-08 07:29:45.351020,ABC,sell,87.58,130
2023-02-09 10:34:52.204582,DEF,buy,86.8,72
2023-02-10 16:00:46.551617,ABC,sell,88.98,48
2023-02-11 17:16:37.165280,ABC,buy,86.63,1
2023-02-12 23:03:52.618134,ABC,buy,86.44,29
2023-02-14 02:56:31.274749,ABC,buy,84.96,53
2023-02-15 01:51:45.891442,DEF,sell,87.97,20
2023-02-15 15:51:45.624821,ABC,sell,88.26,166
2023-02-16 11:02:42.030423,ABC,sell,88.68,99
2023-02-17 07:54:41.198101,ABC,buy,89.55,132
2023-02-18 06:00:30.808953,ABC,sell,90.68,49
2023-02-18 22:52:26.583912,ABC,buy,87.66,2
2023-02-20 03:19:07.883859,ABC,buy,87.15,185
2023-02-21 14:16:20.233613,ABC,buy,87.84,39
2023-02-22 08:31:13.903229,ABC,buy,88.11,1
2023-02-23 14:49:35.594929,ABC,sell,91.02,77
2023-02-24 08:13:06.276923,ABC,buy,88.75,30
2023-02-25 02:30:47.344352,DEF,buy,89.04,109
2023-02-25 15:38:19.584942,ABC,sell,93.18,106
2023-02-26 15:20:03.633420,ABC,buy,89.05,56
2023-02-27 12:27:12.036732,DEF,buy,88.63,24
2023-02-28 03:54:25.116193,ABC,sell,91.47,62
2023-03-01 04:51:10.141170,ABC,buy,89.6,55
2023-03-02 13:44:45.563322,ABC,buy,86.82,0
2023-03-03 11:53:27.681694,ABC,sell,88.1,41
2023-03-04 10:02:52.255543,ABC,sell,88.58,143
2023-03-05 11:25:28.837758,DEF,sell,87.17,10
2023-03-06 00:16:48.481358,DEF,buy,85.09,117
2023-03-07 00:22:10.625648,ABC,sell,86.77,25
2023-03-07 20:41:32.514548,ABC,sell,85.49,100
2023-03-09 01:50:43.742831,ABC,sell,87.31,122
2023-03-09 23:02:19.280924,ABC,buy,88.25,30
2023-03-10 16:08:14.196641,DEF,buy,87.9,33
2023-03-11 13:06:07.560326,DEF,sell,91.59,50
2023-03-12 08:58:53.800007,ABC,sell,91.02,94
2023-03-13 00:30:43.758792,DEF,buy,89.1,114
2023-03-14 02:16:03.079692,DEF,buy,90.33,71
2023-03-15 07:05:01.344062,DEF,sell,92.14,49
2023-03-16 13:37:24.833597,ABC,sell,91.68,202
2023-03-18 00:58:30.095932,ABC,buy,89.99,112
2023-03-18 15:07:03.900181,DEF,sell,91.11,220
2023-03-19 09:01:37.128547,ABC,sell,89.72,32
2023-03-20 19:26:22.435849,ABC,buy,87.29,21
2023-03-22 07:19:21.605934,ABC,sell,91.59,97
2023-03-23 15:57:10.649700,ABC,buy,88.96,28
2023-03-24 22:35:37.951918,DEF,sell,92.06,116
2023-03-25 12:59:28.577859,DEF,buy,88.1,42
2023-03-26 17:49:47.314849,ABC,sell,93.49,0
2023-03-27 16:26:41.772703,ABC,sell,94.03,44
2023-03-28 12:09:29.483046,DEF,buy,92.41,72
2023-03-29 12:15:58.952446,DEF,sell,94.57,150
2023-03-30 12:05:51.507517,DEF,buy,91.34,98
2023-03-31 14:40:44.307942,DEF,sell,92.18,171
2023-04-01 08:44:35.940322,ABC,buy,91.29,116
2023-04-02 01:19:26.173869,ABC,sell,92.75,151
2023-04-03 09:30:21.043098,ABC,buy,91.27,73
2023-04-04 15:02:10.594016,DEF,buy,90.97,69
2023-04-05 23:39:02.650468,DEF,sell,94.36,23
2023-04-06 21:40:22.489258,ABC,sell,92.93,106
2023-04-07 18:10:41.199336,ABC,sell,92.09,38
2023-04-08 20:01:59.538406,ABC,sell,91.87,71
2023-04-09 20:03:20.082844,DEF,sell,92.14,38
2023-04-10 13:28:03.494522,ABC,buy,91.76,75
2023-04-11 21:21:13.215189,ABC,buy,94.08,85
2023-04-12 20:47:42.652214,DEF,buy,89.55,54
2023-04-13 22:22:34.882361,ABC,sell,91.39,68
2023-04-14 18:01:41.527836,ABC,sell,91.05,66
2023-04-15 21:56:25.954170,ABC,sell,91.28,44
2023-04-17 05:42:03.407601,DEF,sell,92.07,309
2023-04-18 12:29:02.046025,ABC,buy,91.67,165
2023-04-19 04:50:26.162191,ABC,buy,90.57,116
2023-04-19 21:43:44.975374,DEF,sell,92.51,78
2023-04-20 11:46:24.412727,DEF,sell,92.68,10
2023-04-21 16:27:49.911587,ABC,sell,90.7,97
2023-04-22 12:54:20.245154,ABC,buy,88.78,24
2023-04-23 16:31:24.030879,ABC,sell,90.6,10
2023-04-24 13:52:50.136456,DEF,buy,88.91,97
2023-04-25 09:46:30.364784,ABC,sell,90.23,12
2023-04-26 04:46:33.893763,DEF,sell,87.8,36
2023-04-27 14:22:50.456142,DEF,buy,86.97,36
2023-04-28 04:49:46.211958,ABC,buy,86.95,91
2023-04-29 01:48:51.589551,DEF,buy,87.67,218
2023-04-29 19:29:25.399524,DEF,sell,89.74,66
2023-04-30 19:49:28.826928,ABC,buy,87.07,124
2023-05-01 20:55:04.062797,DEF,buy,88.56,78
2023-05-02 20:19:24.480846,ABC,buy,87.27,72
2023-05-04 01:44:23.615510,DEF,sell,90.52,30
2023-05-04 14:04:04.107108,DEF,buy,87.44,105
2023-05-05 18:12:05.988554,ABC,buy,90.6,94
2023-05-06 20:58:04.980412,DEF,sell,92.12,104
2023-05-08 03:10:45.323558,DEF,sell,90.63,35
2023-05-08 18:26:46.283250,DEF,sell,90.26,85
2023-05-09 16:05:07.841797,DEF,buy,90.77,15
2023-05-10 18:01:47.743809,ABC,buy,89.52,61
2023-05-11 14:49:30.662966,DEF,buy,89.59,266
2023-05-12 10:01:47.794162,ABC,buy,87.94,42
2023-05-13 07:11:56.957857,ABC,buy,87.95,21
2023-05-14 02:41:42.311557,ABC,sell,89.53,21
2023-05-15 05:51:29.951368,DEF,buy,86.37,27
2023-05-16 13:12:55.060661,ABC,sell,89.05,162
2023-05-17 22:43:14.953408,DEF,buy,87.94,121
2023-05-19 00:06:46.717335,DEF,buy,88.56,119
2023-05-19 12:48:39.243120,ABC,sell,89.8,179
2023-05-20 21:54:02.271550,DEF,sell,90.88,144
2023-05-22 01:38:51.241220,ABC,sell,88.46,75
2023-05-23 00:39:54.702241,DEF,buy,85.9,60
2023-05-24 11:31:02.402748,DEF,sell,88.08,63
2023-05-25 18:08:56.434671,ABC,buy,85.97,133
2023-05-26 23:32:02.775990,ABC,buy,86.71,18
2023-05-27 15:36:33.292894,ABC,buy,87.0,238
2023-05-29 03:19:09.494860,DEF,sell,92.91,70
2023-05-29 20:23:11.758921,ABC,sell,91.85,9
2023-05-31 05:32:58.986402,ABC,sell,90.93,61
2023-06-01 15:25:34.560783,DEF,buy,87.9,45
2023-06-03 02:12:57.522144,DEF,buy,88.84,87
2023-06-04 14:00:54.356381,ABC,sell,93.17,48
2023-06-06 01:27:27.976947,ABC,sell,91.34,124
2023-06-07 12:05:46.054604,DEF,sell,93.21,101
2023-06-08 15:11:28.937774,DEF,sell,92.92,12
2023-06-09 20:35:00.094628,DEF,sell,91.77,15
2023-06-10 23:39:55.741120,ABC,sell,94.41,160
2023-06-12 09:18:29.860705,ABC,sell,92.77,188
2023-06-13 08:03:24.480430,ABC,sell,93.11,101
2023-06-14 19:19:18.760074,ABC,buy,89.12,197
2023-06-16 06:13:12.802924,DEF,sell,90.54,65
2023-06-17 09:51:09.732523,DEF,buy,90.33,12
2023-06-18 16:47:07.801043,ABC,buy,89.63,9
2023-06-19 15:05:06.885374,DEF,sell,93.7,50
2023-06-20 16:42:40.676078,DEF,buy,89.35,76
2023-06-22 04:37:51.485390,ABC,sell,90.95,133
2023-06-22 18:41:58.124665,DEF,buy,87.07,72
2023-06-23 21:21:26.740902,DEF,buy,88.4,151
2023-06-25 08:57:47.996568,DEF,buy,87.2,114
2023-06-26 07:36:55.198396,DEF,buy,85.94,35
2023-06-27 06:34:19.393621,DEF,sell,87.96,30
2023-06-28 16:46:25.582466,ABC,sell,87.83,96
2023-06-30 04:18:02.172431,DEF,buy,86.03,133
2023-06-30 21:56:03.223566,DEF,buy,88.06,17
2023-07-01 14:20:15.453329,ABC,sell,89.64,160
2023-07-02 11:33:37.523006,ABC,buy,88.12,92
2023-07-03 12:51:27.321335,ABC,sell,91.38,171
2023-07-04 14:00:08.271261,DEF,sell,91.7,108
2023-07-05 21:25:25.560732,ABC,sell,92.6,6
2023-07-06 12:41:37.136733,ABC,buy,90.12,47
2023-07-07 05:50:58.838494,DEF,buy,90.88,17
2023-07-08 13:21:19.746578,DEF,buy,92.11,27
2023-07-09 15:07:04.828547,ABC,buy,92.69,104
2023-07-10 15:16:39.383170,ABC,sell,95.73,22
2023-07-11 05:27:14.061780,ABC,sell,96.25,115
2023-07-12 08:04:27.987416,ABC,buy,93.46,42
2023-07-12 22:54:32.253132,DEF,buy,93.35,15
2023-07-13 12:37:42.305832,ABC,buy,93.24,89
2023-07-14 02:23:23.982489,DEF,buy,92.33,134
2023-07-14 16:25:23.064154,ABC,buy,92.71,126
2023-07-16 02:10:17.957288,ABC,buy,92.41,157
2023-07-17 01:30:06.518618,DEF,sell,95.02,19
2023-07-17 14:24:42.707699,DEF,sell,93.75,40
2023-07-19 01:40:03.000958,ABC,sell,90.81,142
2023-07-19 21:04:14.003036,ABC,buy,89.93,41
2023-07-20 23:22:45.644430,DEF,buy,88.57,77
2023-07-22 10:53:18.801963,DEF,buy,89.22,143
2023-07-23 11:34:55.481193,ABC,buy,91.43,27
2023-07-24 19:47:19.571840,DEF,sell,94.94,71
2023-07-25 09:04:40.949744,DEF,buy,90.82,88
2023-07-26 16:34:28.922993,DEF,buy,88.11,84
2023-07-28 03:37:25.543433,DEF,sell,90.91,82
2023-07-28 19:49:17.655921,DEF,sell,90.08,187
2023-07-29 20:17:43.009071,ABC,buy,88.59,90
2023-07-31 04:49:16.489519,ABC,sell,92.8,109
2023-08-01 07:23:04.235842,ABC,buy,88.31,154
2023-08-02 10:39:30.341323,ABC,buy,89.37,79
2023-08-03 14:53:03.620387,DEF,buy,91.3,145
2023-08-04 09:19:51.735446,ABC,buy,90.06,24
2023-08-05 18:37:51.168197,ABC,buy,88.72,155
2023-08-06 09:35:15.208491,ABC,buy,90.9,209
2023-08-07 16:15:31.516002,ABC,buy,89.25,24
2023-08-08 05:08:51.576445,ABC,buy,87.12,61
2023-08-09 02:09:27.561051,ABC,buy,87.38,45
2023-08-09 14:49:00.209819,ABC,sell,89.15,35
2023-08-11 00:10:40.120356,ABC,buy,87.29,93
2023-08-12 08:19:10.098517,DEF,sell,89.98,52
2023-08-13 18:14:09.632993,ABC,buy,86.7,31
2023-08-14 18:19:11.250225,ABC,sell,87.56,125
2023-08-15 12:30:37.181473,DEF,buy,86.21,93
2023-08-16 11:56:32.206979,DEF,sell,89.24,18
2023-08-17 21:43:33.599736,DEF,buy,86.69,52
2023-08-19 05:48:37.328625,ABC,buy,85.38,11
2023-08-20 06:36:29.398400,ABC,buy,86.64,24
2023-08-21 13:52:21.893069,ABC,sell,90.96,13
2023-08-23 00:28:33.276825,DEF,sell,91.19,123
2023-08-24 03:43:48.772888,DEF,sell,92.56,10
2023-08-25 11:53:47.638597,ABC,sell,90.08,38
2023-08-26 15:31:55.820035,DEF,buy,89.26,54
2023-08-27 13:53:39.204627,ABC,buy,89.4,83
2023-08-28 23:17:09.028004,ABC,buy,90.2,41
2023-08-29 22:43:54.432461,ABC,buy,91.39,71
2023-08-30 16:41:31.924781,ABC,sell,92.13,20
2023-08-31 14:58:10.205630,DEF,sell,92.31,15
2023-09-01 09:02:02.324862,DEF,sell,93.16,119
2023-09-02 16:39:50.443150,DEF,buy,91.32,226
2023-09-03 23:14:27.456528,DEF,buy,92.36,78
2023-09-05 01:42:02.632794,ABC,buy,90.42,0
2023-09-06 00:15:51.827622,ABC,buy,91.38,5
2023-09-06 16:24:37.113008,DEF,buy,92.36,243
2023-09-07 12:08:32.823188,ABC,buy,94.25,120
2023-09-08 12:41:56.109149,ABC,sell,94.26,89
2023-09-09 16:54:27.164990,ABC,sell,94.98,179
2023-09-11 00:44:11.823364,ABC,sell,95.31,46
2023-09-12 11:25:02.194673,DEF,buy,92.57,145
2023-09-13 15:48:10.657019,DEF,buy,92.29,130
2023-09-14 16:42:22.689995,ABC,buy,91.61,25
2023-09-15 23:16:46.938978,ABC,sell,94.86,127
2023-09-16 21:45:59.591369,ABC,sell,95.88,78
2023-09-18 08:52:14.693401,DEF,buy,91.31,25
2023-09-18 22:09:41.777058,ABC,sell,94.54,24
2023-09-19 12:06:07.435893,ABC,buy,92.66,102
2023-09-20 13:52:57.080871,DEF,buy,90.21,21
2023-09-22 00:06:22.211660,ABC,buy,91.23,161
2023-09-22 20:15:51.408955,DEF,buy,93.57,64
2023-09-23 10:53:21.795632,DEF,sell,97.01,16
2023-09-24 13:47:26.306975,DEF,buy,95.46,168
2023-09-25 02:23:56.271048,DEF,sell,98.29,10
2023-09-25 22:56:22.696217,ABC,sell,98.42,67
2023-09-27 05:52:50.422744,DEF,sell,97.32,101
2023-09-28 08:56:31.062121,ABC,sell,96.47,23
2023-09-29 05:33:57.174717,ABC,buy,95.39,11
2023-09-30 09:06:30.793353,ABC,sell,99.06,122
2023-10-01 02:17:11.680513,ABC,sell,97.92,9
2023-10-02 01:29:52.878457,ABC,buy,96.32,21
2023-10-03 03:07:44.593699,ABC,sell,99.58,49
2023-10-04 08:40:41.985235,ABC,buy,98.12,6
2023-10-05 09:17:14.855530,ABC,buy,97.47,43
2023-10-06 04:45:49.744017,ABC,sell,99.48,7
2023-10-06 23:03:47.965134,ABC,buy,96.72,305
2023-10-07 11:33:36.397729,DEF,sell,98.3,146
2023-10-08 07:39:15.293243,DEF,sell,100.68,282
2023-10-09 19:08:52.593894,DEF,sell,101.97,131
2023-10-10 10:38:57.677433,DEF,buy,99.54,107
2023-10-11 22:03:38.186412,DEF,buy,99.4,72
2023-10-12 17:18:23.717228,DEF,buy,99.29,33
2023-10-13 15:58:57.919362,DEF,sell,100.96,49
2023-10-14 08:23:21.525806,DEF,buy,99.6,110
2023-10-15 12:27:20.463605,DEF,buy,98.56,89
2023-10-16 06:05:15.983764,DEF,sell,100.17,35
2023-10-17 10:58:18.501174,ABC,buy,98.08,76
2023-10-18 15:50:00.641144,DEF,buy,97.57,81
2023-10-19 20:25:04.460115,ABC,buy,98.9,8
2023-10-20 19:05:20.305894,DEF,buy,97.14,148
2023-10-21 11:46:33.970828,DEF,sell,99.52,5
2023-10-22 14:41:57.629958,DEF,sell,101.07,109
2023-10-24 00:10:41.944881,ABC,sell,101.1,172
2023-10-25 05:38:34.434146,DEF,sell,102.14,73
2023-10-26 09:33:29.117857,DEF,sell,102.28,139
2023-10-27 00:24:38.529376,ABC,sell,103.01,98
2023-10-27 16:09:40.976242,ABC,buy,100.84,57
2023-10-28 19:09:31.446546,ABC,sell,99.98,72
2023-10-29 17:47:21.993418,ABC,buy,99.38,46
2023-10-30 19:11:19.680684,DEF,sell,102.91,239
2023-10-31 21:37:58.437022,DEF,sell,104.66,67
2023-11-01 23:15:39.961086,ABC,sell,101.8,13
2023-11-02 19:24:31.982920,ABC,buy,99.41,120
2023-11-03 15:09:44.629175,DEF,buy,98.01,33
2023-11-04 08:17:01.187110,ABC,sell,100.21,84
2023-11-05 07:30:58.153090,DEF,sell,99.4,50
2023-11-06 16:28:21.308385,ABC,buy,97.4,21
2023-11-07 09:21:28.659327,ABC,sell,102.2,169
2023-11-08 17:42:13.436968,ABC,sell,102.12,60
2023-11-10 01:06:07.434395,DEF,buy,100.07,183
2023-11-11 06:14:14.080885,DEF,buy,100.77,9
2023-11-12 02:29:04.472709,DEF,buy,100.95,175
2023-11-13 13:40:13.793581,ABC,sell,103.23,1
2023-11-14 06:43:42.242490,DEF,buy,100.72,101
2023-11-15 02:26:27.808282,ABC,buy,100.81,75
2023-11-16 09:34:57.032824,ABC,buy,102.14,82
2023-11-17 10:29:55.210262,ABC,buy,101.82,177
2023-11-18 09:41:16.637285,DEF,sell,104.92,125
2023-11-19 11:58:41.268220,ABC,buy,101.07,55
2023-11-20 06:37:37.075348,ABC,sell,104.18,51
2023-11-21 01:38:32.300365,DEF,sell,103.54,115
2023-11-22 10:47:06.087450,ABC,sell,105.03,47
2023-11-23 21:56:18.970255,ABC,buy,102.52,174
2023-11-24 21:18:39.396090,ABC,buy,101.78,103
2023-11-26 08:55:45.360056,ABC,sell,102.91,5
2023-11-27 16:56:01.404311,DEF,sell,104.01,305
2023-11-29 03:54:54.513440,DEF,sell,104.18,51
2023-11-30 13:34:04.985927,ABC,sell,102.2,52
2023-12-01 14:31:44.343937,DEF,buy,102.47,23
2023-12-02 03:35:47.837837,DEF,sell,103.22,90
2023-12-03 05:09:47.937281,ABC,buy,102.33,76
2023-12-03 20:28:20.062770,ABC,sell,104.15,46
2023-12-05 06:28:25.244244,DEF,sell,105.39,135
2023-12-06 05:14:01.659691,DEF,buy,103.01,119
2023-12-06 21:52:04.838762,ABC,buy,103.44,137
2023-12-08 03:27:57.784722,ABC,buy,102.95,154
2023-12-08 19:17:48.627925,ABC,buy,104.49,200
2023-12-09 19:05:01.747075,ABC,sell,104.28,211
2023-12-10 15:43:09.146037,ABC,sell,105.8,51
2023-12-11 08:21:54.589367,ABC,sell,106.22,97
2023-12-11 20:51:00.954873,ABC,sell,106.0,105
2023-12-13 00:55:44.307877,ABC,buy,103.7,88
2023-12-14 02:59:06.890918,ABC,buy,103.39,96
2023-12-15 12:28:40.332153,ABC,buy,104.5,136
2023-12-16 06:45:17.021466,ABC,buy,100.73,185
2023-12-17 06:21:56.223708,ABC,buy,103.5,52
2023-12-18 06:58:57.897972,ABC,sell,106.91,118
2023-12-19 17:31:10.266563,DEF,sell,106.65,140
2023-12-20 09:08:05.645708,ABC,sell,105.02,53
2023-12-21 03:39:32.051180,DEF,buy,103.4,18
2023-12-22 09:22:48.824301,DEF,buy,102.16,38
2023-12-23 16:50:49.309111,DEF,buy,103.76,154
2023-12-24 21:55:10.608415,ABC,buy,104.23,118
2023-12-25 14:59:20.492220,ABC,buy,105.45,65
2023-12-27 00:08:17.482758,DEF,buy,105.95,145
2023-12-27 22:52:15.641019,DEF,buy,106.7,236
2023-12-28 23:09:02.389510,ABC,sell,109.09,91
2023-12-29 22:41:05.926186,DEF,sell,110.85,52
2023-12-30 10:52:12.403612,DEF,sell,110.5,107
2023-12-31 04:22:58.702656,ABC,sell,108.73,117
2024-01-01 15:46:45.687152,DEF,sell,110.54,96
2024-01-02 23:36:27.278885,DEF,buy,110.37,120
2024-01-04 01:13:42.055786,DEF,buy,111.0,66
2024-01-04 16:37:11.014440,ABC,sell,112.85,104
2024-01-05 22:46:35.900027,DEF,buy,108.76,9
2024-01-06 21:32:05.087230,DEF,sell,111.98,157
2024-01-08 03:06:42.170619,DEF,sell,109.84,182
2024-01-09 01:20:15.959344,ABC,sell,110.11,13
2024-01-09 19:29:09.387744,ABC,buy,108.84,28
2024-01-10 22:22:55.813324,DEF,buy,108.77,88
2024-01-12 07:27:02.566412,DEF,sell,110.18,126
2024-01-12 22:33:45.152941,ABC,sell,109.02,131
2024-01-14 07:41:20.711656,ABC,sell,108.07,124
2024-01-14 21:10:14.174666,DEF,sell,108.36,118
2024-01-15 23:43:02.551931,ABC,buy,104.09,0
2024-01-17 04:10:31.537302,DEF,sell,107.62,186
2024-01-18 03:33:30.497442,ABC,sell,109.65,80
2024-01-19 02:53:57.473813,ABC,sell,109.24,108
2024-01-20 07:52:10.337703,DEF,sell,110.04,58
2024-01-21 08:11:01.812291,DEF,sell,108.96,32
2024-01-21 22:36:09.210959,ABC,sell,107.6,98
2024-01-23 06:31:31.187251,ABC,sell,109.14,211
2024-01-24 00:45:28.383711,DEF,sell,109.82,131
2024-01-24 21:54:53.664044,DEF,sell,108.91,126
2024-01-26 04:39:39.178731,DEF,buy,107.2,30
2024-01-26 18:28:15.684474,DEF,sell,111.63,69
2024-01-27 10:20:04.985486,ABC,sell,108.69,140
2024-01-28 08:23:43.522705,ABC,buy,107.0,19
2024-01-29 10:47:50.065081,ABC,sell,109.48,58
2024-01-30 22:38:50.999795,ABC,sell,108.89,0
gitextract_0mechkk0/ ├── README.md ├── client3.py ├── client_test.py ├── requirements.txt ├── server3.py └── test.csv
SYMBOL INDEX (26 symbols across 3 files)
FILE: client3.py
function getDataPoint (line 32) | def getDataPoint(quote):
function getRatio (line 42) | def getRatio(price_a, price_b):
FILE: client_test.py
class ClientTest (line 4) | class ClientTest(unittest.TestCase):
method test_getDataPoint_calculatePrice (line 5) | def test_getDataPoint_calculatePrice(self):
method test_getDataPoint_calculatePriceBidGreaterThanAsk (line 12) | def test_getDataPoint_calculatePriceBidGreaterThanAsk(self):
FILE: server3.py
function bwalk (line 61) | def bwalk(min, max, std):
function market (line 69) | def market(t0=MARKET_OPEN):
function orders (line 78) | def orders(hist):
function add_book (line 94) | def add_book(book, order, size, _age=10):
function clear_order (line 102) | def clear_order(order, size, book, op=operator.ge, _notional=0):
function clear_book (line 117) | def clear_book(buy=None, sell=None):
function order_book (line 132) | def order_book(orders, book, stock_name):
function generate_csv (line 149) | def generate_csv():
function read_csv (line 159) | def read_csv():
class ThreadedHTTPServer (line 170) | class ThreadedHTTPServer(ThreadingMixIn, http.server.HTTPServer):
method shutdown (line 176) | def shutdown(self):
function route (line 182) | def route(path):
function read_params (line 194) | def read_params(path):
function get (line 204) | def get(req_handler, routes):
function run (line 219) | def run(routes, host='0.0.0.0', port=8080):
class App (line 254) | class App(object):
method __init__ (line 257) | def __init__(self):
method _current_book_1 (line 267) | def _current_book_1(self):
method _current_book_2 (line 276) | def _current_book_2(self):
method read_10_first_lines (line 284) | def read_10_first_lines(self):
method handle_query (line 290) | def handle_query(self, x):
Condensed preview — 6 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (104K chars).
[
{
"path": "README.md",
"chars": 79,
"preview": "# JPMC Task 1\nStarter repo for task 1 of the JPMC software engineering program\n"
},
{
"path": "client3.py",
"chars": 2313,
"preview": "################################################################################\n#\n# Permission is hereby granted, free"
},
{
"path": "client_test.py",
"chars": 1167,
"preview": "import unittest\nfrom client3 import getDataPoint\n\nclass ClientTest(unittest.TestCase):\n def test_getDataPoint_calculate"
},
{
"path": "requirements.txt",
"chars": 22,
"preview": "python-dateutil==2.8.2"
},
{
"path": "server3.py",
"chars": 10765,
"preview": "################################################################################\n#\n# Permission is hereby granted, free"
},
{
"path": "test.csv",
"chars": 84653,
"preview": "2019-02-01 00:30:00.966511,ABC,buy,118.24,21\r\n2019-02-01 16:29:33.406644,DEF,buy,120.09,71\r\n2019-02-02 18:37:52.442361,A"
}
]
About this extraction
This page contains the full source code of the theforage/forage-jpmc-swe-task-1 GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 6 files (96.7 KB), approximately 51.3k tokens, and a symbol index with 26 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.