代码定期提交

This commit is contained in:
xiazongji 2025-05-14 11:00:24 +08:00
parent 2daeb3afda
commit 38e22d1a62
123 changed files with 95883 additions and 660 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -34,30 +34,29 @@ class SegFormer_Segmentation(object):
# 颜色设置 # 颜色设置
self.colors = [ self.colors = [
(0, 0, 0), # Background (黑色) 背景 (0, 0, 0), # Background (黑色)
(252, 250, 205), # Cropland (淡黄色) 农田 (252, 250, 205), # Cropland (淡黄色)
(0, 123, 79), # Forest (深绿色) 森林 (0, 123, 79), # Forest (深绿色)
(157, 221, 106), # Grass (浅绿色) 草地 (157, 221, 106), # Grass (浅绿色)
(77, 208, 159), # Shrub (浅蓝绿色) 灌木 (77, 208, 159), # Shrub (浅蓝绿色)
(111, 208, 242), # Wetland (浅蓝色) 湿地 (111, 208, 242), # Wetland (浅蓝色)
(10, 78, 151), # Water (深蓝色) (10, 78, 151), # Water (深蓝色)
(92, 106, 55), # Tundra (土黄色) 苔原 (92, 106, 55), # Tundra (土黄色)
(155, 36, 22), # Impervious surface (红色) 不透明水面 (155, 36, 22), # Impervious surface (红色)
(205, 205, 205), # Bareland (灰色) 裸地 (205, 205, 205), # Bareland (灰色)
(211, 242, 255) # Ice/snow (浅天蓝色) 冰雪 (211, 242, 255) # Ice/snow (浅天蓝色)
] ]
# 如果类别数小于等于11使用预设颜色否则动态生成颜色 # 如果类别数小于等于11使用预设颜色否则动态生成颜色
if self.num_classes <= 11: # 10个标签 + 背景 if self.num_classes <= 11: # 10个标签 + 背景
self.colors = self.colors[:self.num_classes] self.colors = self.colors[:self.num_classes]
else: # 随机生成颜色 else:
hsv_tuples = [(x / self.num_classes, 1., 1.) for x in range(self.num_classes)] hsv_tuples = [(x / self.num_classes, 1., 1.) for x in range(self.num_classes)]
self.colors = list(map(lambda x: colorsys.hsv_to_rgb(*x), hsv_tuples)) self.colors = list(map(lambda x: colorsys.hsv_to_rgb(*x), hsv_tuples))
self.colors = list(map(lambda x: (int(x[0] * 255), int(x[1] * 255), int(x[2] * 255)), self.colors)) self.colors = list(map(lambda x: (int(x[0] * 255), int(x[1] * 255), int(x[2] * 255)), self.colors))
# 初始化模型 # 初始化模型
self.generate() self.generate()
# 打印参数配置
show_config(**self._defaults) show_config(**self._defaults)
def generate(self, onnx=False): def generate(self, onnx=False):
@ -67,8 +66,8 @@ class SegFormer_Segmentation(object):
""" """
self.net = SegFormer(num_classes=self.num_classes, phi=self.phi, pretrained=False) self.net = SegFormer(num_classes=self.num_classes, phi=self.phi, pretrained=False)
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
self.net.load_state_dict(torch.load(self.model_path, map_location=device)) # 加载权重 self.net.load_state_dict(torch.load(self.model_path, map_location=device))
self.net = self.net.eval() # 评估模式 self.net = self.net.eval()
print('{} model, and classes loaded.'.format(self.model_path)) print('{} model, and classes loaded.'.format(self.model_path))
if not onnx: if not onnx:
if self.cuda: if self.cuda:
@ -123,7 +122,7 @@ class SegFormer_Segmentation(object):
# 混合原图和分割图 # 混合原图和分割图
seg_img = np.reshape(np.array(self.colors, np.uint8)[np.reshape(pr, [-1])], [orininal_h, orininal_w, -1]) seg_img = np.reshape(np.array(self.colors, np.uint8)[np.reshape(pr, [-1])], [orininal_h, orininal_w, -1])
image = Image.fromarray(np.uint8(seg_img)) image = Image.fromarray(np.uint8(seg_img))
image = Image.blend(old_img, image, 1) image = Image.blend(old_img, image, 1.0)
elif self.mix_type == 1: elif self.mix_type == 1:
# 仅显示分割图 # 仅显示分割图
seg_img = np.reshape(np.array(self.colors, np.uint8)[np.reshape(pr, [-1])], [orininal_h, orininal_w, -1]) seg_img = np.reshape(np.array(self.colors, np.uint8)[np.reshape(pr, [-1])], [orininal_h, orininal_w, -1])

BIN
download.zip Normal file

Binary file not shown.

View File

@ -68,8 +68,8 @@ ch4_model_gas = joblib.load(os.path.join(current_dir,'jiawanyuce/qixiangnongdu_m
# 模型调用 # 模型调用
"""地貌识别""" """地貌识别"""
# # 地貌识别 - 图形分割 # 地貌识别 - 图形分割
# # path 这里需要每次上传出现一个uuid命名的文件夹防止文件冲突 eg:D:\\project\\ai_station\\wudingpv\\tmp\\99f06853-4788-4608-8884-2a3b7bc33768 # path 这里需要每次上传出现一个uuid命名的文件夹防止文件冲突 eg:D:\\project\\ai_station\\wudingpv\\tmp\\99f06853-4788-4608-8884-2a3b7bc33768
# path = "/home/xiazj/ai-station/ai_station_merge/tmp/dimaoshibie/crop_9_14.png" # path = "/home/xiazj/ai-station/ai_station_merge/tmp/dimaoshibie/crop_9_14.png"
# result = model_deal.dimaoshibie_pic(dimaoshibie_SegFormer,path,param.dmsb_count,param.dmsb_name_classes) # result = model_deal.dimaoshibie_pic(dimaoshibie_SegFormer,path,param.dmsb_count,param.dmsb_name_classes)
# print(result) # print(result)
@ -82,7 +82,7 @@ ch4_model_gas = joblib.load(os.path.join(current_dir,'jiawanyuce/qixiangnongdu_m
"""屋顶识别""" """屋顶识别"""
# # 屋顶识别- 图形分割 # 屋顶识别- 图形分割
# path = "/home/xiazj/ai-station/ai_station_merge/tmp/wuding/99f06853-4788-4608-8884-2a3b7bc32131/taihuyuan_7-8.png" # path = "/home/xiazj/ai-station/ai_station_merge/tmp/wuding/99f06853-4788-4608-8884-2a3b7bc32131/taihuyuan_7-8.png"
# result = model_deal.roof_pic(roof_model,path,param.wdpv_palette) # result = model_deal.roof_pic(roof_model,path,param.wdpv_palette)
# print(result) # print(result)
@ -97,12 +97,12 @@ ch4_model_gas = joblib.load(os.path.join(current_dir,'jiawanyuce/qixiangnongdu_m
""" 光伏识别 """ # 公用一个接口即可,url进行区别 """ 光伏识别 """ # 公用一个接口即可,url进行区别
# # 光伏识别- 图形分割 # 光伏识别- 图形分割
# path = "/home/xiazj/ai-station/ai_station_merge/tmp/pv/99f06853-4788-4608-8884-2a3b7bc32131/taihuyuan_7-8.png" # path = "/home/xiazj/ai-station/ai_station_merge/tmp/pv/99f06853-4788-4608-8884-2a3b7bc32131/taihuyuan_7-8.png"
# result = model_deal.roof_pic(pv_model,path,param.wdpv_palette) # result = model_deal.roof_pic(pv_model,path,param.wdpv_palette)
# print(result) # print(result)
# 光伏识别 - 像素面积计算 # # 光伏识别 - 像素面积计算
# path = "/home/xiazj/ai-station/ai_station_merge/tmp/pv/99f06853-4788-4608-8884-2a3b7bc32131/taihuyuan_7-8.png" # path = "/home/xiazj/ai-station/ai_station_merge/tmp/pv/99f06853-4788-4608-8884-2a3b7bc32131/taihuyuan_7-8.png"
# scale_m = 0.92*0.92 # Z18代表的像素大小 # scale_m = 0.92*0.92 # Z18代表的像素大小
# result = model_deal.roof_area(path,scale_m,param.wdpv_colors) # result = model_deal.roof_area(path,scale_m,param.wdpv_colors)
@ -111,7 +111,7 @@ ch4_model_gas = joblib.load(os.path.join(current_dir,'jiawanyuce/qixiangnongdu_m
""" 屋顶光伏识别 """ """ 屋顶光伏识别 """
# 屋顶光伏识别- 图形分割 # # 屋顶光伏识别- 图形分割
# path = "/home/xiazj/ai-station/ai_station_merge/tmp/wudingpv/99f06853-4788-4608-8884-2a3b7bc32131/taihuyuan_7-8.png" # path = "/home/xiazj/ai-station/ai_station_merge/tmp/wudingpv/99f06853-4788-4608-8884-2a3b7bc32131/taihuyuan_7-8.png"
# result = model_deal.roofpv_pic(roof_model,pv_model,path,param.wdpv_palette) # result = model_deal.roofpv_pic(roof_model,pv_model,path,param.wdpv_palette)
# file_list = result['reason'] # file_list = result['reason']
@ -138,18 +138,21 @@ ch4_model_gas = joblib.load(os.path.join(current_dir,'jiawanyuce/qixiangnongdu_m
# 3. 上传数据的预测 # 3. 上传数据的预测
# 返回pred_datatrue_data通过时间戳为x轴进行展示结果即可,没有的话就是没有,有的话就是有 # 返回pred_datatrue_data通过时间戳为x轴进行展示结果即可,没有的话就是没有,有的话就是有
# test_data_path = "/home/xiazj/ai-station/ai_station_merge/tmp/guangfufadian/99f06853-4788-4608-8884-2a3b7bc32131/run_test.csv" test_data_path = "/home/xiazj/ai-station-code/guangfufadian/datasets/run_test.csv"
# predictions = pvfd_model.run_inference(test_data_path) # predictions = pvfd_model.run_inference(test_data_path)
# print(len(predictions))
# predictions = np.array(predictions).flatten() # predictions = np.array(predictions).flatten()
# pred_data, true_data = prepare_data.result_merge_guangfufadian(test_data_path,predictions) # pred_data, true_data = prepare_data.result_merge_guangfufadian(test_data_path,predictions)
# print(pred_data) # print(pred_data)
# print(true_data) # print(true_data)
# start_time = '2019-05-23 03:15:00'
# end_time = '2019-05-25 03:30:00'
# print(model_deal.start_pvelectric_predict_endpoint(pvfd_model,test_data_path,start_time,end_time,True))
"""风力发电预测 """ """风力发电预测 """
# # 1. 读取训练文件,截取部分数据,并针对点击列进行数据前端展示 # 1. 读取训练文件,截取部分数据,并针对点击列进行数据前端展示
# # 展示某一列,并进行返回 # 展示某一列,并进行返回
# tmp = prepare_data.show_data_windfd("Wind speed at height of 10 meters (m/s)") # tmp = prepare_data.show_data_windfd("Wind speed at height of 10 meters (m/s)")
# print(tmp) # print(tmp)
@ -160,51 +163,52 @@ ch4_model_gas = joblib.load(os.path.join(current_dir,'jiawanyuce/qixiangnongdu_m
# # 3. 上传数据的预测 # # 3. 上传数据的预测
# test_data_path = "/home/xiazj/ai-station/ai_station_merge/tmp/fenglifadian/99f06853-4788-4608-8884-2a3b7bc32131/Wind_farm_test.csv" test_data_path = "/home/xiazj/ai-station-code/fenglifadian/datasets/Wind_farm_test.csv"
# predictions = windfd_model.run_inference(test_data_path) predictions = windfd_model.run_inference(test_data_path)
# predictions = np.array(predictions).flatten() predictions = np.array(predictions).flatten()
# pred_data, true_data = prepare_data.result_merge_fenglifadian(test_data_path,predictions) print(len(predictions))
# print(pred_data) pred_data, true_data = prepare_data.result_merge_fenglifadian(test_data_path,predictions)
# print(true_data) print(pred_data)
print(true_data)
"""甲烷产量预测""" """甲烷产量预测"""
#1、读取训练文件截取部分数据并针对点击列进行数据前端展示 # 1、读取训练文件截取部分数据并针对点击列进行数据前端展示
# test_data_path = "/home/xiazj/ai-station/ai_station_merge/tmp/jiawanyuce/jiawan_test.csv" # test_data_path = "/home/xiazj/ai-station/ai_station_merge/tmp/jiawanyuce/jiawan_test.csv"
# tmp = prepare_data.show_data_jiawanyuce("X_ch") # tmp = prepare_data.show_data_jiawanyuce("X_ch")
# print(tmp) # print(tmp)
# #2、进行预测预测接口 # 2、进行预测预测接口
# test_data_path = "/home/xiazj/ai-station/ai_station_merge/tmp/jiawanyuce/jiawan_test.csv" # test_data_path = "/home/xiazj/ai-station-code/jiawanyuce/data/jiawan_test.csv"
# tmp = model_deal.start_predict_endpoint(ch4_model_flow,ch4_model_gas,test_data_path,"2023-01-01 02:30:00","2023-01-03 02:30:00",2,False) # tmp = model_deal.start_predict_endpoint(ch4_model_flow,ch4_model_gas,test_data_path,"2023-01-01 02:30:00","2023-01-03 02:30:00",2,True)
# print(tmp) # print(tmp)
""" 煤热解 """ # """ 煤热解 """
meirejie_test_content = { # meirejie_test_content = {
'A': 11.92, # 'A': 11.92,
'V' : 51.16, # 'V' : 51.16,
'FC': 48.84, # 'FC': 48.84,
'C': 83.22 , # 'C': 83.22 ,
'H': 3.89, # 'H': 3.89,
'N': 2.72, # 'N': 2.72,
'S': 0.45, # 'S': 0.45,
'O':20.21, # 'O':20.21,
'H/C':0.56, # 'H/C':0.56,
'O/C':0.18, # 'O/C':0.18,
'N/C':0.03, # 'N/C':0.03,
'Rt':40.00, # 'Rt':40.00,
'Hr':5.00, # 'Hr':5.00,
'dp':0.20, # 'dp':0.20,
'T':510.00 # 'T':510.00
} # }
meirejie_test_content = pd.DataFrame([meirejie_test_content]) # meirejie_test_content = pd.DataFrame([meirejie_test_content])
meirejie_result_content = { # meirejie_result_content = {
'Tar':11.71, # 'Tar':11.71,
'Gas':10.81 , # 'Gas':10.81 ,
'Char':75.31, # 'Char':75.31,
'Water':2.17 # 'Water':2.17
} # }
#1、 tar 焦油 # #1、 tar 焦油
#1.1 单独预测 #1.1 单独预测
# tar_result = model_deal.pred_single_tar(meirejie_test_content) # tar_result = model_deal.pred_single_tar(meirejie_test_content)
# print(tar_result) # print(tar_result)
@ -245,28 +249,28 @@ meirejie_result_content = {
"""煤基碳材料""" # """煤基碳材料"""
meijiegou_test_content = { # meijiegou_test_content = {
'A': 10.43, # 'A': 10.43,
'VM' : 35.88, # 'VM' : 35.88,
'K/C': 4, # 'K/C': 4,
'MM': 0 , # 'MM': 0 ,
'AT': 800, # 'AT': 800,
'At': 1, # 'At': 1,
'Rt': 5 # 'Rt': 5
} # }
# meijiegou_test_content = pd.DataFrame([meijiegou_test_content]) # # meijiegou_test_content = pd.DataFrame([meijiegou_test_content])
meicailiao_test_content = { # meicailiao_test_content = {
"SSA":1141.8, # "SSA":1141.8,
"TPV":0.46, # "TPV":0.46,
"N":1.74, # "N":1.74,
"O":3.84, # "O":3.84,
"ID/IG":1.102, # "ID/IG":1.102,
"J":0.5 # "J":0.5
} # }
meicailiao_test_content = pd.DataFrame([meicailiao_test_content]) # meicailiao_test_content = pd.DataFrame([meicailiao_test_content])
# 活性炭总表面积预测分析 # # 活性炭总表面积预测分析 #
# # # 1、 单独预测 # # # 1、 单独预测
@ -324,17 +328,18 @@ meicailiao_test_content = pd.DataFrame([meicailiao_test_content])
# "KC_min" : None, "KC_max": None, "KC_step": None,"MM_min" : None, "MM_max": None, "MM_step": None, # "KC_min" : None, "KC_max": None, "KC_step": None,"MM_min" : None, "MM_max": None, "MM_step": None,
# "AT_min" : None, "AT_max": None, "AT_step": None,"At_min" : None, "At_max": None, "At_step": None, # "AT_min" : None, "AT_max": None, "AT_step": None,"At_min" : None, "At_max": None, "At_step": None,
# "Rt_min" : None, "Rt_max": None, "Rt_step": None} # "Rt_min" : None, "Rt_max": None, "Rt_step": None}
params = {'A_min': 4.0, 'A_max': 48.0, 'A_step': 4.0, 'VM_min': 5.0, 'VM_max': 50.0, 'VM_step': 5.0, 'KC_min': 1.0, 'KC_max': 4.0, 'KC_step': 0.5, 'MM_min': 0.0, 'MM_max': 1.0, 'MM_step': 1.0, 'AT_min': 600.0, 'AT_max': 900.0, 'AT_step': 50.0, 'At_min': 0.5, 'At_max': 2.0, 'At_step': 0.5, 'Rt_min': 5.0, 'Rt_max': 10.0, 'Rt_step': 5.0} # params = {'A_min': 4.0, 'A_max': 48.0, 'A_step': 4.0, 'VM_min': 5.0, 'VM_max': 50.0, 'VM_step': 5.0, 'KC_min': 1.0, 'KC_max': 4.0, 'KC_step': 0.5, 'MM_min': 0.0, 'MM_max': 1.0, 'MM_step': 1.0, 'AT_min': 600.0, 'AT_max': 900.0, 'AT_step': 50.0, 'At_min': 0.5, 'At_max': 2.0, 'At_step': 0.5, 'Rt_min': 5.0, 'Rt_max': 10.0, 'Rt_step': 5.0}
params = prepare_data.get_params(params) # params = prepare_data.get_params(params)
pred_data = prepare_data.create_pred_data(params) # pred_data = prepare_data.create_pred_data(params)
result = model_deal.pred_func("xgb",pred_data) # result = model_deal.pred_func("xgb",pred_data)
sorted_result = result.sort_values(by=['SSA', 'TPV'], ascending=[False, False]) # sorted_result = result.sort_values(by=['SSA', 'TPV'], ascending=[False, False])
# 保留条数 # sorted_result.to_csv('/home/xiazj/ai-station-code/meijitancailiao/data/moni.csv')
num = 6 # # 保留条数
if num is None: # num = 6
print(sorted_result.head()) # 返回全部 # if num is None:
else: # print(sorted_result.head()) # 返回全部
print(sorted_result.head(6)) # 返回所需条数 # else:
# print(sorted_result.head(6)) # 返回所需条数
"""数据界面获取""" """数据界面获取"""

View File

@ -60,22 +60,20 @@ class ModelInference:
数据长度满足192截取前192 数据长度满足192截取前192
数据长度不满足192前拼接满足数量级 数据长度不满足192前拼接满足数量级
""" """
def load_pred_data(self,data_path): def load_pred_data(self,data):
data = pd.read_csv(data_path)
raw_data = data.values raw_data = data.values
length = raw_data.shape[0] length = raw_data.shape[0]
# 顺序,必须一致才能进行下一步 # 顺序,必须一致才能进行下一步
check_list = ['date', 'Wind speed at height of 10 meters (m/s)', check_list = ['date', 'WS_10',
'Wind direction at height of 10 meters (?)', 'WD_10',
'Wind speed at height of 30 meters (m/s)', 'WS_30',
'Wind direction at height of 30 meters (?)', 'WD_30',
'Wind speed at height of 50 meters (m/s)', 'WS_50',
'Wind direction at height of 50 meters (?)', 'WD_50',
'Wind speed - at the height of wheel hub (m/s)', 'WS_hub',
'Wind speed - at the height of wheel hub (?)', 'WD_hub',
'Air temperature (буC) ', 'Atmosphere (hpa)', 'Relative humidity (%)', 'Air temperature', 'Atmosphere', 'Relative humidity',
'Power(MW)'] 'Power']
columns_match = list(data.columns) == check_list columns_match = list(data.columns) == check_list
if columns_match: if columns_match:
if length > fenglifadian_args.in_len: if length > fenglifadian_args.in_len:
@ -90,10 +88,10 @@ class ModelInference:
input_data = np.array(input_data) input_data = np.array(input_data)
input_data = input_data[:fenglifadian_args.in_len, 1:].astype(np.float32) input_data = input_data[:fenglifadian_args.in_len, 1:].astype(np.float32)
input_tensor = torch.tensor(input_data, dtype=torch.float32).unsqueeze(0) # 增加batch维度 input_tensor = torch.tensor(input_data, dtype=torch.float32).unsqueeze(0) # 增加batch维度
return input_tensor return {'status':True, 'reason':input_tensor }
else: else:
print("文件不匹配,请检查上传文件与模版是否一致") print("文件不匹配,请检查上传文件与模版是否一致")
return None return {'status':False, 'reason':'文件不匹配,请检查上传文件与模版是否一致'}
# 数据归一化 # 数据归一化
def preprocess_data(self, input_tensor): def preprocess_data(self, input_tensor):
@ -106,11 +104,14 @@ class ModelInference:
# return predictions.cpu().numpy() # 返回 NumPy 数组 # return predictions.cpu().numpy() # 返回 NumPy 数组
return predictions return predictions
# 推理过程 # 推理过程
def run_inference(self, file_path): def run_inference(self, data):
raw_data = self.load_pred_data(file_path) raw_data = self.load_pred_data(data)
input_tensor = self.preprocess_data(raw_data) if raw_data['status'] == False:
predictions = self.predict(input_tensor) return {'status':False, 'reason':'文件不匹配,请检查上传文件与模版是否一致'}
predictions = self.scaler.inverse_transform(predictions) else:
predictions = predictions.squeeze(0) input_tensor = self.preprocess_data(raw_data['reason'])
predictions = predictions.cpu().numpy() predictions = self.predict(input_tensor)
return predictions[:,-1:] predictions = self.scaler.inverse_transform(predictions)
predictions = predictions.squeeze(0)
predictions = predictions.cpu().numpy()
return {'status':True, 'reason':predictions[:,-1:]}

View File

@ -1,289 +1,482 @@
date_time,nwp_globalirrad,nwp_directirrad,nwp_temperature,nwp_humidity,nwp_windspeed,nwp_winddirection,nwp_pressure,lmd_totalirrad,lmd_diffuseirrad,lmd_temperature,lmd_pressure,lmd_winddirection,lmd_windspeed,power date_time,nwp_globalirrad,nwp_directirrad,nwp_temperature,nwp_humidity,nwp_windspeed,nwp_winddirection,nwp_pressure,lmd_totalirrad,lmd_diffuseirrad,lmd_temperature,lmd_pressure,lmd_winddirection,lmd_windspeed,power
2019-05-23 03:15:00,0.0,0.0,20.98,17.05,7.09,268.51,947.19,0,0,24.1,946.700012,258,3.4,0.0 5/23/2019 3:15,0,0,20.98,17.05,7.09,268.51,947.19,0,0,24.1,946.700012,258,3.4,0
2019-05-23 03:30:00,0.0,0.0,21.12,16.75,7.05,269.86,947.05,0,0,23.9,946.799988,253,3.3,0.0 5/23/2019 3:30,0,0,21.12,16.75,7.05,269.86,947.05,0,0,23.9,946.799988,253,3.3,0
2019-05-23 03:45:00,0.0,0.0,21.27,16.43,6.99,271.05,947.15,0,0,23.9,946.599976,278,3.2,0.0 5/23/2019 3:45,0,0,21.27,16.43,6.99,271.05,947.15,0,0,23.9,946.599976,278,3.2,0
2019-05-23 04:00:00,0.0,0.0,21.39,16.14,6.91,272.47,947.27,0,0,24.299999,946.599976,275,4.5,0.0 5/23/2019 4:00,0,0,21.39,16.14,6.91,272.47,947.27,0,0,24.299999,946.599976,275,4.5,0
2019-05-23 04:15:00,0.0,0.0,21.42,15.93,6.84,273.84,947.27,0,0,23.6,946.5,250,5.1,0.0 5/23/2019 4:15,0,0,21.42,15.93,6.84,273.84,947.27,0,0,23.6,946.5,250,5.1,0
2019-05-23 04:30:00,0.0,0.0,21.35,15.85,6.78,273.76,947.3,0,0,23.299999,946.599976,185,2.5,0.0 5/23/2019 4:30,0,0,21.35,15.85,6.78,273.76,947.3,0,0,23.299999,946.599976,185,2.5,0
2019-05-23 04:45:00,0.0,0.0,21.2,15.86,6.73,272.42,947.47,0,0,23.4,946.799988,278,5.0,0.0 5/23/2019 4:45,0,0,21.2,15.86,6.73,272.42,947.47,0,0,23.4,946.799988,278,5,0
2019-05-23 05:00:00,0.0,0.0,20.96,15.98,6.7,270.74,947.5,0,0,23.6,946.700012,236,4.1,0.0 5/23/2019 5:00,0,0,20.96,15.98,6.7,270.74,947.5,0,0,23.6,946.700012,236,4.1,0
2019-05-23 05:15:00,0.0,0.0,20.7,16.15,6.67,268.99,947.54,0,0,23.5,946.900024,236,5.3,0.0 5/23/2019 5:15,0,0,20.7,16.15,6.67,268.99,947.54,0,0,23.5,946.900024,236,5.3,0
2019-05-23 05:30:00,16.12,8.55,20.47,16.77,6.64,267.36,947.63,6,4,23.4,947.0,239,5.7,0.10132 5/23/2019 5:30,16.12,8.55,20.47,16.77,6.64,267.36,947.63,6,4,23.4,947,239,5.7,0.10132
2019-05-23 05:45:00,59.11,42.07,20.4,18.11,6.61,265.27,947.74,16,11,23.200001,947.200012,255,7.7,0.286004 5/23/2019 5:45,59.11,42.07,20.4,18.11,6.61,265.27,947.74,16,11,23.200001,947.200012,255,7.7,0.286004
2019-05-23 06:00:00,92.58,71.04,20.71,19.16,6.59,262.93,947.71,24,17,23.200001,947.299988,222,3.4,0.499151 5/23/2019 6:00,92.58,71.04,20.71,19.16,6.59,262.93,947.71,24,17,23.200001,947.299988,222,3.4,0.499151
2019-05-23 06:15:00,146.51,119.79,21.59,19.47,6.59,261.02,947.73,31,23,23.299999,947.299988,278,5.2,0.779324 5/23/2019 6:15,146.51,119.79,21.59,19.47,6.59,261.02,947.73,31,23,23.299999,947.299988,278,5.2,0.779324
2019-05-23 06:30:00,184.0,154.52,22.75,19.15,6.59,260.08,947.81,38,28,23.5,947.5,210,6.5,1.2091379999999998 5/23/2019 6:30,184,154.52,22.75,19.15,6.59,260.08,947.81,38,28,23.5,947.5,210,6.5,1.2091379999999998
2019-05-23 06:45:00,241.53,208.58,24.17,18.26,6.65,258.62,947.96,74,33,23.9,947.599976,261,8.1,1.76781 5/23/2019 6:45,241.53,208.58,24.17,18.26,6.65,258.62,947.96,74,33,23.9,947.599976,261,8.1,1.76781
2019-05-23 07:00:00,280.33,245.41,25.48,17.07,6.83,256.79,948.16,124,38,24.1,947.700012,289,5.6,2.484841 5/23/2019 7:00,280.33,245.41,25.48,17.07,6.83,256.79,948.16,124,38,24.1,947.700012,289,5.6,2.484841
2019-05-23 07:15:00,338.68,301.16,26.6,15.88,7.11,255.64,948.42,177,42,24.299999,947.700012,272,4.1,3.308445 5/23/2019 7:15,338.68,301.16,26.6,15.88,7.11,255.64,948.42,177,42,24.299999,947.700012,272,4.1,3.308445
2019-05-23 07:30:00,377.39,338.34,27.36,15.43,7.35,253.68,948.61,236,46,24.700001,948.0,239,5.2,4.247745 5/23/2019 7:30,377.39,338.34,27.36,15.43,7.35,253.68,948.61,236,46,24.700001,948,239,5.2,4.247745
2019-05-23 07:45:00,434.78,393.69,28.1,15.18,7.49,252.33,948.66,298,49,25.1,948.0,264,4.9,5.251472 5/23/2019 7:45,434.78,393.69,28.1,15.18,7.49,252.33,948.66,298,49,25.1,948,264,4.9,5.251472
2019-05-23 08:00:00,472.37,430.05,28.88,14.56,7.51,253.68,948.69,355,51,26.0,948.0,196,5.1,6.242268 5/23/2019 8:00,472.37,430.05,28.88,14.56,7.51,253.68,948.69,355,51,26,948,196,5.1,6.242268
2019-05-23 08:15:00,527.39,483.39,29.66,13.81,7.44,254.82,948.71,411,55,26.4,948.0,323,7.2,7.204602 5/23/2019 8:15,527.39,483.39,29.66,13.81,7.44,254.82,948.71,411,55,26.4,948,323,7.2,7.204602
2019-05-23 08:30:00,563.0,517.99,30.31,13.31,7.27,255.13,948.74,467,59,27.200001,948.0,255,5.1,8.168957 5/23/2019 8:30,563,517.99,30.31,13.31,7.27,255.13,948.74,467,59,27.200001,948,255,5.1,8.168957
2019-05-23 08:45:00,614.48,568.07,31.02,12.92,6.93,255.75,948.82,520,63,27.799999,948.099976,230,6.7,9.058953 5/23/2019 8:45,614.48,568.07,31.02,12.92,6.93,255.75,948.82,520,63,27.799999,948.099976,230,6.7,9.058953
2019-05-23 09:00:00,647.35,600.08,31.75,12.24,6.47,257.45,948.9,575,65,28.4,948.200012,196,5.7,9.863159 5/23/2019 9:00,647.35,600.08,31.75,12.24,6.47,257.45,948.9,575,65,28.4,948.200012,196,5.7,9.863159
2019-05-23 09:15:00,694.23,645.81,32.39,11.4,5.94,259.75,948.9,624,68,29.299999,948.200012,295,3.0,10.61015 5/23/2019 9:15,694.23,645.81,32.39,11.4,5.94,259.75,948.9,624,68,29.299999,948.200012,295,3,10.61015
2019-05-23 09:30:00,723.74,674.6,32.94,10.92,5.29,258.12,948.81,671,70,30.200001,948.099976,230,4.1,11.31974 5/23/2019 9:30,723.74,674.6,32.94,10.92,5.29,258.12,948.81,671,70,30.200001,948.099976,230,4.1,11.31974
2019-05-23 09:45:00,765.15,715.07,33.46,10.14,4.48,255.65,948.74,719,67,31.1,948.099976,261,5.0,11.93025 5/23/2019 9:45,765.15,715.07,33.46,10.14,4.48,255.65,948.74,719,67,31.1,948.099976,261,5,11.93025
2019-05-23 10:00:00,790.73,740.07,33.85,9.36,3.57,250.97,948.66,771,68,32.099998,948.099976,213,5.8,12.4637 5/23/2019 10:00,790.73,740.07,33.85,9.36,3.57,250.97,948.66,771,68,32.099998,948.099976,213,5.8,12.4637
2019-05-23 10:15:00,825.7,774.27,34.15,8.75,2.72,236.32,948.57,821,67,32.400002,948.200012,64,3.8,12.90708 5/23/2019 10:15,825.7,774.27,34.15,8.75,2.72,236.32,948.57,821,67,32.400002,948.200012,64,3.8,12.90708
2019-05-23 10:30:00,846.62,794.75,34.37,8.29,2.16,212.24,948.58,866,65,33.599998,948.099976,236,4.7,13.3642 5/23/2019 10:30,846.62,794.75,34.37,8.29,2.16,212.24,948.58,866,65,33.599998,948.099976,236,4.7,13.3642
2019-05-23 10:45:00,874.29,821.81,34.59,8.01,2.01,187.37,948.64,899,66,34.0,948.0,247,6.2,13.65609 5/23/2019 10:45,874.29,821.81,34.59,8.01,2.01,187.37,948.64,899,66,34,948,247,6.2,13.65609
2019-05-23 11:00:00,890.2,837.39,34.8,7.9,2.09,177.01,948.63,937,66,35.0,947.900024,253,3.1,13.88812 5/23/2019 11:00,890.2,837.39,34.8,7.9,2.09,177.01,948.63,937,66,35,947.900024,253,3.1,13.88812
2019-05-23 11:15:00,910.24,857.01,35.02,7.72,2.2,175.58,948.59,964,65,35.400002,947.799988,224,3.5,14.202179999999998 5/23/2019 11:15,910.24,857.01,35.02,7.72,2.2,175.58,948.59,964,65,35.400002,947.799988,224,3.5,14.202179999999998
2019-05-23 11:30:00,920.93,867.48,35.22,7.59,2.32,179.46,948.55,977,64,36.0,947.599976,196,1.6,14.27024 5/23/2019 11:30,920.93,867.48,35.22,7.59,2.32,179.46,948.55,977,64,36,947.599976,196,1.6,14.27024
2019-05-23 11:45:00,932.97,879.28,35.44,7.39,2.54,187.69,948.45,1014,64,36.700001,947.299988,227,3.6,14.58771 5/23/2019 11:45,932.97,879.28,35.44,7.39,2.54,187.69,948.45,1014,64,36.700001,947.299988,227,3.6,14.58771
2019-05-23 12:00:00,938.36,884.59,35.63,7.17,2.94,198.01,948.33,1016,67,36.900002,947.200012,241,3.1,14.63442 5/23/2019 12:00,938.36,884.59,35.63,7.17,2.94,198.01,948.33,1016,67,36.900002,947.200012,241,3.1,14.63442
2019-05-23 12:15:00,942.58,888.69,35.81,7.0,3.44,205.26,948.27,1003,70,35.900002,947.0,191,0.8,14.49719 5/23/2019 12:15,942.58,888.69,35.81,7,3.44,205.26,948.27,1003,70,35.900002,947,191,0.8,14.49719
2019-05-23 12:30:00,942.71,888.84,35.98,6.86,3.94,209.65,948.25,1000,82,36.599998,947.0,233,2.3,14.55544 5/23/2019 12:30,942.71,888.84,35.98,6.86,3.94,209.65,948.25,1000,82,36.599998,947,233,2.3,14.55544
2019-05-23 12:45:00,938.94,885.14,36.09,6.74,4.3,212.75,948.12,998,85,36.099998,946.700012,247,2.7,14.22331 5/23/2019 12:45,938.94,885.14,36.09,6.74,4.3,212.75,948.12,998,85,36.099998,946.700012,247,2.7,14.22331
2019-05-23 13:00:00,933.6,879.93,36.18,6.66,4.48,215.34,947.9,1006,103,36.700001,946.5,272,3.0,14.41867 5/23/2019 13:00,933.6,879.93,36.18,6.66,4.48,215.34,947.9,1006,103,36.700001,946.5,272,3,14.41867
2019-05-23 13:15:00,921.25,867.84,36.27,6.64,4.54,217.21,947.71,972,101,36.799999,946.299988,250,2.8,14.14035 5/23/2019 13:15,921.25,867.84,36.27,6.64,4.54,217.21,947.71,972,101,36.799999,946.299988,250,2.8,14.14035
2019-05-23 13:30:00,910.03,856.86,36.35,6.66,4.51,217.93,947.52,977,89,37.400002,946.099976,284,5.7,14.022570000000002 5/23/2019 13:30,910.03,856.86,36.35,6.66,4.51,217.93,947.52,977,89,37.400002,946.099976,284,5.7,14.022570000000002
2019-05-23 13:45:00,888.83,836.09,36.43,6.73,4.47,217.26,947.36,926,89,37.200001,945.900024,84,1.2,13.35658 5/23/2019 13:45,888.83,836.09,36.43,6.73,4.47,217.26,947.36,926,89,37.200001,945.900024,84,1.2,13.35658
2019-05-23 14:00:00,871.96,819.58,36.51,6.84,4.43,214.63,947.23,942,87,37.599998,945.700012,264,3.5,13.52902 5/23/2019 14:00,871.96,819.58,36.51,6.84,4.43,214.63,947.23,942,87,37.599998,945.700012,264,3.5,13.52902
2019-05-23 14:15:00,842.84,791.07,36.57,6.97,4.42,211.04,947.08,918,103,37.599998,945.599976,222,1.7,13.01729 5/23/2019 14:15,842.84,791.07,36.57,6.97,4.42,211.04,947.08,918,103,37.599998,945.599976,222,1.7,13.01729
2019-05-23 14:30:00,821.0,769.7,36.61,7.12,4.41,208.37,946.92,848,120,37.0,945.299988,194,1.5,12.18924 5/23/2019 14:30,821,769.7,36.61,7.12,4.41,208.37,946.92,848,120,37,945.299988,194,1.5,12.18924
2019-05-23 14:45:00,784.91,734.39,36.63,7.28,4.35,208.3,946.78,834,140,37.700001,945.200012,284,4.0,11.89244 5/23/2019 14:45,784.91,734.39,36.63,7.28,4.35,208.3,946.78,834,140,37.700001,945.200012,284,4,11.89244
2019-05-23 15:00:00,758.65,708.72,36.65,7.45,4.26,210.43,946.65,797,146,37.099998,945.0,261,4.2,11.66711 5/23/2019 15:00,758.65,708.72,36.65,7.45,4.26,210.43,946.65,797,146,37.099998,945,261,4.2,11.66711
2019-05-23 15:15:00,715.76,666.8,36.66,7.72,4.32,211.2,946.53,730,107,37.200001,944.900024,56,0.6,10.51391 5/23/2019 15:15,715.76,666.8,36.66,7.72,4.32,211.2,946.53,730,107,37.200001,944.900024,56,0.6,10.51391
2019-05-23 15:30:00,684.97,636.72,36.65,8.19,4.76,205.78,946.44,338,125,37.299999,944.900024,270,3.0,5.716215 5/23/2019 15:30,684.97,636.72,36.65,8.19,4.76,205.78,946.44,338,125,37.299999,944.900024,270,3,5.716215
2019-05-23 15:45:00,636.31,589.26,36.52,8.83,5.64,197.05,946.43,597,160,37.299999,944.599976,129,0.9,9.436924 5/23/2019 15:45,636.31,589.26,36.52,8.83,5.64,197.05,946.43,597,160,37.299999,944.599976,129,0.9,9.436924
2019-05-23 16:00:00,602.98,556.77,36.31,9.38,6.56,191.87,946.49,452,160,37.700001,944.299988,253,4.1,7.061485 5/23/2019 16:00,602.98,556.77,36.31,9.38,6.56,191.87,946.49,452,160,37.700001,944.299988,253,4.1,7.061485
2019-05-23 16:15:00,552.1,507.28,36.06,9.63,7.06,189.97,946.43,372,144,37.5,944.400024,28,0.0,5.140048999999999 5/23/2019 16:15,552.1,507.28,36.06,9.63,7.06,189.97,946.43,372,144,37.5,944.400024,28,0,5.140048999999999
2019-05-23 16:30:00,517.4,473.6,35.9,9.55,7.11,187.68,946.35,290,147,37.599998,944.5,255,2.9,4.654119000000001 5/23/2019 16:30,517.4,473.6,35.9,9.55,7.11,187.68,946.35,290,147,37.599998,944.5,255,2.9,4.654119000000001
2019-05-23 16:45:00,463.61,421.48,35.76,9.4,6.97,183.17,946.27,340,161,37.299999,944.299988,258,0.5,5.033188 5/23/2019 16:45,463.61,421.48,35.76,9.4,6.97,183.17,946.27,340,161,37.299999,944.299988,258,0.5,5.033188
2019-05-23 17:00:00,426.69,385.79,35.66,9.33,6.75,177.54,946.19,220,147,37.099998,944.200012,227,5.8,3.616041000000001 5/23/2019 17:00,426.69,385.79,35.66,9.33,6.75,177.54,946.19,220,147,37.099998,944.200012,227,5.8,3.616041000000001
2019-05-23 17:15:00,370.08,331.22,35.55,9.38,6.24,173.95,946.09,163,112,36.0,944.099976,286,2.8,2.6656 5/23/2019 17:15,370.08,331.22,35.55,9.38,6.24,173.95,946.09,163,112,36,944.099976,286,2.8,2.6656
2019-05-23 17:30:00,331.83,294.5,35.53,9.46,5.34,177.17,945.97,153,110,35.700001,944.099976,278,4.1,2.467118 5/23/2019 17:30,331.83,294.5,35.53,9.46,5.34,177.17,945.97,153,110,35.700001,944.099976,278,4.1,2.467118
2019-05-23 17:45:00,274.34,239.58,35.42,9.6,4.59,197.16,945.83,111,80,35.099998,944.400024,267,6.7,1.811398 5/23/2019 17:45,274.34,239.58,35.42,9.6,4.59,197.16,945.83,111,80,35.099998,944.400024,267,6.7,1.811398
2019-05-23 18:00:00,236.29,203.5,35.15,9.89,4.61,225.21,945.74,89,71,34.700001,944.299988,281,4.0,1.493179 5/23/2019 18:00,236.29,203.5,35.15,9.89,4.61,225.21,945.74,89,71,34.700001,944.299988,281,4,1.493179
2019-05-23 18:15:00,179.93,150.66,34.42,10.54,5.02,235.8,945.74,79,55,34.299999,944.400024,244,5.4,1.316404 5/23/2019 18:15,179.93,150.66,34.42,10.54,5.02,235.8,945.74,79,55,34.299999,944.400024,244,5.4,1.316404
2019-05-23 18:30:00,143.43,116.86,33.52,11.47,5.17,236.82,945.81,63,52,33.700001,944.5,258,9.8,1.057303 5/23/2019 18:30,143.43,116.86,33.52,11.47,5.17,236.82,945.81,63,52,33.700001,944.5,258,9.8,1.057303
2019-05-23 18:45:00,88.81,67.28,32.36,12.77,5.08,236.18,945.95,42,33,33.299999,944.799988,233,3.9,0.671365 5/23/2019 18:45,88.81,67.28,32.36,12.77,5.08,236.18,945.95,42,33,33.299999,944.799988,233,3.9,0.671365
2019-05-23 19:00:00,57.48,40.56,31.19,14.07,5.03,236.28,946.12,17,10,32.799999,945.0,222,3.5,0.272553 5/23/2019 19:00,57.48,40.56,31.19,14.07,5.03,236.28,946.12,17,10,32.799999,945,222,3.5,0.272553
2019-05-23 19:15:00,15.33,8.0,29.93,14.97,5.09,237.12,946.32,7,4,32.200001,945.200012,219,2.1,0.1109609999999999 5/23/2019 19:15,15.33,8,29.93,14.97,5.09,237.12,946.32,7,4,32.200001,945.200012,219,2.1,0.1109609999999999
2019-05-23 19:30:00,0.0,0.0,28.93,15.25,5.15,239.21,946.5,0,0,31.700001,945.200012,239,1.6,0.0 5/23/2019 19:30,0,0,28.93,15.25,5.15,239.21,946.5,0,0,31.700001,945.200012,239,1.6,0
2019-05-23 19:45:00,0.0,0.0,28.13,15.55,5.18,242.16,946.66,0,0,31.1,945.400024,213,2.3,0.0 5/23/2019 19:45,0,0,28.13,15.55,5.18,242.16,946.66,0,0,31.1,945.400024,213,2.3,0
2019-05-23 20:00:00,0.0,0.0,27.49,15.91,5.17,245.72,946.85,0,0,30.799999,945.599976,286,1.6,0.0 5/23/2019 20:00,0,0,27.49,15.91,5.17,245.72,946.85,0,0,30.799999,945.599976,286,1.6,0
2019-05-23 20:15:00,0.0,0.0,26.95,16.34,5.14,249.8,947.03,0,0,30.799999,945.799988,216,2.0,0.0 5/23/2019 20:15,0,0,26.95,16.34,5.14,249.8,947.03,0,0,30.799999,945.799988,216,2,0
2019-05-23 20:30:00,0.0,0.0,26.49,16.84,5.11,254.32,947.19,0,0,30.4,945.900024,224,2.0,0.0 5/23/2019 20:30,0,0,26.49,16.84,5.11,254.32,947.19,0,0,30.4,945.900024,224,2,0
2019-05-23 20:45:00,0.0,0.0,26.09,17.37,5.08,257.82,947.34,0,0,29.799999,946.200012,289,0.8,0.0 5/23/2019 20:45,0,0,26.09,17.37,5.08,257.82,947.34,0,0,29.799999,946.200012,289,0.8,0
2019-05-23 21:00:00,0.0,0.0,25.76,17.96,5.07,259.95,947.48,0,0,29.1,946.400024,300,0.3,0.0 5/23/2019 21:00,0,0,25.76,17.96,5.07,259.95,947.48,0,0,29.1,946.400024,300,0.3,0
2019-05-23 21:15:00,0.0,0.0,25.51,18.6,5.08,261.26,947.63,0,0,28.5,946.5,284,0.3,0.0 5/23/2019 21:15,0,0,25.51,18.6,5.08,261.26,947.63,0,0,28.5,946.5,284,0.3,0
2019-05-23 21:30:00,0.0,0.0,25.27,19.36,5.08,262.37,947.77,0,0,28.5,946.599976,16,0.2,0.0 5/23/2019 21:30,0,0,25.27,19.36,5.08,262.37,947.77,0,0,28.5,946.599976,16,0.2,0
2019-05-23 21:45:00,0.0,0.0,25.05,20.21,5.1,264.01,947.92,0,0,28.1,946.599976,28,0.3,0.0 5/23/2019 21:45,0,0,25.05,20.21,5.1,264.01,947.92,0,0,28.1,946.599976,28,0.3,0
2019-05-23 22:00:00,0.0,0.0,24.83,21.22,5.21,265.1,948.04,0,0,28.0,946.700012,351,0.0,0.0 5/23/2019 22:00,0,0,24.83,21.22,5.21,265.1,948.04,0,0,28,946.700012,351,0,0
2019-05-23 22:15:00,0.0,0.0,24.68,22.33,5.47,265.38,948.25,0,0,28.0,946.700012,255,0.2,0.0 5/23/2019 22:15,0,0,24.68,22.33,5.47,265.38,948.25,0,0,28,946.700012,255,0.2,0
2019-05-23 22:30:00,0.0,0.0,24.64,23.42,5.88,265.97,948.43,0,0,28.5,946.799988,216,0.2,0.0 5/23/2019 22:30,0,0,24.64,23.42,5.88,265.97,948.43,0,0,28.5,946.799988,216,0.2,0
2019-05-23 22:45:00,0.0,0.0,24.73,24.02,6.36,264.64,948.57,0,0,28.200001,946.700012,329,0.8,0.0 5/23/2019 22:45,0,0,24.73,24.02,6.36,264.64,948.57,0,0,28.200001,946.700012,329,0.8,0
2019-05-23 23:00:00,0.0,0.0,24.74,24.2,6.74,263.69,948.7,0,0,27.9,946.700012,326,1.0,0.0 5/23/2019 23:00,0,0,24.74,24.2,6.74,263.69,948.7,0,0,27.9,946.700012,326,1,0
2019-05-23 23:15:00,0.0,0.0,24.71,24.03,6.97,263.0,948.84,0,0,28.1,946.700012,250,2.0,0.0 5/23/2019 23:15,0,0,24.71,24.03,6.97,263,948.84,0,0,28.1,946.700012,250,2,0
2019-05-23 23:30:00,0.0,0.0,24.61,23.8,7.09,262.7,948.98,0,0,27.4,946.900024,239,1.3,0.0 5/23/2019 23:30,0,0,24.61,23.8,7.09,262.7,948.98,0,0,27.4,946.900024,239,1.3,0
2019-05-23 23:45:00,0.0,0.0,24.46,23.74,7.17,263.17,949.14,0,0,27.200001,946.799988,253,0.5,0.0 5/23/2019 23:45,0,0,24.46,23.74,7.17,263.17,949.14,0,0,27.200001,946.799988,253,0.5,0
2019-05-24 00:00:00,0.0,0.0,22.21,28.53,5.36,278.74,947.86,0,0,27.1,946.599976,247,0.0,0.0 5/24/2019 0:00,0,0,22.21,28.53,5.36,278.74,947.86,0,0,27.1,946.599976,247,0,0
2019-05-24 00:15:00,0.0,0.0,22.13,28.49,5.41,278.24,947.91,0,0,26.5,946.5,19,0.0,0.0 5/24/2019 0:15,0,0,22.13,28.49,5.41,278.24,947.91,0,0,26.5,946.5,19,0,0
2019-05-24 00:30:00,0.0,0.0,21.98,28.52,5.52,278.31,947.96,0,0,26.200001,946.599976,267,1.1,0.0 5/24/2019 0:30,0,0,21.98,28.52,5.52,278.31,947.96,0,0,26.200001,946.599976,267,1.1,0
2019-05-24 00:45:00,0.0,0.0,21.91,28.36,5.65,278.29,948.0,0,0,26.200001,946.700012,298,0.3,0.0 5/24/2019 0:45,0,0,21.91,28.36,5.65,278.29,948,0,0,26.200001,946.700012,298,0.3,0
2019-05-24 01:00:00,0.0,0.0,21.82,28.18,5.7,276.61,947.76,0,0,25.9,946.5,303,0.3,0.0 5/24/2019 1:00,0,0,21.82,28.18,5.7,276.61,947.76,0,0,25.9,946.5,303,0.3,0
2019-05-24 01:15:00,0.0,0.0,21.7,28.08,5.71,274.62,947.61,0,0,25.6,946.5,264,0.0,0.0 5/24/2019 1:15,0,0,21.7,28.08,5.71,274.62,947.61,0,0,25.6,946.5,264,0,0
2019-05-24 01:30:00,0.0,0.0,21.6,27.96,5.7,274.52,947.66,0,0,25.200001,946.5,295,0.4,0.0 5/24/2019 1:30,0,0,21.6,27.96,5.7,274.52,947.66,0,0,25.200001,946.5,295,0.4,0
2019-05-24 01:45:00,0.0,0.0,21.48,27.95,5.73,275.36,947.94,0,0,25.299999,946.400024,185,0.2,0.0 5/24/2019 1:45,0,0,21.48,27.95,5.73,275.36,947.94,0,0,25.299999,946.400024,185,0.2,0
2019-05-24 02:00:00,0.0,0.0,21.38,27.98,5.78,275.26,948.04,0,0,25.299999,946.299988,213,0.0,0.0 5/24/2019 2:00,0,0,21.38,27.98,5.78,275.26,948.04,0,0,25.299999,946.299988,213,0,0
2019-05-24 02:15:00,0.0,0.0,21.29,28.1,5.8,275.69,948.04,0,0,25.200001,946.200012,11,0.0,0.0 5/24/2019 2:15,0,0,21.29,28.1,5.8,275.69,948.04,0,0,25.200001,946.200012,11,0,0
2019-05-24 02:30:00,0.0,0.0,21.17,28.32,5.77,276.26,948.03,0,0,24.9,946.200012,30,0.4,0.0 5/24/2019 2:30,0,0,21.17,28.32,5.77,276.26,948.03,0,0,24.9,946.200012,30,0.4,0
2019-05-24 02:45:00,0.0,0.0,21.05,28.61,5.75,275.82,947.92,0,0,24.9,946.099976,340,0.5,0.0 5/24/2019 2:45,0,0,21.05,28.61,5.75,275.82,947.92,0,0,24.9,946.099976,340,0.5,0
2019-05-24 03:00:00,0.0,0.0,20.93,28.94,5.72,275.49,947.73,0,0,25.0,946.0,16,0.5,0.0 5/24/2019 3:00,0,0,20.93,28.94,5.72,275.49,947.73,0,0,25,946,16,0.5,0
2019-05-24 03:15:00,0.0,0.0,20.83,29.28,5.7,275.45,947.6,0,0,24.700001,945.900024,0,0.9,0.0 5/24/2019 3:15,0,0,20.83,29.28,5.7,275.45,947.6,0,0,24.700001,945.900024,0,0.9,0
2019-05-24 03:30:00,0.0,0.0,20.66,29.74,5.72,274.81,947.43,0,0,25.1,945.799988,345,0.9,0.0 5/24/2019 3:30,0,0,20.66,29.74,5.72,274.81,947.43,0,0,25.1,945.799988,345,0.9,0
2019-05-24 03:45:00,0.0,0.0,20.68,29.85,5.8,274.23,947.45,0,0,25.1,945.700012,2,1.8,0.0 5/24/2019 3:45,0,0,20.68,29.85,5.8,274.23,947.45,0,0,25.1,945.700012,2,1.8,0
2019-05-24 04:00:00,0.0,0.0,20.65,29.99,5.91,273.47,947.56,0,0,24.5,945.700012,345,2.0,0.0 5/24/2019 4:00,0,0,20.65,29.99,5.91,273.47,947.56,0,0,24.5,945.700012,345,2,0
2019-05-24 04:15:00,0.0,0.0,20.68,30.01,6.03,272.43,947.55,0,0,24.200001,945.599976,2,1.4,0.0 5/24/2019 4:15,0,0,20.68,30.01,6.03,272.43,947.55,0,0,24.200001,945.599976,2,1.4,0
2019-05-24 04:30:00,0.0,0.0,20.72,29.99,6.16,270.87,947.4,0,0,24.4,945.700012,11,0.7,0.0 5/24/2019 4:30,0,0,20.72,29.99,6.16,270.87,947.4,0,0,24.4,945.700012,11,0.7,0
2019-05-24 04:45:00,0.0,0.0,20.66,30.14,6.3,270.39,947.58,0,0,24.200001,945.799988,5,1.3,0.0 5/24/2019 4:45,0,0,20.66,30.14,6.3,270.39,947.58,0,0,24.200001,945.799988,5,1.3,0
2019-05-24 05:00:00,0.0,0.0,20.44,30.58,6.4,270.51,947.67,0,0,24.700001,945.799988,334,1.2,0.0 5/24/2019 5:00,0,0,20.44,30.58,6.4,270.51,947.67,0,0,24.700001,945.799988,334,1.2,0
2019-05-24 05:15:00,0.0,0.0,20.17,31.14,6.42,271.43,947.79,0,0,24.6,946.0,233,0.0,0.0 5/24/2019 5:15,0,0,20.17,31.14,6.42,271.43,947.79,0,0,24.6,946,233,0,0
2019-05-24 05:30:00,14.12,7.27,19.96,31.95,6.39,273.05,947.98,5,3,24.200001,945.700012,216,0.6,0.0734929999999999 5/24/2019 5:30,14.12,7.27,19.96,31.95,6.39,273.05,947.98,5,3,24.200001,945.700012,216,0.6,0.0734929999999999
2019-05-24 05:45:00,49.81,33.88,19.96,32.82,6.33,274.56,947.98,22,17,24.0,946.0,149,0.7,0.368792 5/24/2019 5:45,49.81,33.88,19.96,32.82,6.33,274.56,947.98,22,17,24,946,149,0.7,0.368792
2019-05-24 06:00:00,81.21,61.31,20.25,33.14,6.28,275.12,947.84,37,34,24.0,946.0,180,1.2,0.660454 5/24/2019 6:00,81.21,61.31,20.25,33.14,6.28,275.12,947.84,37,34,24,946,180,1.2,0.660454
2019-05-24 06:15:00,130.42,105.85,20.89,32.69,6.3,274.34,947.75,37,29,23.700001,946.0,90,0.5,0.685913 5/24/2019 6:15,130.42,105.85,20.89,32.69,6.3,274.34,947.75,37,29,23.700001,946,90,0.5,0.685913
2019-05-24 06:30:00,166.49,139.24,21.64,31.71,6.36,272.76,947.55,56,43,23.4,946.099976,126,0.3,1.036116 5/24/2019 6:30,166.49,139.24,21.64,31.71,6.36,272.76,947.55,56,43,23.4,946.099976,126,0.3,1.036116
2019-05-24 06:45:00,219.95,189.95,22.49,30.34,6.39,270.27,947.58,71,60,23.6,946.200012,157,0.1,1.327835 5/24/2019 6:45,219.95,189.95,22.49,30.34,6.39,270.27,947.58,71,60,23.6,946.200012,157,0.1,1.327835
2019-05-24 07:00:00,254.05,222.32,23.23,29.19,6.4,266.9,947.78,87,69,24.1,946.299988,253,1.7,1.611819 5/24/2019 7:00,254.05,222.32,23.23,29.19,6.4,266.9,947.78,87,69,24.1,946.299988,253,1.7,1.611819
2019-05-24 07:15:00,303.96,270.24,23.98,27.85,6.44,262.5,947.98,117,90,24.700001,946.299988,233,1.8,2.124651 5/24/2019 7:15,303.96,270.24,23.98,27.85,6.44,262.5,947.98,117,90,24.700001,946.299988,233,1.8,2.124651
2019-05-24 07:30:00,332.99,295.73,24.6,26.7,6.49,258.2,948.07,115,88,25.0,946.400024,222,2.5,2.124017 5/24/2019 7:30,332.99,295.73,24.6,26.7,6.49,258.2,948.07,115,88,25,946.400024,222,2.5,2.124017
2019-05-24 07:45:00,380.55,344.44,25.25,25.52,6.53,254.23,948.07,131,107,25.1,946.299988,216,1.9,2.470755 5/24/2019 7:45,380.55,344.44,25.25,25.52,6.53,254.23,948.07,131,107,25.1,946.299988,216,1.9,2.470755
2019-05-24 08:00:00,407.73,369.11,25.81,24.37,6.55,251.55,948.04,115,96,25.299999,946.400024,233,1.4,2.208017 5/24/2019 8:00,407.73,369.11,25.81,24.37,6.55,251.55,948.04,115,96,25.299999,946.400024,233,1.4,2.208017
2019-05-24 08:15:00,445.64,401.8,26.37,23.5,6.46,248.55,948.02,92,62,24.9,946.5,250,1.6,1.765559 5/24/2019 8:15,445.64,401.8,26.37,23.5,6.46,248.55,948.02,92,62,24.9,946.5,250,1.6,1.765559
2019-05-24 08:30:00,473.64,429.44,26.93,22.7,6.29,245.35,948.06,148,93,24.9,946.5,239,0.9,2.804388 5/24/2019 8:30,473.64,429.44,26.93,22.7,6.29,245.35,948.06,148,93,24.9,946.5,239,0.9,2.804388
2019-05-24 08:45:00,520.96,477.52,27.42,21.54,6.08,241.72,948.0,188,124,25.1,946.400024,275,1.0,3.491398 5/24/2019 8:45,520.96,477.52,27.42,21.54,6.08,241.72,948,188,124,25.1,946.400024,275,1,3.491398
2019-05-24 09:00:00,551.69,501.43,27.9,21.06,5.76,237.75,947.89,466,230,25.6,946.400024,154,1.3,7.727365 5/24/2019 9:00,551.69,501.43,27.9,21.06,5.76,237.75,947.89,466,230,25.6,946.400024,154,1.3,7.727365
2019-05-24 09:15:00,591.47,548.47,28.42,20.21,5.37,232.06,947.75,341,255,26.799999,946.5,227,0.8,6.248734 5/24/2019 9:15,591.47,548.47,28.42,20.21,5.37,232.06,947.75,341,255,26.799999,946.5,227,0.8,6.248734
2019-05-24 09:30:00,603.17,557.18,28.82,19.62,5.04,227.31,947.56,146,104,26.9,946.0,216,2.4,2.809699 5/24/2019 9:30,603.17,557.18,28.82,19.62,5.04,227.31,947.56,146,104,26.9,946,216,2.4,2.809699
2019-05-24 09:45:00,624.09,575.34,29.26,19.03,4.81,224.27,947.31,282,210,27.5,946.0,210,3.7,5.099175 5/24/2019 9:45,624.09,575.34,29.26,19.03,4.81,224.27,947.31,282,210,27.5,946,210,3.7,5.099175
2019-05-24 10:00:00,628.72,580.69,29.68,18.37,4.72,221.37,947.0,322,232,27.700001,946.0,236,1.1,5.879827 5/24/2019 10:00,628.72,580.69,29.68,18.37,4.72,221.37,947,322,232,27.700001,946,236,1.1,5.879827
2019-05-24 10:15:00,626.35,543.45,30.07,17.73,4.72,219.58,946.86,473,250,28.1,946.099976,292,3.8,7.433452000000001 5/24/2019 10:15,626.35,543.45,30.07,17.73,4.72,219.58,946.86,473,250,28.1,946.099976,292,3.8,7.433452000000001
2019-05-24 10:30:00,608.57,514.54,30.43,17.08,4.76,216.3,946.81,372,257,29.1,946.0,244,1.4,6.322285 5/24/2019 10:30,608.57,514.54,30.43,17.08,4.76,216.3,946.81,372,257,29.1,946,244,1.4,6.322285
2019-05-24 10:45:00,622.88,581.48,30.84,16.56,4.74,213.04,946.8,826,349,29.299999,946.099976,196,2.4,12.15367 5/24/2019 10:45,622.88,581.48,30.84,16.56,4.74,213.04,946.8,826,349,29.299999,946.099976,196,2.4,12.15367
2019-05-24 11:00:00,552.53,445.58,31.11,16.3,4.67,208.8,946.76,1045,278,29.299999,945.900024,255,4.7,16.25565 5/24/2019 11:00,552.53,445.58,31.11,16.3,4.67,208.8,946.76,1045,278,29.299999,945.900024,255,4.7,16.25565
2019-05-24 11:15:00,421.88,272.1,31.22,16.3,4.69,202.14,946.63,1219,310,30.299999,945.799988,298,1.7,16.52508 5/24/2019 11:15,421.88,272.1,31.22,16.3,4.69,202.14,946.63,1219,310,30.299999,945.799988,298,1.7,16.52508
2019-05-24 11:30:00,392.07,320.34,31.53,16.13,4.83,198.63,946.63,887,258,30.299999,945.900024,196,3.5,13.80319 5/24/2019 11:30,392.07,320.34,31.53,16.13,4.83,198.63,946.63,887,258,30.299999,945.900024,196,3.5,13.80319
2019-05-24 11:45:00,206.33,133.68,31.08,16.73,5.05,195.72,946.68,294,233,29.799999,945.599976,154,1.3,5.337551 5/24/2019 11:45,206.33,133.68,31.08,16.73,5.05,195.72,946.68,294,233,29.799999,945.599976,154,1.3,5.337551
2019-05-24 12:00:00,261.79,142.03,31.43,16.76,5.51,193.66,946.64,342,266,30.1,945.599976,202,3.4,6.440347 5/24/2019 12:00,261.79,142.03,31.43,16.76,5.51,193.66,946.64,342,266,30.1,945.599976,202,3.4,6.440347
2019-05-24 12:15:00,180.82,112.54,31.01,17.57,6.22,194.07,946.66,1025,275,30.6,945.5,244,1.9,15.52713 5/24/2019 12:15,180.82,112.54,31.01,17.57,6.22,194.07,946.66,1025,275,30.6,945.5,244,1.9,15.52713
2019-05-24 12:30:00,201.7,100.64,30.97,18.01,6.9,194.98,946.68,318,234,30.799999,945.099976,219,3.5,5.495908999999999 5/24/2019 12:30,201.7,100.64,30.97,18.01,6.9,194.98,946.68,318,234,30.799999,945.099976,219,3.5,5.495908999999999
2019-05-24 12:45:00,149.92,88.58,30.51,18.77,7.26,194.31,946.53,378,219,30.299999,944.900024,168,5.2,6.033394 5/24/2019 12:45,149.92,88.58,30.51,18.77,7.26,194.31,946.53,378,219,30.299999,944.900024,168,5.2,6.033394
2019-05-24 13:00:00,124.31,72.79,30.15,19.49,7.45,191.68,946.37,812,273,29.700001,944.5,168,4.3,14.23589 5/24/2019 13:00,124.31,72.79,30.15,19.49,7.45,191.68,946.37,812,273,29.700001,944.5,168,4.3,14.23589
2019-05-24 13:15:00,156.61,123.75,30.29,19.53,7.63,188.71,946.18,340,217,30.700001,944.299988,165,1.7,5.763612 5/24/2019 13:15,156.61,123.75,30.29,19.53,7.63,188.71,946.18,340,217,30.700001,944.299988,165,1.7,5.763612
2019-05-24 13:30:00,272.17,247.16,30.88,19.0,7.76,185.41,945.99,1086,200,31.299999,944.099976,253,1.8,15.61292 5/24/2019 13:30,272.17,247.16,30.88,19,7.76,185.41,945.99,1086,200,31.299999,944.099976,253,1.8,15.61292
2019-05-24 13:45:00,306.6,283.91,31.15,18.96,7.86,181.69,945.79,1003,327,30.6,944.200012,202,3.6,16.333579999999998 5/24/2019 13:45,306.6,283.91,31.15,18.96,7.86,181.69,945.79,1003,327,30.6,944.200012,202,3.6,16.333579999999998
2019-05-24 14:00:00,338.29,317.27,31.47,19.0,8.06,179.12,945.57,872,211,30.799999,944.099976,202,5.9,11.52492 5/24/2019 14:00,338.29,317.27,31.47,19,8.06,179.12,945.57,872,211,30.799999,944.099976,202,5.9,11.52492
2019-05-24 14:15:00,332.57,311.45,31.61,19.29,8.37,177.69,945.37,713,155,31.5,943.700012,134,1.4,10.58435 5/24/2019 14:15,332.57,311.45,31.61,19.29,8.37,177.69,945.37,713,155,31.5,943.700012,134,1.4,10.58435
2019-05-24 14:30:00,330.07,308.75,31.69,19.65,8.75,176.86,945.18,888,133,32.299999,943.400024,199,2.2,12.95199 5/24/2019 14:30,330.07,308.75,31.69,19.65,8.75,176.86,945.18,888,133,32.299999,943.400024,199,2.2,12.95199
2019-05-24 14:45:00,319.47,298.23,31.7,19.9,9.1,176.27,945.01,503,261,31.4,943.299988,118,4.7,7.650524000000001 5/24/2019 14:45,319.47,298.23,31.7,19.9,9.1,176.27,945.01,503,261,31.4,943.299988,118,4.7,7.650524000000001
2019-05-24 15:00:00,309.39,288.37,31.69,19.99,9.36,176.12,944.9,699,193,31.799999,943.299988,208,4.6,9.340569 5/24/2019 15:00,309.39,288.37,31.69,19.99,9.36,176.12,944.9,699,193,31.799999,943.299988,208,4.6,9.340569
2019-05-24 15:15:00,291.88,271.3,31.64,20.07,9.51,176.79,944.8,201,90,31.200001,943.299988,140,3.9,8.49445 5/24/2019 15:15,291.88,271.3,31.64,20.07,9.51,176.79,944.8,201,90,31.200001,943.299988,140,3.9,8.49445
2019-05-24 15:30:00,283.07,262.57,31.65,19.95,9.57,177.73,944.71,671,87,32.400002,943.0,171,3.8,10.11193 5/24/2019 15:30,283.07,262.57,31.65,19.95,9.57,177.73,944.71,671,87,32.400002,943,171,3.8,10.11193
2019-05-24 15:45:00,275.49,254.6,31.6,19.76,9.6,177.87,944.64,635,93,31.799999,942.799988,182,4.7,9.481666 5/24/2019 15:45,275.49,254.6,31.6,19.76,9.6,177.87,944.64,635,93,31.799999,942.799988,182,4.7,9.481666
2019-05-24 16:00:00,283.88,261.59,31.52,20.18,9.59,177.12,944.64,594,105,31.299999,942.799988,163,2.7,8.852041 5/24/2019 16:00,283.88,261.59,31.52,20.18,9.59,177.12,944.64,594,105,31.299999,942.799988,163,2.7,8.852041
2019-05-24 16:15:00,290.91,266.7,31.36,20.76,9.52,176.28,944.53,526,92,31.6,942.5,163,6.0,7.797799 5/24/2019 16:15,290.91,266.7,31.36,20.76,9.52,176.28,944.53,526,92,31.6,942.5,163,6,7.797799
2019-05-24 16:30:00,308.53,281.72,31.19,21.13,9.41,176.14,944.42,177,93,31.6,942.900024,146,3.3,6.29873 5/24/2019 16:30,308.53,281.72,31.19,21.13,9.41,176.14,944.42,177,93,31.6,942.900024,146,3.3,6.29873
2019-05-24 16:45:00,311.15,282.07,30.97,21.26,9.32,176.13,944.32,451,105,31.299999,942.5,149,4.0,5.853386 5/24/2019 16:45,311.15,282.07,30.97,21.26,9.32,176.13,944.32,451,105,31.299999,942.5,149,4,5.853386
2019-05-24 17:00:00,318.26,286.86,30.82,21.06,9.27,176.34,944.26,370,96,31.299999,942.5,191,3.2,4.284115 5/24/2019 17:00,318.26,286.86,30.82,21.06,9.27,176.34,944.26,370,96,31.299999,942.5,191,3.2,4.284115
2019-05-24 17:15:00,301.64,268.99,30.58,21.33,9.24,176.34,944.16,329,101,30.700001,942.5,16,1.7,4.775473000000001 5/24/2019 17:15,301.64,268.99,30.58,21.33,9.24,176.34,944.16,329,101,30.700001,942.5,16,1.7,4.775473000000001
2019-05-24 17:30:00,290.04,256.37,30.31,22.14,9.17,176.44,944.06,247,76,30.700001,942.400024,174,3.2,3.427027 5/24/2019 17:30,290.04,256.37,30.31,22.14,9.17,176.44,944.06,247,76,30.700001,942.400024,174,3.2,3.427027
2019-05-24 17:45:00,251.31,218.37,29.94,23.21,9.04,177.1,943.91,201,80,30.1,942.5,174,1.9,2.801674 5/24/2019 17:45,251.31,218.37,29.94,23.21,9.04,177.1,943.91,201,80,30.1,942.5,174,1.9,2.801674
2019-05-24 18:00:00,222.29,190.28,29.56,24.31,8.87,178.48,943.81,135,56,29.9,942.599976,154,3.9,1.88593 5/24/2019 18:00,222.29,190.28,29.56,24.31,8.87,178.48,943.81,135,56,29.9,942.599976,154,3.9,1.88593
2019-05-24 18:15:00,170.92,141.88,29.1,25.59,8.66,179.96,943.72,92,49,29.6,942.799988,92,2.5,1.406235 5/24/2019 18:15,170.92,141.88,29.1,25.59,8.66,179.96,943.72,92,49,29.6,942.799988,92,2.5,1.406235
2019-05-24 18:30:00,136.35,109.9,28.65,26.89,8.43,181.66,943.75,60,40,29.1,942.900024,154,3.1,0.969608 5/24/2019 18:30,136.35,109.9,28.65,26.89,8.43,181.66,943.75,60,40,29.1,942.900024,154,3.1,0.969608
2019-05-24 18:45:00,85.9,64.5,28.13,28.3,8.22,183.25,943.83,39,29,28.799999,943.0,115,1.8,0.610111 5/24/2019 18:45,85.9,64.5,28.13,28.3,8.22,183.25,943.83,39,29,28.799999,943,115,1.8,0.610111
2019-05-24 19:00:00,54.78,37.8,27.61,29.8,7.99,184.87,943.92,24,18,28.4,943.099976,174,1.7,0.396965 5/24/2019 19:00,54.78,37.8,27.61,29.8,7.99,184.87,943.92,24,18,28.4,943.099976,174,1.7,0.396965
2019-05-24 19:15:00,15.36,7.6,27.06,31.14,7.72,186.57,943.97,6,3,27.9,943.200012,199,1.3,0.1029359999999999 5/24/2019 19:15,15.36,7.6,27.06,31.14,7.72,186.57,943.97,6,3,27.9,943.200012,199,1.3,0.1029359999999999
2019-05-24 19:30:00,0.0,0.0,26.62,32.13,7.41,188.59,944.06,0,0,27.1,943.5,171,0.7,0.0 5/24/2019 19:30,0,0,26.62,32.13,7.41,188.59,944.06,0,0,27.1,943.5,171,0.7,0
2019-05-24 19:45:00,0.0,0.0,26.26,33.09,7.04,191.71,944.24,0,0,26.299999,943.400024,182,1.2,0.0 5/24/2019 19:45,0,0,26.26,33.09,7.04,191.71,944.24,0,0,26.299999,943.400024,182,1.2,0
2019-05-24 20:00:00,0.0,0.0,25.92,34.1,6.61,195.03,944.39,0,0,26.200001,943.799988,171,1.6,0.0 5/24/2019 20:00,0,0,25.92,34.1,6.61,195.03,944.39,0,0,26.200001,943.799988,171,1.6,0
2019-05-24 20:15:00,0.0,0.0,25.58,35.13,6.12,199.26,944.57,0,0,26.200001,943.900024,149,2.1,0.0 5/24/2019 20:15,0,0,25.58,35.13,6.12,199.26,944.57,0,0,26.200001,943.900024,149,2.1,0
2019-05-24 20:30:00,0.0,0.0,25.2,36.21,5.53,204.28,944.74,0,0,25.6,944.0,160,0.9,0.0 5/24/2019 20:30,0,0,25.2,36.21,5.53,204.28,944.74,0,0,25.6,944,160,0.9,0
2019-05-24 20:45:00,0.0,0.0,24.77,37.35,4.84,210.93,944.86,0,0,25.6,944.200012,137,1.3,0.0 5/24/2019 20:45,0,0,24.77,37.35,4.84,210.93,944.86,0,0,25.6,944.200012,137,1.3,0
2019-05-24 21:00:00,0.0,0.0,24.3,38.47,4.17,222.5,944.98,0,0,24.9,944.200012,250,0.3,0.0 5/24/2019 21:00,0,0,24.3,38.47,4.17,222.5,944.98,0,0,24.9,944.200012,250,0.3,0
2019-05-24 21:15:00,0.0,0.0,23.89,39.35,3.66,238.81,945.13,0,0,24.4,944.299988,16,0.2,0.0 5/24/2019 21:15,0,0,23.89,39.35,3.66,238.81,945.13,0,0,24.4,944.299988,16,0.2,0
2019-05-24 21:30:00,0.0,0.0,23.5,40.14,3.38,255.47,945.18,0,0,24.200001,944.400024,160,0.5,0.0 5/24/2019 21:30,0,0,23.5,40.14,3.38,255.47,945.18,0,0,24.200001,944.400024,160,0.5,0
2019-05-24 21:45:00,0.0,0.0,23.22,40.66,3.34,271.08,945.3,0,0,23.200001,944.400024,337,0.6,0.0 5/24/2019 21:45,0,0,23.22,40.66,3.34,271.08,945.3,0,0,23.200001,944.400024,337,0.6,0
2019-05-24 22:00:00,0.0,0.0,22.99,41.12,3.43,283.36,945.4,0,0,23.200001,944.400024,5,1.2,0.0 5/24/2019 22:00,0,0,22.99,41.12,3.43,283.36,945.4,0,0,23.200001,944.400024,5,1.2,0
2019-05-24 22:15:00,0.0,0.0,22.78,41.68,3.57,291.06,945.55,0,0,23.5,944.5,22,1.5,0.0 5/24/2019 22:15,0,0,22.78,41.68,3.57,291.06,945.55,0,0,23.5,944.5,22,1.5,0
2019-05-24 22:30:00,0.0,0.0,22.58,42.37,3.69,294.68,945.65,0,0,22.299999,944.400024,16,0.8,0.0 5/24/2019 22:30,0,0,22.58,42.37,3.69,294.68,945.65,0,0,22.299999,944.400024,16,0.8,0
2019-05-24 22:45:00,0.0,0.0,22.4,43.22,3.79,296.78,945.72,0,0,22.4,944.5,354,2.0,0.0 5/24/2019 22:45,0,0,22.4,43.22,3.79,296.78,945.72,0,0,22.4,944.5,354,2,0
2019-05-24 23:00:00,0.0,0.0,22.24,44.23,3.88,297.76,945.78,0,0,22.4,944.200012,289,1.2,0.0 5/24/2019 23:00,0,0,22.24,44.23,3.88,297.76,945.78,0,0,22.4,944.200012,289,1.2,0
2019-05-24 23:15:00,0.0,0.0,22.09,45.45,3.92,297.58,945.83,0,0,21.700001,944.200012,343,1.1,0.0 5/24/2019 23:15,0,0,22.09,45.45,3.92,297.58,945.83,0,0,21.700001,944.200012,343,1.1,0
2019-05-24 23:30:00,0.0,0.0,21.96,46.88,3.94,295.31,945.86,0,0,21.6,944.299988,326,1.8,0.0 5/24/2019 23:30,0,0,21.96,46.88,3.94,295.31,945.86,0,0,21.6,944.299988,326,1.8,0
2019-05-24 23:45:00,0.0,0.0,21.82,48.45,3.97,293.76,945.95,0,0,21.799999,944.099976,8,2.1,0.0 5/24/2019 23:45,0,0,21.82,48.45,3.97,293.76,945.95,0,0,21.799999,944.099976,8,2.1,0
2019-05-25 00:00:00,0.0,0.0,20.71,47.15,4.23,285.61,945.14,0,0,22.5,944.099976,59,0.2,0.0 5/25/2019 0:00,0,0,20.71,47.15,4.23,285.61,945.14,0,0,22.5,944.099976,59,0.2,0
2019-05-25 00:15:00,0.0,0.0,20.71,47.84,4.4,283.5,945.13,0,0,22.5,944.0,343,0.5,0.0 5/25/2019 0:15,0,0,20.71,47.84,4.4,283.5,945.13,0,0,22.5,944,343,0.5,0
2019-05-25 00:30:00,0.0,0.0,20.77,48.59,4.66,282.49,945.27,0,0,22.0,944.0,0,1.4,0.0 5/25/2019 0:30,0,0,20.77,48.59,4.66,282.49,945.27,0,0,22,944,0,1.4,0
2019-05-25 00:45:00,0.0,0.0,20.87,49.5,4.95,281.02,945.09,0,0,21.0,943.900024,314,0.4,0.0 5/25/2019 0:45,0,0,20.87,49.5,4.95,281.02,945.09,0,0,21,943.900024,314,0.4,0
2019-05-25 01:00:00,0.0,0.0,20.95,50.59,5.22,280.1,945.0,0,0,22.0,943.799988,326,0.8,0.0 5/25/2019 1:00,0,0,20.95,50.59,5.22,280.1,945,0,0,22,943.799988,326,0.8,0
2019-05-25 01:15:00,0.0,0.0,21.02,51.72,5.43,280.52,944.73,0,0,21.9,943.700012,222,1.0,0.0 5/25/2019 1:15,0,0,21.02,51.72,5.43,280.52,944.73,0,0,21.9,943.700012,222,1,0
2019-05-25 01:30:00,0.0,0.0,21.08,52.81,5.55,281.29,944.82,0,0,22.0,943.599976,216,1.1,0.0 5/25/2019 1:30,0,0,21.08,52.81,5.55,281.29,944.82,0,0,22,943.599976,216,1.1,0
2019-05-25 01:45:00,0.0,0.0,21.1,53.85,5.6,282.45,945.04,0,0,22.0,943.599976,250,1.8,0.0 5/25/2019 1:45,0,0,21.1,53.85,5.6,282.45,945.04,0,0,22,943.599976,250,1.8,0
2019-05-25 02:00:00,0.0,0.0,21.06,54.85,5.61,283.17,945.12,0,0,22.0,943.599976,329,0.4,0.0 5/25/2019 2:00,0,0,21.06,54.85,5.61,283.17,945.12,0,0,22,943.599976,329,0.4,0
2019-05-25 02:15:00,0.0,0.0,20.99,55.78,5.64,283.79,945.0,0,0,21.9,943.5,351,0.0,0.0 5/25/2019 2:15,0,0,20.99,55.78,5.64,283.79,945,0,0,21.9,943.5,351,0,0
2019-05-25 02:30:00,0.0,0.0,20.92,56.57,5.7,284.32,944.86,0,0,21.9,943.299988,244,1.1,0.0 5/25/2019 2:30,0,0,20.92,56.57,5.7,284.32,944.86,0,0,21.9,943.299988,244,1.1,0
2019-05-25 02:45:00,0.0,0.0,20.87,57.17,5.78,284.82,944.93,0,0,21.799999,943.299988,292,0.4,0.0 5/25/2019 2:45,0,0,20.87,57.17,5.78,284.82,944.93,0,0,21.799999,943.299988,292,0.4,0
2019-05-25 03:00:00,0.0,0.0,20.78,57.68,5.87,285.87,944.77,0,0,22.6,943.200012,241,2.1,0.0 5/25/2019 3:00,0,0,20.78,57.68,5.87,285.87,944.77,0,0,22.6,943.200012,241,2.1,0
2019-05-25 03:15:00,0.0,0.0,20.69,58.05,5.96,286.88,944.63,0,0,22.6,943.200012,216,1.1,0.0 5/25/2019 3:15,0,0,20.69,58.05,5.96,286.88,944.63,0,0,22.6,943.200012,216,1.1,0
2019-05-25 03:30:00,0.0,0.0,20.6,58.3,6.03,287.64,944.58,0,0,22.299999,943.0,244,0.8,0.0 5/25/2019 3:30,0,0,20.6,58.3,6.03,287.64,944.58,0,0,22.299999,943,244,0.8,0
2019-05-25 03:45:00,0.0,0.0,20.51,58.41,6.02,288.36,944.64,0,0,22.1,943.0,281,0.6,0.0 5/25/2019 3:45,0,0,20.51,58.41,6.02,288.36,944.64,0,0,22.1,943,281,0.6,0
2019-05-25 04:00:00,0.0,0.0,20.38,58.59,5.94,288.89,944.56,0,0,22.200001,943.099976,267,0.4,0.0 5/25/2019 4:00,0,0,20.38,58.59,5.94,288.89,944.56,0,0,22.200001,943.099976,267,0.4,0
2019-05-25 04:15:00,0.0,0.0,20.24,58.78,5.84,289.5,944.31,0,0,22.200001,943.099976,295,0.0,0.0 5/25/2019 4:15,0,0,20.24,58.78,5.84,289.5,944.31,0,0,22.200001,943.099976,295,0,0
2019-05-25 04:30:00,0.0,0.0,20.12,58.83,5.73,289.56,944.09,0,0,21.4,943.099976,345,0.6,0.0 5/25/2019 4:30,0,0,20.12,58.83,5.73,289.56,944.09,0,0,21.4,943.099976,345,0.6,0
2019-05-25 04:45:00,0.0,0.0,20.07,58.63,5.63,289.2,944.27,0,0,21.1,943.299988,14,0.0,0.0 5/25/2019 4:45,0,0,20.07,58.63,5.63,289.2,944.27,0,0,21.1,943.299988,14,0,0
2019-05-25 05:00:00,0.0,0.0,20.0,58.5,5.49,289.45,944.27,0,0,21.5,943.400024,345,1.4,0.0 5/25/2019 5:00,0,0,20,58.5,5.49,289.45,944.27,0,0,21.5,943.400024,345,1.4,0
2019-05-25 05:15:00,0.05,0.0,19.9,58.5,5.33,289.69,944.27,0,0,20.299999,943.5,306,0.5,0.0 5/25/2019 5:15,0.05,0,19.9,58.5,5.33,289.69,944.27,0,0,20.299999,943.5,306,0.5,0
2019-05-25 05:30:00,16.46,8.32,19.92,58.26,5.11,289.84,944.31,7,5,20.6,943.599976,8,1.2,0.118986 5/25/2019 5:30,16.46,8.32,19.92,58.26,5.11,289.84,944.31,7,5,20.6,943.599976,8,1.2,0.118986
2019-05-25 05:45:00,56.28,39.03,20.21,57.5,4.68,289.6,944.26,17,14,20.6,943.700012,14,0.3,0.280346 5/25/2019 5:45,56.28,39.03,20.21,57.5,4.68,289.6,944.26,17,14,20.6,943.700012,14,0.3,0.280346
2019-05-25 06:00:00,87.5,65.89,20.63,56.59,3.92,288.35,944.18,28,23,20.9,943.900024,2,1.4,0.575588 5/25/2019 6:00,87.5,65.89,20.63,56.59,3.92,288.35,944.18,28,23,20.9,943.900024,2,1.4,0.575588
2019-05-25 06:15:00,138.06,111.42,21.39,54.69,2.88,289.66,944.11,37,30,20.700001,943.799988,281,0.3,0.86979 5/25/2019 6:15,138.06,111.42,21.39,54.69,2.88,289.66,944.11,37,30,20.700001,943.799988,281,0.3,0.86979
2019-05-25 06:30:00,173.35,143.99,22.28,52.57,1.67,293.29,944.25,48,39,21.200001,944.0,59,0.6,1.247819 5/25/2019 6:30,173.35,143.99,22.28,52.57,1.67,293.29,944.25,48,39,21.200001,944,59,0.6,1.247819
2019-05-25 06:45:00,227.67,194.92,23.31,50.09,0.73,298.19,944.55,77,47,22.299999,944.099976,73,0.0,1.7254349999999998 5/25/2019 6:45,227.67,194.92,23.31,50.09,0.73,298.19,944.55,77,47,22.299999,944.099976,73,0,1.7254349999999998
2019-05-25 07:00:00,264.48,229.79,24.09,47.17,0.58,91.95,944.9,116,53,23.200001,944.200012,146,0.0,2.335373 5/25/2019 7:00,264.48,229.79,24.09,47.17,0.58,91.95,944.9,116,53,23.200001,944.200012,146,0,2.335373
2019-05-25 07:15:00,320.09,282.83,24.72,45.62,1.1,111.5,945.06,159,60,24.9,944.5,208,0.1,3.024289 5/25/2019 7:15,320.09,282.83,24.72,45.62,1.1,111.5,945.06,159,60,24.9,944.5,208,0.1,3.024289
2019-05-25 07:30:00,357.13,318.38,25.28,43.28,1.73,112.11,945.22,206,66,25.200001,944.5,205,0.0,3.844083 5/25/2019 7:30,357.13,318.38,25.28,43.28,1.73,112.11,945.22,206,66,25.200001,944.5,205,0,3.844083
2019-05-25 07:45:00,412.17,371.4,25.73,41.89,2.21,115.47,945.25,257,72,25.200001,944.799988,165,0.8,4.681369 5/25/2019 7:45,412.17,371.4,25.73,41.89,2.21,115.47,945.25,257,72,25.200001,944.799988,165,0.8,4.681369
2019-05-25 08:00:00,448.26,406.27,26.24,39.93,2.56,115.14,945.25,313,77,25.700001,944.5,163,1.7,5.576908 5/25/2019 8:00,448.26,406.27,26.24,39.93,2.56,115.14,945.25,313,77,25.700001,944.5,163,1.7,5.576908
2019-05-25 08:15:00,501.13,457.48,26.73,37.85,2.84,109.73,945.27,365,84,26.1,944.799988,146,1.3,6.45426 5/25/2019 8:15,501.13,457.48,26.73,37.85,2.84,109.73,945.27,365,84,26.1,944.799988,146,1.3,6.45426
2019-05-25 08:30:00,535.37,490.71,27.17,36.78,3.06,111.37,945.34,409,89,26.299999,944.900024,272,1.2,7.267761 5/25/2019 8:30,535.37,490.71,27.17,36.78,3.06,111.37,945.34,409,89,26.299999,944.900024,272,1.2,7.267761
2019-05-25 08:45:00,584.94,538.9,27.67,34.96,3.21,111.21,945.34,460,96,26.5,945.0,326,0.3,8.027109 5/25/2019 8:45,584.94,538.9,27.67,34.96,3.21,111.21,945.34,460,96,26.5,945,326,0.3,8.027109
2019-05-25 09:00:00,616.63,569.76,28.01,33.55,3.35,108.86,945.25,504,104,26.799999,945.0,213,1.7,8.775027 5/25/2019 9:00,616.63,569.76,28.01,33.55,3.35,108.86,945.25,504,104,26.799999,945,213,1.7,8.775027
2019-05-25 09:15:00,661.88,613.86,28.37,32.59,3.43,109.04,945.14,555,107,27.299999,945.099976,236,0.6,9.491481 5/25/2019 9:15,661.88,613.86,28.37,32.59,3.43,109.04,945.14,555,107,27.299999,945.099976,236,0.6,9.491481
2019-05-25 09:30:00,690.37,641.65,28.7,31.49,3.4,106.4,945.12,600,109,27.6,944.900024,326,0.4,10.20661 5/25/2019 9:30,690.37,641.65,28.7,31.49,3.4,106.4,945.12,600,109,27.6,944.900024,326,0.4,10.20661
2019-05-25 09:45:00,730.35,680.68,29.03,30.59,3.28,102.96,944.97,644,114,28.200001,944.799988,199,2.5,10.7916 5/25/2019 9:45,730.35,680.68,29.03,30.59,3.28,102.96,944.97,644,114,28.200001,944.799988,199,2.5,10.7916
2019-05-25 10:00:00,755.08,704.85,29.3,29.98,3.16,100.72,944.75,695,117,27.799999,944.799988,129,0.9,11.34098 5/25/2019 10:00,755.08,704.85,29.3,29.98,3.16,100.72,944.75,695,117,27.799999,944.799988,129,0.9,11.34098
2019-05-25 10:15:00,788.99,737.99,29.62,29.4,3.13,98.82,944.69,748,118,28.299999,944.599976,146,1.4,11.94266 5/25/2019 10:15,788.99,737.99,29.62,29.4,3.13,98.82,944.69,748,118,28.299999,944.599976,146,1.4,11.94266
2019-05-25 10:30:00,809.32,757.88,29.96,28.84,3.18,97.86,944.69,793,118,28.700001,944.5,196,2.2,12.38189 5/25/2019 10:30,809.32,757.88,29.96,28.84,3.18,97.86,944.69,793,118,28.700001,944.5,196,2.2,12.38189
2019-05-25 10:45:00,836.3,784.28,30.32,28.29,3.26,97.06,944.7,820,124,28.700001,944.5,143,2.4,12.73844 5/25/2019 10:45,836.3,784.28,30.32,28.29,3.26,97.06,944.7,820,124,28.700001,944.5,143,2.4,12.73844
2019-05-25 11:00:00,851.88,799.52,30.67,27.75,3.34,97.57,944.75,857,126,29.299999,944.5,213,1.3,13.08097 5/25/2019 11:00,851.88,799.52,30.67,27.75,3.34,97.57,944.75,857,126,29.299999,944.5,213,1.3,13.08097
2019-05-25 11:15:00,871.49,818.72,31.02,27.25,3.34,100.05,944.71,896,126,29.299999,944.299988,177,1.8,13.37407 5/25/2019 11:15,871.49,818.72,31.02,27.25,3.34,100.05,944.71,896,126,29.299999,944.299988,177,1.8,13.37407
2019-05-25 11:30:00,882.03,829.05,31.27,26.91,3.32,106.2,944.62,893,129,29.5,944.099976,196,3.4,13.59137 5/25/2019 11:30,882.03,829.05,31.27,26.91,3.32,106.2,944.62,893,129,29.5,944.099976,196,3.4,13.59137
2019-05-25 11:45:00,893.74,840.5,31.57,26.66,3.5,111.2,944.55,894,147,30.1,944.200012,171,0.8,13.53405 5/25/2019 11:45,893.74,840.5,31.57,26.66,3.5,111.2,944.55,894,147,30.1,944.200012,171,0.8,13.53405
2019-05-25 12:00:00,898.67,845.34,31.86,26.51,3.86,115.74,944.5,907,157,30.200001,944.099976,163,3.8,13.57146 5/25/2019 12:00,898.67,845.34,31.86,26.51,3.86,115.74,944.5,907,157,30.200001,944.099976,163,3.8,13.57146
2019-05-25 12:15:00,901.73,848.31,32.14,26.51,4.22,120.66,944.42,920,149,30.1,944.0,137,4.3,13.83477 5/25/2019 12:15,901.73,848.31,32.14,26.51,4.22,120.66,944.42,920,149,30.1,944,137,4.3,13.83477
2019-05-25 12:30:00,900.91,847.5,32.36,26.65,4.5,125.98,944.34,914,151,30.6,943.799988,73,1.2,13.6162 5/25/2019 12:30,900.91,847.5,32.36,26.65,4.5,125.98,944.34,914,151,30.6,943.799988,73,1.2,13.6162
2019-05-25 12:45:00,895.57,842.27,32.55,26.97,4.74,129.4,944.2,922,153,30.799999,943.5,171,3.7,13.4889 5/25/2019 12:45,895.57,842.27,32.55,26.97,4.74,129.4,944.2,922,153,30.799999,943.5,171,3.7,13.4889
2019-05-25 13:00:00,889.48,836.3,32.73,27.11,4.94,131.82,944.04,909,145,31.299999,943.400024,90,2.4,13.72075 5/25/2019 13:00,889.48,836.3,32.73,27.11,4.94,131.82,944.04,909,145,31.299999,943.400024,90,2.4,13.72075
2019-05-25 13:15:00,876.65,823.74,32.87,27.19,5.09,134.67,943.86,943,142,31.200001,943.200012,174,3.1,13.69333 5/25/2019 13:15,876.65,823.74,32.87,27.19,5.09,134.67,943.86,943,142,31.200001,943.200012,174,3.1,13.69333
2019-05-25 13:30:00,865.59,812.92,32.97,27.36,5.22,136.75,943.71,863,163,31.6,943.200012,14,2.7,13.06515 5/25/2019 13:30,865.59,812.92,32.97,27.36,5.22,136.75,943.71,863,163,31.6,943.200012,14,2.7,13.06515
2019-05-25 13:45:00,845.41,793.15,33.06,27.37,5.34,138.51,943.64,826,170,31.9,943.099976,95,1.5,12.70744 5/25/2019 13:45,845.41,793.15,33.06,27.37,5.34,138.51,943.64,826,170,31.9,943.099976,95,1.5,12.70744
2019-05-25 14:00:00,829.69,777.78,33.16,27.07,5.38,140.34,943.52,845,178,31.799999,943.099976,157,3.8,12.34182 5/25/2019 14:00,829.69,777.78,33.16,27.07,5.38,140.34,943.52,845,178,31.799999,943.099976,157,3.8,12.34182
2019-05-25 14:15:00,803.04,751.72,33.26,26.47,5.27,141.58,943.37,758,179,32.799999,942.900024,241,1.6,11.83927 5/25/2019 14:15,803.04,751.72,33.26,26.47,5.27,141.58,943.37,758,179,32.799999,942.900024,241,1.6,11.83927
2019-05-25 14:30:00,783.23,732.36,33.38,25.68,5.09,141.9,943.22,716,177,32.400002,942.700012,120,4.8,10.84125 5/25/2019 14:30,783.23,732.36,33.38,25.68,5.09,141.9,943.22,716,177,32.400002,942.700012,120,4.8,10.84125
2019-05-25 14:45:00,750.23,700.12,33.5,24.91,4.93,142.24,943.1,665,188,32.200001,942.5,143,5.7,9.825459 5/25/2019 14:45,750.23,700.12,33.5,24.91,4.93,142.24,943.1,665,188,32.200001,942.5,143,5.7,9.825459
2019-05-25 15:00:00,725.96,676.43,33.62,24.2,4.85,143.17,943.09,718,205,32.200001,942.5,115,4.8,10.49763 5/25/2019 15:00,725.96,676.43,33.62,24.2,4.85,143.17,943.09,718,205,32.200001,942.5,115,4.8,10.49763
2019-05-25 15:15:00,686.44,637.86,33.71,23.6,4.83,144.86,943.03,594,180,32.299999,942.400024,168,2.5,9.114202 5/25/2019 15:15,686.44,637.86,33.71,23.6,4.83,144.86,943.03,594,180,32.299999,942.400024,168,2.5,9.114202
2019-05-25 15:30:00,658.2,610.3,33.8,23.06,4.84,146.66,942.99,563,172,31.700001,942.400024,123,3.6,8.315826 5/25/2019 15:30,658.2,610.3,33.8,23.06,4.84,146.66,942.99,563,172,31.700001,942.400024,123,3.6,8.315826
2019-05-25 15:45:00,613.23,566.48,33.83,22.73,4.88,148.77,942.91,485,158,31.799999,942.200012,151,2.8,8.039521 5/25/2019 15:45,613.23,566.48,33.83,22.73,4.88,148.77,942.91,485,158,31.799999,942.200012,151,2.8,8.039521
2019-05-25 16:00:00,581.71,535.8,33.87,22.53,4.94,150.5,942.88,510,147,31.4,942.0,180,2.4,7.585171000000001 5/25/2019 16:00,581.71,535.8,33.87,22.53,4.94,150.5,942.88,510,147,31.4,942,180,2.4,7.585171000000001
2019-05-25 16:15:00,532.46,487.93,33.84,22.53,5.01,150.75,942.72,428,140,31.5,942.099976,146,4.1,6.605402000000001 5/25/2019 16:15,532.46,487.93,33.84,22.53,5.01,150.75,942.72,428,140,31.5,942.099976,146,4.1,6.605402000000001
2019-05-25 16:30:00,498.38,454.86,33.82,22.67,5.09,150.45,942.6,402,132,31.0,942.0,115,2.7,5.760957 5/25/2019 16:30,498.38,454.86,33.82,22.67,5.09,150.45,942.6,402,132,31,942,115,2.7,5.760957
2019-05-25 16:45:00,445.68,403.81,33.74,23.02,5.15,149.84,942.52,341,119,31.1,942.0,112,2.6,5.116322 5/25/2019 16:45,445.68,403.81,33.74,23.02,5.15,149.84,942.52,341,119,31.1,942,112,2.6,5.116322
2019-05-25 17:00:00,409.71,369.05,33.68,23.48,5.19,149.05,942.46,281,116,30.9,942.099976,146,3.9,4.192783 5/25/2019 17:00,409.71,369.05,33.68,23.48,5.19,149.05,942.46,281,116,30.9,942.099976,146,3.9,4.192783
2019-05-25 17:15:00,354.88,316.24,33.56,24.08,5.24,148.72,942.4,221,99,30.9,942.0,81,2.7,2.876264 5/25/2019 17:15,354.88,316.24,33.56,24.08,5.24,148.72,942.4,221,99,30.9,942,81,2.7,2.876264
2019-05-25 17:30:00,317.99,280.84,33.44,24.7,5.33,149.28,942.35,179,88,30.4,942.099976,157,3.6,2.661674 5/25/2019 17:30,317.99,280.84,33.44,24.7,5.33,149.28,942.35,179,88,30.4,942.099976,157,3.6,2.661674
2019-05-25 17:45:00,262.63,228.03,33.26,25.36,5.41,150.52,942.27,139,73,30.299999,942.0,22,1.2,1.989386 5/25/2019 17:45,262.63,228.03,33.26,25.36,5.41,150.52,942.27,139,73,30.299999,942,22,1.2,1.989386
2019-05-25 18:00:00,226.05,193.38,33.08,25.93,5.4,151.8,942.2,104,58,29.9,942.200012,137,2.0,1.506804 5/25/2019 18:00,226.05,193.38,33.08,25.93,5.4,151.8,942.2,104,58,29.9,942.200012,137,2,1.506804
2019-05-25 18:15:00,172.15,142.85,32.81,26.62,5.18,152.07,942.15,72,45,29.700001,942.400024,59,5.0,1.068734 5/25/2019 18:15,172.15,142.85,32.81,26.62,5.18,152.07,942.15,72,45,29.700001,942.400024,59,5,1.068734
2019-05-25 18:30:00,137.21,110.61,32.47,27.52,4.7,152.12,942.19,48,33,29.6,942.5,154,0.9,0.7407590000000001 5/25/2019 18:30,137.21,110.61,32.47,27.52,4.7,152.12,942.19,48,33,29.6,942.5,154,0.9,0.7407590000000001
2019-05-25 18:45:00,87.13,65.53,31.84,29.15,4.04,152.12,942.35,33,23,29.1,942.599976,140,2.7,0.488124 5/25/2019 18:45,87.13,65.53,31.84,29.15,4.04,152.12,942.35,33,23,29.1,942.599976,140,2.7,0.488124
2019-05-25 19:00:00,56.17,38.9,31.04,31.22,3.42,151.91,942.53,18,12,28.9,942.900024,216,1.4,0.262969 5/25/2019 19:00,56.17,38.9,31.04,31.22,3.42,151.91,942.53,18,12,28.9,942.900024,216,1.4,0.262969
2019-05-25 19:15:00,16.63,8.4,30.14,33.05,2.89,153.34,942.64,7,4,28.6,942.900024,126,3.3,0.1036869999999999 5/25/2019 19:15,16.63,8.4,30.14,33.05,2.89,153.34,942.64,7,4,28.6,942.900024,126,3.3,0.1036869999999999
2019-05-25 19:30:00,0.14,0.0,29.65,33.66,2.36,162.51,942.71,0,0,28.5,943.099976,134,2.9,0.0 5/25/2019 19:30,0.14,0,29.65,33.66,2.36,162.51,942.71,0,0,28.5,943.099976,134,2.9,0
2019-05-25 19:45:00,0.0,0.0,29.19,34.57,1.93,183.25,942.8,0,0,28.200001,943.299988,104,1.5,0.0 5/25/2019 19:45,0,0,29.19,34.57,1.93,183.25,942.8,0,0,28.200001,943.299988,104,1.5,0
2019-05-25 20:00:00,0.0,0.0,28.75,35.48,1.79,211.75,942.96,0,0,27.9,943.400024,149,1.5,0.0 5/25/2019 20:00,0,0,28.75,35.48,1.79,211.75,942.96,0,0,27.9,943.400024,149,1.5,0
2019-05-25 20:15:00,0.0,0.0,28.31,36.36,1.94,238.51,943.15,0,0,27.6,943.5,134,1.3,0.0 5/25/2019 20:15,0,0,28.31,36.36,1.94,238.51,943.15,0,0,27.6,943.5,134,1.3,0
2019-05-25 20:30:00,0.0,0.0,27.9,37.14,2.23,259.29,943.26,0,0,27.5,943.5,115,2.6,0.0 5/25/2019 20:30,0,0,27.9,37.14,2.23,259.29,943.26,0,0,27.5,943.5,115,2.6,0
2019-05-25 20:45:00,0.0,0.0,27.52,37.85,2.53,274.7,943.33,0,0,27.200001,943.799988,95,0.8,0.0 5/25/2019 20:45,0,0,27.52,37.85,2.53,274.7,943.33,0,0,27.200001,943.799988,95,0.8,0
2019-05-25 21:00:00,0.0,0.0,27.2,38.41,2.67,283.3,943.4,0,0,27.200001,944.0,106,0.8,0.0 5/25/2019 21:00,0,0,27.2,38.41,2.67,283.3,943.4,0,0,27.200001,944,106,0.8,0
2019-05-25 21:15:00,0.0,0.0,26.96,38.83,2.55,284.54,943.51,0,0,26.9,944.0,87,0.6,0.0 5/25/2019 21:15,0,0,26.96,38.83,2.55,284.54,943.51,0,0,26.9,944,87,0.6,0
2019-05-25 21:30:00,0.0,0.0,26.81,39.07,2.27,280.88,943.7,0,0,26.700001,944.0,61,0.8,0.0 5/25/2019 21:30,0,0,26.81,39.07,2.27,280.88,943.7,0,0,26.700001,944,61,0.8,0
2019-05-25 21:45:00,0.0,0.0,26.71,39.26,2.12,272.16,943.85,0,0,26.4,944.200012,73,0.4,0.0 5/25/2019 21:45,0,0,26.71,39.26,2.12,272.16,943.85,0,0,26.4,944.200012,73,0.4,0
2019-05-25 22:00:00,0.0,0.0,26.65,39.72,2.32,254.2,943.98,0,0,26.700001,944.099976,33,0.5,0.0 5/25/2019 22:00,0,0,26.65,39.72,2.32,254.2,943.98,0,0,26.700001,944.099976,33,0.5,0
2019-05-25 22:15:00,0.0,0.0,26.68,40.95,2.9,230.19,944.09,0,0,26.5,944.0,87,1.0,0.0 5/25/2019 22:15,0,0,26.68,40.95,2.9,230.19,944.09,0,0,26.5,944,87,1,0
2019-05-25 22:30:00,0.0,0.0,26.45,43.55,3.64,214.0,944.31,0,0,26.4,944.0,56,0.8,0.0 5/25/2019 22:30,0,0,26.45,43.55,3.64,214,944.31,0,0,26.4,944,56,0.8,0
2019-05-25 22:45:00,0.0,0.0,26.12,46.71,4.32,207.0,944.64,0,0,26.1,943.900024,236,0.0,0.0 5/25/2019 22:45,0,0,26.12,46.71,4.32,207,944.64,0,0,26.1,943.900024,236,0,0
2019-05-25 23:00:00,0.0,0.0,25.91,49.09,4.69,214.5,944.8,0,0,25.200001,943.900024,5,0.0,0.0 5/25/2019 23:00,0,0,25.91,49.09,4.69,214.5,944.8,0,0,25.200001,943.900024,5,0,0
2019-05-25 23:15:00,0.0,0.0,25.64,50.16,4.65,225.4,945.02,0,0,25.0,944.0,348,0.0,0.0 5/25/2019 23:15,0,0,25.64,50.16,4.65,225.4,945.02,0,0,25,944,348,0,0
2019-05-25 23:30:00,0.0,0.0,25.31,50.48,4.41,239.91,945.26,0,0,24.4,943.900024,25,1.7,0.0 5/25/2019 23:30,0,0,25.31,50.48,4.41,239.91,945.26,0,0,24.4,943.900024,25,1.7,0
2019-05-25 23:45:00,0.0,0.0,24.97,50.35,4.19,261.84,945.34,0,0,24.200001,943.700012,300,1.5,0.0 5/25/2019 23:45,0,0,24.97,50.35,4.19,261.84,945.34,0,0,24.200001,943.700012,300,1.5,0
2019-05-26 00:00:00,0.0,0.0,23.44,54.07,2.89,296.7,945.03,0,0,23.9,943.700012,340,2.1,0.0 5/26/2019 0:00,0,0,23.44,54.07,2.89,296.7,945.03,0,0,23.9,943.700012,340,2.1,0
2019-05-26 00:15:00,0.0,0.0,23.32,54.41,3.01,296.2,945.17,0,0,23.9,943.799988,348,1.2,0.0 5/26/2019 0:15,0,0,23.32,54.41,3.01,296.2,945.17,0,0,23.9,943.799988,348,1.2,0
2019-05-26 00:30:00,0.0,0.0,23.24,54.6,3.24,295.02,945.56,0,0,23.799999,943.700012,236,1.0,0.0 5/26/2019 0:30,0,0,23.24,54.6,3.24,295.02,945.56,0,0,23.799999,943.700012,236,1,0
2019-05-26 00:45:00,0.0,0.0,23.12,54.89,3.41,293.5,945.36,0,0,24.1,943.700012,331,0.9,0.0 5/26/2019 0:45,0,0,23.12,54.89,3.41,293.5,945.36,0,0,24.1,943.700012,331,0.9,0
2019-05-26 01:00:00,0.0,0.0,22.92,55.44,3.4,293.01,945.05,0,0,23.700001,943.5,16,0.7,0.0 5/26/2019 1:00,0,0,22.92,55.44,3.4,293.01,945.05,0,0,23.700001,943.5,16,0.7,0
2019-05-26 01:15:00,0.0,0.0,22.61,56.36,3.27,293.59,944.65,0,0,23.6,943.5,345,1.0,0.0 5/26/2019 1:15,0,0,22.61,56.36,3.27,293.59,944.65,0,0,23.6,943.5,345,1,0
2019-05-26 01:30:00,0.0,0.0,22.38,57.07,3.22,296.94,944.78,0,0,23.200001,943.599976,2,1.2,0.0 5/26/2019 1:30,0,0,22.38,57.07,3.22,296.94,944.78,0,0,23.200001,943.599976,2,1.2,0
2019-05-26 01:45:00,0.0,0.0,22.14,57.81,3.36,297.5,944.96,0,0,23.299999,943.700012,345,0.8,0.0 5/26/2019 1:45,0,0,22.14,57.81,3.36,297.5,944.96,0,0,23.299999,943.700012,345,0.8,0
2019-05-26 02:00:00,0.0,0.0,21.88,58.61,3.63,297.32,944.83,0,0,23.0,943.599976,11,1.4,0.0 5/26/2019 2:00,0,0,21.88,58.61,3.63,297.32,944.83,0,0,23,943.599976,11,1.4,0
2019-05-26 02:15:00,0.0,0.0,21.56,59.64,3.87,293.85,944.61,0,0,23.200001,943.599976,11,1.1,0.0 5/26/2019 2:15,0,0,21.56,59.64,3.87,293.85,944.61,0,0,23.200001,943.599976,11,1.1,0
2019-05-26 02:30:00,0.0,0.0,21.3,60.48,4.02,288.79,944.69,0,0,23.200001,943.400024,264,0.1,0.0 5/26/2019 2:30,0,0,21.3,60.48,4.02,288.79,944.69,0,0,23.200001,943.400024,264,0.1,0
2019-05-26 02:45:00,0.0,0.0,21.25,60.56,4.21,283.97,944.72,0,0,22.5,943.400024,343,1.8,0.0 5/26/2019 2:45,0,0,21.25,60.56,4.21,283.97,944.72,0,0,22.5,943.400024,343,1.8,0
2019-05-26 03:00:00,0.0,0.0,21.35,60.41,4.48,280.96,944.64,0,0,22.299999,943.400024,343,1.0,0.0 5/26/2019 3:00,0,0,21.35,60.41,4.48,280.96,944.64,0,0,22.299999,943.400024,343,1,0
5/26/2019 3:15,0,0,21.43,60.97,4.82,279.04,944.43,0,0,21.9,943.599976,303,0,0
5/26/2019 3:30,0,0,21.53,62.09,5.2,279.21,944.35,0,0,22.200001,943.400024,351,1.1,0
5/26/2019 3:45,0,0,21.64,63.43,5.47,278.48,944.32,0,0,22.4,943.400024,19,0,0
5/26/2019 4:00,0,0,21.69,64.77,5.58,277.75,944.41,0,0,22.9,943.299988,320,0,0
5/26/2019 4:15,0,0,21.67,66.03,5.52,277.09,944.24,0,0,23.1,943.299988,323,0,0
5/26/2019 4:30,0,0,21.57,67.19,5.34,275.24,943.97,0,0,22.9,943.299988,5,0,0
5/26/2019 4:45,0,0,21.45,68.23,5.11,274,944.09,0,0,22.700001,943.400024,14,0,0
5/26/2019 5:00,0,0,21.33,69.12,4.89,273.5,944.31,0,0,22.299999,943.400024,343,0,0
5/26/2019 5:15,0.22,0,21.14,70.11,4.63,273.17,944.4,0,0,22.4,943.400024,343,1,0
5/26/2019 5:30,7.34,3.67,21.09,70.57,4.44,273.4,944.44,4,2,22.5,943.700012,317,0,0.03233
5/26/2019 5:45,23.02,15.84,21.43,69.54,4.34,273.27,944.35,12,8,22.5,943.599976,343,0,0.154317
5/26/2019 6:00,34.64,25.93,22.04,67.58,4.26,270.23,944.12,34,29,22.5,943.5,0,0.1,0.5440659999999999
5/26/2019 6:15,54,43.38,22.99,64.41,4.25,265.22,944.09,40,38,22.799999,943.5,0,0.2,0.705485
5/26/2019 6:30,65.29,42.81,23.92,61.23,4.34,260.2,944.18,64,55,23.1,943.5,2,0.5,1.271835
5/26/2019 6:45,55.76,17.99,24.51,59.07,4.37,257.17,944.43,92,74,23.200001,943.599976,129,0.1,1.7649240000000002
5/26/2019 7:00,44.36,0,24.75,58.23,4.21,252.33,944.68,121,90,23.299999,943.900024,191,0.4,2.282491
5/26/2019 7:15,45.6,0,24.95,57.63,4.04,245.37,944.78,168,116,24.4,943.900024,115,0.1,3.101246
5/26/2019 7:30,72.48,12.96,25.45,56.1,4.07,238.65,944.71,185,115,25.1,943.900024,160,1,2.934285
5/26/2019 7:45,144.65,126.91,26.31,53.41,4.33,234.81,944.62,220,128,24.9,944,241,0,3.938648
5/26/2019 8:00,170.92,154,27.14,50.84,4.65,232.09,944.61,256,141,25.700001,943.900024,227,0,4.568676
5/26/2019 8:15,173.74,153.07,27.69,49.05,4.84,229.23,944.72,309,157,26.299999,944,253,1,5.454169
5/26/2019 8:30,179.13,152.56,28.23,47.63,4.84,225.21,944.79,355,174,26.200001,944,14,0.2,6.154227
5/26/2019 8:45,208.55,183.2,28.87,44.99,4.76,225,944.78,395,187,27,943.900024,132,1.1,6.770631
5/26/2019 9:00,236.95,217.67,29.41,43.61,4.6,221.65,944.63,453,209,27.4,943.900024,151,0.8,7.692495
5/26/2019 9:15,254.49,233.71,29.97,41.73,4.39,218.36,944.5,349,226,27.700001,943.700012,182,0.8,5.816783
5/26/2019 9:30,264.46,242.99,30.47,39.87,4.22,219.45,944.43,397,249,27.799999,943.700012,323,2.7,8.543291
5/26/2019 9:45,269.62,235.06,30.59,39.46,4.3,227.04,944.35,591,287,28.700001,943.799988,84,0.3,7.985716
5/26/2019 10:00,235.36,195.91,30.06,41.21,4.38,238.67,944.32,624,249,28.200001,943.5,213,5.2,10.39089
5/26/2019 10:15,18.49,0,27.49,48.89,4.14,247.76,944.46,666,262,29.4,943.5,165,1.6,10.82722
5/26/2019 10:30,20.93,0,26.49,52.74,3.71,245.43,944.57,745,324,29.5,943.599976,154,2,9.738342
5/26/2019 10:45,9.06,0,25.76,55.52,3.14,229.51,944.58,668,296,30.1,943.400024,312,1.3,8.38909
5/26/2019 11:00,8.98,0,25.75,55.71,2.67,205.91,944.55,437,276,30.1,943.200012,272,1.2,7.641575
5/26/2019 11:15,17.95,0,26.17,54.67,2.46,186.5,944.48,369,261,29.799999,942.799988,120,2.7,6.1083300000000005
5/26/2019 11:30,19.71,0,26.44,54.18,2.59,166.73,944.44,805,332,29.9,942.799988,185,1.6,12.92134
5/26/2019 11:45,206.7,8.21,28.71,47.21,3.27,155.33,944.32,805,315,30.299999,942.599976,118,1.8,9.184751
5/26/2019 12:00,283.97,204.5,30.11,42.38,4.12,151.48,944.17,335,238,30.4,942.5,230,1.7,6.595242
5/26/2019 12:15,255.82,220,30.41,41.81,3.82,156.36,944.07,414,295,30.5,942.200012,132,4.8,9.445583
5/26/2019 12:30,108.13,52.48,29.29,45.8,3.13,204.26,944.31,808,341,30.799999,941.900024,137,4.6,11.85289
5/26/2019 12:45,6.99,0,26.1,57.28,3.09,302.28,944.7,744,332,30.6,941.799988,14,0.7,11.02761
5/26/2019 13:00,8.62,0,25.55,59.87,2.17,294.01,944.41,305,244,31.200001,941.599976,177,1.8,7.093295
5/26/2019 13:15,10.58,0,25.79,58.7,0.89,238.87,943.98,79,61,30.6,941.400024,137,3.7,1.368825
5/26/2019 13:30,12.39,0,25.85,58.32,0.95,217.12,943.63,82,79,29,941.599976,87,0.7,2.300619
5/26/2019 13:45,517.57,459.55,29.08,48.09,2.07,155.55,943.26,96,80,28.200001,941.299988,303,1.4,1.911621
5/26/2019 14:00,506.16,449.34,29.67,46.13,3.13,144.13,942.89,209,149,27.4,941.099976,112,3,4.43953
5/26/2019 14:15,548.83,513.42,30.65,42.91,3.88,116.86,942.79,609,226,28.299999,941,109,1.6,9.061724
5/26/2019 14:30,450.53,420.91,30.9,42.4,4.88,87.09,942.98,705,264,29.9,941,303,1,11.22321
5/26/2019 14:45,366.94,342.02,30.71,43.56,5.95,72.48,943.13,257,179,29.5,940.799988,351,0.7,4.725937999999999
5/26/2019 15:00,342.32,318.54,30.34,45.46,6.51,72.73,943.15,348,231,30,941,202,2.2,8.687044
5/26/2019 15:15,368.45,341.89,30.04,46.93,6.41,77.12,943.11,653,229,30,940.900024,216,1.1,10.18784
5/26/2019 15:30,437.23,404.85,29.92,47.47,5.95,80.82,943.02,559,207,30.4,941,126,3.3,8.69553
5/26/2019 15:45,493.56,455.34,29.94,47.22,5.43,83.06,942.89,540,197,29.700001,941.099976,90,1.5,8.441221
5/26/2019 16:00,529.31,486.94,30.06,46.41,4.96,85.15,942.76,477,180,29.299999,940.799988,129,4.8,7.492222999999999
5/26/2019 16:15,513.9,470.41,30.12,45.54,4.52,90.08,942.46,432,166,28.9,941.099976,143,2.5,6.782408
5/26/2019 16:30,490.1,446.81,30.19,44.81,4.02,91.35,942.35,390,147,28.9,940.799988,25,1.2,6.071786
5/26/2019 16:45,438.84,397.05,30.25,44.27,3.55,67.26,942.47,364,152,28.700001,940.900024,163,1.3,5.664371
5/26/2019 17:00,403.66,363.06,30.28,44.01,3.32,50.02,942.53,280,119,29.299999,940.900024,33,0.1,4.407778
5/26/2019 17:15,350.96,312.34,30.2,44.07,3.22,45.27,942.55,244,108,29.200001,941,227,0.3,3.848124
5/26/2019 17:30,315.3,278.15,30.1,44.33,3.17,36.4,942.57,141,72,29.5,941.099976,177,1.8,2.109006
5/26/2019 17:45,261.18,226.55,29.93,44.87,3.19,23.86,942.56,190,100,29,941.299988,129,1.2,2.963843
5/26/2019 18:00,225.1,192.37,29.74,45.54,3.36,10.21,942.61,132,73,29,941.400024,149,3,2.035513
5/26/2019 18:15,171.79,142.42,29.54,45.38,3.97,6.92,942.8,89,55,29.700001,941.599976,216,1.8,1.458367
5/26/2019 18:30,137.5,110.78,28.66,47.1,5.39,23.94,943.1,62,44,30.700001,941.799988,275,5.4,1.016602
5/26/2019 18:45,88.36,66.57,26.31,55.27,7.03,29.2,943.59,43,32,31,942.099976,261,4.5,0.666285
5/26/2019 19:00,57.74,40.2,24.97,59.82,7.7,16.57,944.23,6,3,30.299999,942.5,292,4.3,0.096701
5/26/2019 19:15,17.93,9.27,24,62.23,7.16,6.42,944.79,3,1,29.9,942.700012,298,3.8,0.039835
5/26/2019 19:30,0.75,0.04,23.27,63.61,6.02,0.25,945.07,0,0,29.4,943.200012,329,5.6,0
5/26/2019 19:45,0,0,22.74,63.38,4.87,353.77,945.43,0,0,29.1,943.700012,326,4.9,0
5/26/2019 20:00,0,0,22.3,62.22,3.75,349.32,945.89,0,0,28.6,944.299988,337,7.5,0
5/26/2019 20:15,0,0,21.85,61.43,2.58,347.3,946.23,0,0,27.5,944.400024,270,7.8,0
5/26/2019 20:30,0,0,21.64,60.38,1.88,6.76,946.65,0,0,27.1,944.599976,292,7,0
5/26/2019 20:45,0,0,21.33,60.78,1.97,38.15,947.07,0,0,26.6,945.299988,295,3.5,0
5/26/2019 21:00,0,0,20.93,62.6,2.26,38.11,947.38,0,0,26.4,945.700012,320,3.6,0
5/26/2019 21:15,0,0,20.52,64.14,2.09,31.33,947.61,0,0,26.200001,946,300,9.2,0
5/26/2019 21:30,0,0,20.21,64.74,1.58,19.78,947.8,0,0,25.799999,946.599976,284,2.9,0
5/26/2019 21:45,0,0,20.06,64.72,0.95,15.45,947.93,0,0,25.1,947.099976,351,1,0
5/26/2019 22:00,0,0,19.85,65.21,0.42,52.74,948.02,0,0,24.5,947.400024,309,4.2,0
5/26/2019 22:15,0,0,19.67,65.39,0.25,142.64,948.26,0,0,24.6,947.799988,306,3,0
5/26/2019 22:30,0,0,19.5,63.59,0.61,17.4,948.57,0,0,24.5,948,5,2.5,0
5/26/2019 22:45,0,0,19.38,59.39,1.44,23.76,948.83,0,0,24,948.299988,334,2.6,0
5/26/2019 23:00,0,0,19.07,56.73,2.26,33.72,949.09,0,0,24.1,948.299988,343,2.5,0
5/26/2019 23:15,0,0,18.69,55.31,2.7,37.3,949.35,0,0,24.1,948.299988,343,3.9,0
5/26/2019 23:30,0,0,18.39,54.02,2.85,43.17,949.66,0,0,24,948.700012,343,2.9,0
5/26/2019 23:45,0,0,18.09,53.39,2.81,49.21,950.06,0,0,23.799999,948.900024,11,3.3,0
5/27/2019 0:00,0,0,19.12,44.46,2.31,19.45,950.7,0,0,23.700001,949.099976,343,5.2,0
5/27/2019 0:15,0,0,18.88,48.46,2.57,35.42,951.18,0,0,23.6,949.299988,323,5.2,0
5/27/2019 0:30,0,0,18.52,52.55,3.01,41.12,951.74,0,0,20.5,949.5,123,2.2,0
5/27/2019 0:45,0,0,18.13,55.48,3.45,41.51,951.93,0,0,19.200001,949.599976,106,3.3,0
5/27/2019 1:00,0,0,17.75,57.14,3.86,38.68,952.07,0,0,19,949.900024,90,2.2,0
5/27/2019 1:15,0,0,17.43,57.98,3.87,33.33,952.02,0,0,19,950.099976,87,1.5,0
5/27/2019 1:30,0,0,17.13,59.13,3.12,29.23,952.13,0,0,18.9,950.5,140,1.8,0
5/27/2019 1:45,0,0,16.96,59.87,2.08,15.68,952.47,0,0,18.5,950.700012,267,0,0
5/27/2019 2:00,0,0,16.97,59.3,1.46,348.48,952.92,0,0,17.9,950.799988,216,0,0
5/27/2019 2:15,0,0,16.95,57.74,1.55,326.96,953.05,0,0,17.200001,951,19,0,0
5/27/2019 2:30,0,0,16.8,54.49,2.32,332.3,952.94,0,0,17.1,951.299988,340,0,0
5/27/2019 2:45,0,0,16.7,48.27,3.59,349.37,953.16,0,0,16.700001,951.400024,140,0,0
5/27/2019 3:00,0,0,16.58,42.69,5.07,358.77,953.16,0,0,16.700001,951.599976,25,0,0
5/27/2019 3:15,0,0,16.41,39.36,6.47,2.63,953.1,0,0,16.5,952,134,0,0
5/27/2019 3:30,0,0,16.36,37.49,7.67,3.57,953.25,0,0,16.799999,952.099976,253,0,0
5/27/2019 3:45,0,0,16.34,36.45,8.64,4.06,953.35,0,0,16.6,952.400024,81,0,0
5/27/2019 4:00,0,0,16.34,35.63,9.4,4.85,953.5,0,0,16.5,952.599976,78,0,0
5/27/2019 4:15,0,0,16.3,35.1,9.95,5.94,953.48,0,0,17.1,952.799988,67,0,0
5/27/2019 4:30,0,0,16.23,34.83,10.34,6.99,953.54,0,0,17.6,953.299988,8,1.8,0
5/27/2019 4:45,0,0,16.16,34.73,10.57,8.42,953.86,0,0,18.9,953.5,334,2.5,0
5/27/2019 5:00,0,0,16.05,34.82,10.63,9.93,954.13,0,0,18.9,953.700012,8,2.1,0
5/27/2019 5:15,0.95,0.08,15.93,34.98,10.52,11.74,954.52,0,0,18.9,954.099976,329,2.1,0
5/27/2019 5:30,19.55,10.58,15.87,35.32,10.35,13.74,954.85,8,6,18.6,954.5,300,0.6,0.142713
5/27/2019 5:45,60.9,42.92,15.94,35.61,10.2,15.31,955.07,22,18,18.799999,954.799988,337,2.7,0.376874
5/27/2019 6:00,91.01,67.8,16.05,35.72,10.13,16.2,955.25,48,42,18.799999,955,326,5,0.904948
5/27/2019 6:15,144.27,116.17,16.3,35.49,10.09,17,955.47,73,62,19.299999,955.099976,50,5.9,1.464949
5/27/2019 6:30,181.35,151.57,16.52,35.3,9.96,18.43,955.7,93,80,19.5,955.5,28,4.7,2.099769
5/27/2019 6:45,238.32,204.24,16.83,34.92,9.94,19.79,955.97,117,86,19.6,955.599976,0,5.6,2.536454
5/27/2019 7:00,276.7,240.95,17.1,34.42,10.12,20.6,956.34,166,97,19.9,955.900024,0,1.8,3.2831010000000003
5/27/2019 7:15,328.81,283.41,17.43,33.86,10.25,21.72,956.58,160,100,20,956,337,3.6,3.234779
5/27/2019 7:30,367.73,328.25,17.74,33.27,10.28,22.93,956.77,212,101,20.1,956.400024,348,4.3,4.146598
5/27/2019 7:45,416.28,369.52,18.09,32.51,10.35,24.44,956.94,307,112,20.200001,956.599976,2,7.6,5.659002
5/27/2019 8:00,444.85,390.37,18.4,31.75,10.52,25.79,957.13,422,118,20.6,956.599976,53,5.2,7.594177
5/27/2019 8:15,493.16,443,18.77,30.85,10.77,26.61,957.41,460,117,20.700001,956.900024,11,6.6,8.475745
5/27/2019 8:30,515.87,461.54,19.05,30.01,11.06,27.28,957.67,459,140,21.6,957.200012,345,3.3,8.030342999999998
5/27/2019 8:45,540.54,471.29,19.26,29.21,11.38,27.71,957.81,421,159,21.1,957.200012,326,3,7.827703
5/27/2019 9:00,572.98,499.84,19.48,28.35,11.67,28.04,957.93,527,168,21.1,957.599976,70,1.4,9.43294
5/27/2019 9:15,609.32,544.33,19.68,27.6,11.84,28.12,957.99,582,161,21.299999,957.599976,11,2.5,10.58562
5/27/2019 9:30,623.11,534.29,19.84,27.13,11.87,28.46,958.06,659,133,21.6,957.700012,334,3.1,10.892
5/27/2019 9:45,630.18,492.09,19.99,26.69,11.81,29.22,958.07,636,124,21.9,957.599976,351,2.6,11.26281
5/27/2019 10:00,656.64,531.72,20.18,26.17,11.71,30.13,958.07,643,110,22.299999,957.799988,354,1.5,11.2534
5/27/2019 10:15,665.56,517.84,20.35,25.7,11.54,30.35,958.15,763,141,22.6,957.900024,5,9.1,12.60647
5/27/2019 10:30,682.36,547.79,20.56,25.17,11.31,30.43,958.26,821,183,23.1,957.900024,208,2.3,13.40559
5/27/2019 10:45,690.74,543.92,20.77,24.59,11.05,30.54,958.38,787,138,23.299999,957.799988,0,4.8,13.4568
5/27/2019 11:00,725.56,596.59,21.03,23.9,10.8,30.64,958.4,927,143,23.1,958,351,6.2,14.66305
5/27/2019 11:15,749.9,617.13,21.3,23.19,10.53,31.4,958.41,946,153,22.700001,957.799988,67,3,14.94715
5/27/2019 11:30,757.54,606.3,21.52,22.54,10.31,33.52,958.47,1041,109,23.299999,957.900024,331,5.9,16.258129
5/27/2019 11:45,780.25,647.3,21.77,22.24,10.1,35.07,958.54,1042,123,23.700001,957.799988,345,1.1,16.6626
5/27/2019 12:00,732.99,563.5,21.84,22.56,9.78,34.9,958.59,1126,143,23.9,957.700012,19,3.3,15.2876
5/27/2019 12:15,800.02,699.28,22.14,22.58,9.35,33.49,958.6,1124,115,23.700001,957.400024,11,4.2,16.436001
5/27/2019 12:30,800.02,703.11,22.39,22.53,8.99,31.46,958.63,1016,101,23.9,957.400024,241,0.5,15.66303
5/27/2019 12:45,809.81,746.76,22.63,22.35,8.8,28.82,958.51,1003,142,24.4,957.200012,59,3.9,15.779420000000002
5/27/2019 13:00,776.52,686.71,22.76,22.3,8.66,28.12,958.34,959,217,24.700001,956.799988,334,4.1,14.59169
5/27/2019 13:15,776.64,690.96,23.01,21.9,8.55,30.75,958.19,1033,200,25.200001,956.900024,357,0.7,15.75696
5/27/2019 13:30,774.17,706.37,23.33,20.63,8.56,33.66,958.02,943,207,24.799999,956.700012,146,2.4,15.35711
5/27/2019 13:45,750.29,660.83,23.6,18.78,8.63,34.42,957.93,646,227,25.1,956.599976,28,2.3,10.7923
5/27/2019 14:00,720.02,661.93,23.7,17.61,8.56,34.64,957.9,1034,159,25.6,956.5,354,0.6,15.683
5/27/2019 14:15,726.12,673.9,23.84,17.04,8.29,35.34,957.86,974,149,24.9,956.400024,182,3.6,14.67772
5/27/2019 14:30,715.7,670.39,23.98,16.69,8,35.78,957.8,949,174,24.700001,956.299988,104,3.8,14.62778
5/27/2019 14:45,668.9,612.09,24.05,16.41,7.79,35.65,957.75,849,121,24.799999,956.099976,168,9,13.15221
5/27/2019 15:00,656.38,609.4,24.15,16.13,7.59,35.78,957.74,855,107,25,956.400024,168,4.5,13.360729999999998
5/27/2019 15:15,619.47,571.15,24.19,15.9,7.34,36.2,957.76,748,138,24.200001,956.299988,118,3.1,11.38347
5/27/2019 15:30,594.28,545.39,24.24,15.68,7.08,36.53,957.73,748,113,24.5,956.200012,151,5.8,9.635234
5/27/2019 15:45,555.5,507.22,24.27,15.51,6.83,36.43,957.67,667,130,25.299999,956.099976,154,2.5,10.66996
5/27/2019 16:00,519.81,473.35,24.28,15.38,6.6,36.55,957.61,437,133,24.4,956.200012,134,2.9,8.51327
5/27/2019 16:15,473.75,422.32,24.26,15.29,6.36,37.1,957.52,599,128,24.299999,956,171,3.3,9.556602
5/27/2019 16:30,452.96,413.71,24.26,15.21,6.1,38.14,957.44,401,114,24.700001,956.200012,213,0.4,5.711769
5/27/2019 16:45,397.33,354.65,24.19,15.23,5.83,39.3,957.43,336,162,24.5,956,137,2.9,6.201047
5/27/2019 17:00,359.25,313.56,24.14,15.27,5.56,40.78,957.43,270,155,24,956,168,2,4.522606
5/27/2019 17:15,302.6,245.81,24.03,15.39,5.27,41.97,957.43,200,134,23.4,956,126,1.8,3.64814
5/27/2019 17:30,261.26,196.48,23.9,15.58,4.97,43.26,957.39,151,110,23.700001,955.900024,137,2.7,2.717617
5/27/2019 17:45,223.1,185.45,23.77,15.78,4.68,44.77,957.3,134,103,23.5,955.700012,154,3.4,2.4417150000000003
5/27/2019 18:00,193.95,151.69,23.63,16.04,4.38,46.47,957.21,123,89,23.200001,955.900024,177,2.5,2.169971
5/27/2019 18:15,144.32,100.25,23.39,16.53,3.98,48.25,957.15,102,71,23.200001,955.900024,64,1.2,1.786458
5/27/2019 18:30,108.33,71.77,23.08,17.44,3.41,49.96,957.15,91,67,23.299999,956,118,0.5,1.645823
5/27/2019 18:45,75.28,53.31,22.46,19.63,2.8,50.67,957.24,52,39,23.1,956.200012,154,0.5,0.922499
5/27/2019 19:00,50.88,34.74,21.99,20.79,2.39,49.01,957.41,27,20,22.799999,956.200012,70,1.7,0.481716
5/27/2019 19:15,16.88,8.94,21.53,20.75,2.09,43.53,957.52,4,3,22.5,956.5,168,1.4,0.072223
5/27/2019 19:30,1.12,0.12,21.11,20.79,1.81,30.79,957.62,0,0,21.799999,956.700012,132,2.7,0
5/27/2019 19:45,0,0,20.67,21.21,1.76,8.16,957.76,0,0,21.4,956.799988,137,0.6,0
5/27/2019 20:00,0,0,20.22,21.77,2.04,344.71,957.93,0,0,21.1,957.099976,78,1.4,0
5/27/2019 20:15,0,0,19.64,22.54,2.52,330.63,958.08,0,0,21,957.099976,95,1.8,0
5/27/2019 20:30,0,0,19.11,23.22,2.93,324.42,958.22,0,0,20.799999,957.299988,120,1.5,0
5/27/2019 20:45,0,0,18.69,23.72,3.22,322.37,958.32,0,0,20.6,957.5,149,0.7,0
5/27/2019 21:00,0,0,18.41,23.96,3.39,322.02,958.44,0,0,20.299999,957.599976,95,0.9,0
5/27/2019 21:15,0,0,18.22,24.07,3.44,321.7,958.57,0,0,20.299999,957.900024,106,1.1,0
5/27/2019 21:30,0,0,18.02,24.24,3.39,320.29,958.7,0,0,20.200001,958,92,1.5,0
5/27/2019 21:45,0,0,17.81,24.4,3.28,317.43,958.81,0,0,20.200001,958,92,1.1,0
5/27/2019 22:00,0,0,17.72,24.38,3.18,313.79,958.9,0,0,20.1,958.099976,295,0,0
5/27/2019 22:15,0,0,17.61,24.37,3.12,310.26,959.05,0,0,19.200001,958.299988,8,0,0
5/27/2019 22:30,0,0,17.57,24.27,3.1,306.28,959.25,0,0,19.4,958.200012,70,0,0
5/27/2019 22:45,0,0,17.43,24.29,3.13,303.16,959.44,0,0,18.700001,958.200012,298,0.1,0
5/27/2019 23:00,0,0,17.27,24.36,3.22,299.87,959.6,0,0,19,958.299988,337,0.5,0
5/27/2019 23:15,0,0,17.11,24.49,3.35,296.26,959.73,0,0,18.799999,958,2,1.2,0
5/27/2019 23:30,0,0,16.91,24.68,3.51,292.69,959.89,0,0,18.5,958,11,1.4,0
5/27/2019 23:45,0,0,16.67,24.98,3.67,290.34,960.07,0,0,18.5,958,5,2,0
5/28/2019 0:00,0,0,15.54,32.38,3.7,293.45,958.99,0,0,18.4,958,0,1,0
5/28/2019 0:15,0,0,15.35,32.81,3.79,294.08,958.88,0,0,18.6,957.799988,357,0.8,0
5/28/2019 0:30,0,0,15.24,33.07,3.89,294.75,958.96,0,0,18.200001,957.700012,289,0.3,0
5/28/2019 0:45,0,0,15.11,33.35,4.04,295.03,958.73,0,0,18.299999,957.700012,309,0.5,0
5/28/2019 1:00,0,0,14.98,33.63,4.22,295.1,958.67,0,0,18.200001,957.5,354,0.9,0
5/28/2019 1:15,0,0,14.83,33.93,4.38,295,958.58,0,0,18,957.5,8,0.5,0
5/28/2019 1:30,0,0,14.61,34.36,4.45,294.89,958.65,0,0,18,957.5,345,1.3,0
5/28/2019 1:45,0,0,14.36,34.87,4.49,293.92,958.78,0,0,17.799999,957.599976,28,1.4,0
5/28/2019 2:00,0,0,14.18,35.17,4.52,293.25,958.77,0,0,18,957.400024,33,0.6,0
5/28/2019 2:15,0,0,13.89,35.69,4.54,292.06,958.71,0,0,17.9,957.5,216,0,0
5/28/2019 2:30,0,0,13.68,35.99,4.62,288.97,958.91,0,0,17.700001,957.400024,331,0.4,0
5/28/2019 2:45,0,0,13.59,35.93,4.81,286.17,959.03,0,0,17.9,957.400024,205,0.2,0
5/28/2019 3:00,0,0,13.61,35.67,5.05,283.86,959.17,0,0,17.6,957.299988,56,0.1,0
5/28/2019 3:15,0,0,13.72,35.32,5.28,282.53,959.17,0,0,17.5,957.299988,244,0.1,0

1 date_time nwp_globalirrad nwp_directirrad nwp_temperature nwp_humidity nwp_windspeed nwp_winddirection nwp_pressure lmd_totalirrad lmd_diffuseirrad lmd_temperature lmd_pressure lmd_winddirection lmd_windspeed power
2 2019-05-23 03:15:00 5/23/2019 3:15 0.0 0 0.0 0 20.98 17.05 7.09 268.51 947.19 0 0 24.1 946.700012 258 3.4 0.0 0
3 2019-05-23 03:30:00 5/23/2019 3:30 0.0 0 0.0 0 21.12 16.75 7.05 269.86 947.05 0 0 23.9 946.799988 253 3.3 0.0 0
4 2019-05-23 03:45:00 5/23/2019 3:45 0.0 0 0.0 0 21.27 16.43 6.99 271.05 947.15 0 0 23.9 946.599976 278 3.2 0.0 0
5 2019-05-23 04:00:00 5/23/2019 4:00 0.0 0 0.0 0 21.39 16.14 6.91 272.47 947.27 0 0 24.299999 946.599976 275 4.5 0.0 0
6 2019-05-23 04:15:00 5/23/2019 4:15 0.0 0 0.0 0 21.42 15.93 6.84 273.84 947.27 0 0 23.6 946.5 250 5.1 0.0 0
7 2019-05-23 04:30:00 5/23/2019 4:30 0.0 0 0.0 0 21.35 15.85 6.78 273.76 947.3 0 0 23.299999 946.599976 185 2.5 0.0 0
8 2019-05-23 04:45:00 5/23/2019 4:45 0.0 0 0.0 0 21.2 15.86 6.73 272.42 947.47 0 0 23.4 946.799988 278 5.0 5 0.0 0
9 2019-05-23 05:00:00 5/23/2019 5:00 0.0 0 0.0 0 20.96 15.98 6.7 270.74 947.5 0 0 23.6 946.700012 236 4.1 0.0 0
10 2019-05-23 05:15:00 5/23/2019 5:15 0.0 0 0.0 0 20.7 16.15 6.67 268.99 947.54 0 0 23.5 946.900024 236 5.3 0.0 0
11 2019-05-23 05:30:00 5/23/2019 5:30 16.12 8.55 20.47 16.77 6.64 267.36 947.63 6 4 23.4 947.0 947 239 5.7 0.10132
12 2019-05-23 05:45:00 5/23/2019 5:45 59.11 42.07 20.4 18.11 6.61 265.27 947.74 16 11 23.200001 947.200012 255 7.7 0.286004
13 2019-05-23 06:00:00 5/23/2019 6:00 92.58 71.04 20.71 19.16 6.59 262.93 947.71 24 17 23.200001 947.299988 222 3.4 0.499151
14 2019-05-23 06:15:00 5/23/2019 6:15 146.51 119.79 21.59 19.47 6.59 261.02 947.73 31 23 23.299999 947.299988 278 5.2 0.779324
15 2019-05-23 06:30:00 5/23/2019 6:30 184.0 184 154.52 22.75 19.15 6.59 260.08 947.81 38 28 23.5 947.5 210 6.5 1.2091379999999998
16 2019-05-23 06:45:00 5/23/2019 6:45 241.53 208.58 24.17 18.26 6.65 258.62 947.96 74 33 23.9 947.599976 261 8.1 1.76781
17 2019-05-23 07:00:00 5/23/2019 7:00 280.33 245.41 25.48 17.07 6.83 256.79 948.16 124 38 24.1 947.700012 289 5.6 2.484841
18 2019-05-23 07:15:00 5/23/2019 7:15 338.68 301.16 26.6 15.88 7.11 255.64 948.42 177 42 24.299999 947.700012 272 4.1 3.308445
19 2019-05-23 07:30:00 5/23/2019 7:30 377.39 338.34 27.36 15.43 7.35 253.68 948.61 236 46 24.700001 948.0 948 239 5.2 4.247745
20 2019-05-23 07:45:00 5/23/2019 7:45 434.78 393.69 28.1 15.18 7.49 252.33 948.66 298 49 25.1 948.0 948 264 4.9 5.251472
21 2019-05-23 08:00:00 5/23/2019 8:00 472.37 430.05 28.88 14.56 7.51 253.68 948.69 355 51 26.0 26 948.0 948 196 5.1 6.242268
22 2019-05-23 08:15:00 5/23/2019 8:15 527.39 483.39 29.66 13.81 7.44 254.82 948.71 411 55 26.4 948.0 948 323 7.2 7.204602
23 2019-05-23 08:30:00 5/23/2019 8:30 563.0 563 517.99 30.31 13.31 7.27 255.13 948.74 467 59 27.200001 948.0 948 255 5.1 8.168957
24 2019-05-23 08:45:00 5/23/2019 8:45 614.48 568.07 31.02 12.92 6.93 255.75 948.82 520 63 27.799999 948.099976 230 6.7 9.058953
25 2019-05-23 09:00:00 5/23/2019 9:00 647.35 600.08 31.75 12.24 6.47 257.45 948.9 575 65 28.4 948.200012 196 5.7 9.863159
26 2019-05-23 09:15:00 5/23/2019 9:15 694.23 645.81 32.39 11.4 5.94 259.75 948.9 624 68 29.299999 948.200012 295 3.0 3 10.61015
27 2019-05-23 09:30:00 5/23/2019 9:30 723.74 674.6 32.94 10.92 5.29 258.12 948.81 671 70 30.200001 948.099976 230 4.1 11.31974
28 2019-05-23 09:45:00 5/23/2019 9:45 765.15 715.07 33.46 10.14 4.48 255.65 948.74 719 67 31.1 948.099976 261 5.0 5 11.93025
29 2019-05-23 10:00:00 5/23/2019 10:00 790.73 740.07 33.85 9.36 3.57 250.97 948.66 771 68 32.099998 948.099976 213 5.8 12.4637
30 2019-05-23 10:15:00 5/23/2019 10:15 825.7 774.27 34.15 8.75 2.72 236.32 948.57 821 67 32.400002 948.200012 64 3.8 12.90708
31 2019-05-23 10:30:00 5/23/2019 10:30 846.62 794.75 34.37 8.29 2.16 212.24 948.58 866 65 33.599998 948.099976 236 4.7 13.3642
32 2019-05-23 10:45:00 5/23/2019 10:45 874.29 821.81 34.59 8.01 2.01 187.37 948.64 899 66 34.0 34 948.0 948 247 6.2 13.65609
33 2019-05-23 11:00:00 5/23/2019 11:00 890.2 837.39 34.8 7.9 2.09 177.01 948.63 937 66 35.0 35 947.900024 253 3.1 13.88812
34 2019-05-23 11:15:00 5/23/2019 11:15 910.24 857.01 35.02 7.72 2.2 175.58 948.59 964 65 35.400002 947.799988 224 3.5 14.202179999999998
35 2019-05-23 11:30:00 5/23/2019 11:30 920.93 867.48 35.22 7.59 2.32 179.46 948.55 977 64 36.0 36 947.599976 196 1.6 14.27024
36 2019-05-23 11:45:00 5/23/2019 11:45 932.97 879.28 35.44 7.39 2.54 187.69 948.45 1014 64 36.700001 947.299988 227 3.6 14.58771
37 2019-05-23 12:00:00 5/23/2019 12:00 938.36 884.59 35.63 7.17 2.94 198.01 948.33 1016 67 36.900002 947.200012 241 3.1 14.63442
38 2019-05-23 12:15:00 5/23/2019 12:15 942.58 888.69 35.81 7.0 7 3.44 205.26 948.27 1003 70 35.900002 947.0 947 191 0.8 14.49719
39 2019-05-23 12:30:00 5/23/2019 12:30 942.71 888.84 35.98 6.86 3.94 209.65 948.25 1000 82 36.599998 947.0 947 233 2.3 14.55544
40 2019-05-23 12:45:00 5/23/2019 12:45 938.94 885.14 36.09 6.74 4.3 212.75 948.12 998 85 36.099998 946.700012 247 2.7 14.22331
41 2019-05-23 13:00:00 5/23/2019 13:00 933.6 879.93 36.18 6.66 4.48 215.34 947.9 1006 103 36.700001 946.5 272 3.0 3 14.41867
42 2019-05-23 13:15:00 5/23/2019 13:15 921.25 867.84 36.27 6.64 4.54 217.21 947.71 972 101 36.799999 946.299988 250 2.8 14.14035
43 2019-05-23 13:30:00 5/23/2019 13:30 910.03 856.86 36.35 6.66 4.51 217.93 947.52 977 89 37.400002 946.099976 284 5.7 14.022570000000002
44 2019-05-23 13:45:00 5/23/2019 13:45 888.83 836.09 36.43 6.73 4.47 217.26 947.36 926 89 37.200001 945.900024 84 1.2 13.35658
45 2019-05-23 14:00:00 5/23/2019 14:00 871.96 819.58 36.51 6.84 4.43 214.63 947.23 942 87 37.599998 945.700012 264 3.5 13.52902
46 2019-05-23 14:15:00 5/23/2019 14:15 842.84 791.07 36.57 6.97 4.42 211.04 947.08 918 103 37.599998 945.599976 222 1.7 13.01729
47 2019-05-23 14:30:00 5/23/2019 14:30 821.0 821 769.7 36.61 7.12 4.41 208.37 946.92 848 120 37.0 37 945.299988 194 1.5 12.18924
48 2019-05-23 14:45:00 5/23/2019 14:45 784.91 734.39 36.63 7.28 4.35 208.3 946.78 834 140 37.700001 945.200012 284 4.0 4 11.89244
49 2019-05-23 15:00:00 5/23/2019 15:00 758.65 708.72 36.65 7.45 4.26 210.43 946.65 797 146 37.099998 945.0 945 261 4.2 11.66711
50 2019-05-23 15:15:00 5/23/2019 15:15 715.76 666.8 36.66 7.72 4.32 211.2 946.53 730 107 37.200001 944.900024 56 0.6 10.51391
51 2019-05-23 15:30:00 5/23/2019 15:30 684.97 636.72 36.65 8.19 4.76 205.78 946.44 338 125 37.299999 944.900024 270 3.0 3 5.716215
52 2019-05-23 15:45:00 5/23/2019 15:45 636.31 589.26 36.52 8.83 5.64 197.05 946.43 597 160 37.299999 944.599976 129 0.9 9.436924
53 2019-05-23 16:00:00 5/23/2019 16:00 602.98 556.77 36.31 9.38 6.56 191.87 946.49 452 160 37.700001 944.299988 253 4.1 7.061485
54 2019-05-23 16:15:00 5/23/2019 16:15 552.1 507.28 36.06 9.63 7.06 189.97 946.43 372 144 37.5 944.400024 28 0.0 0 5.140048999999999
55 2019-05-23 16:30:00 5/23/2019 16:30 517.4 473.6 35.9 9.55 7.11 187.68 946.35 290 147 37.599998 944.5 255 2.9 4.654119000000001
56 2019-05-23 16:45:00 5/23/2019 16:45 463.61 421.48 35.76 9.4 6.97 183.17 946.27 340 161 37.299999 944.299988 258 0.5 5.033188
57 2019-05-23 17:00:00 5/23/2019 17:00 426.69 385.79 35.66 9.33 6.75 177.54 946.19 220 147 37.099998 944.200012 227 5.8 3.616041000000001
58 2019-05-23 17:15:00 5/23/2019 17:15 370.08 331.22 35.55 9.38 6.24 173.95 946.09 163 112 36.0 36 944.099976 286 2.8 2.6656
59 2019-05-23 17:30:00 5/23/2019 17:30 331.83 294.5 35.53 9.46 5.34 177.17 945.97 153 110 35.700001 944.099976 278 4.1 2.467118
60 2019-05-23 17:45:00 5/23/2019 17:45 274.34 239.58 35.42 9.6 4.59 197.16 945.83 111 80 35.099998 944.400024 267 6.7 1.811398
61 2019-05-23 18:00:00 5/23/2019 18:00 236.29 203.5 35.15 9.89 4.61 225.21 945.74 89 71 34.700001 944.299988 281 4.0 4 1.493179
62 2019-05-23 18:15:00 5/23/2019 18:15 179.93 150.66 34.42 10.54 5.02 235.8 945.74 79 55 34.299999 944.400024 244 5.4 1.316404
63 2019-05-23 18:30:00 5/23/2019 18:30 143.43 116.86 33.52 11.47 5.17 236.82 945.81 63 52 33.700001 944.5 258 9.8 1.057303
64 2019-05-23 18:45:00 5/23/2019 18:45 88.81 67.28 32.36 12.77 5.08 236.18 945.95 42 33 33.299999 944.799988 233 3.9 0.671365
65 2019-05-23 19:00:00 5/23/2019 19:00 57.48 40.56 31.19 14.07 5.03 236.28 946.12 17 10 32.799999 945.0 945 222 3.5 0.272553
66 2019-05-23 19:15:00 5/23/2019 19:15 15.33 8.0 8 29.93 14.97 5.09 237.12 946.32 7 4 32.200001 945.200012 219 2.1 0.1109609999999999
67 2019-05-23 19:30:00 5/23/2019 19:30 0.0 0 0.0 0 28.93 15.25 5.15 239.21 946.5 0 0 31.700001 945.200012 239 1.6 0.0 0
68 2019-05-23 19:45:00 5/23/2019 19:45 0.0 0 0.0 0 28.13 15.55 5.18 242.16 946.66 0 0 31.1 945.400024 213 2.3 0.0 0
69 2019-05-23 20:00:00 5/23/2019 20:00 0.0 0 0.0 0 27.49 15.91 5.17 245.72 946.85 0 0 30.799999 945.599976 286 1.6 0.0 0
70 2019-05-23 20:15:00 5/23/2019 20:15 0.0 0 0.0 0 26.95 16.34 5.14 249.8 947.03 0 0 30.799999 945.799988 216 2.0 2 0.0 0
71 2019-05-23 20:30:00 5/23/2019 20:30 0.0 0 0.0 0 26.49 16.84 5.11 254.32 947.19 0 0 30.4 945.900024 224 2.0 2 0.0 0
72 2019-05-23 20:45:00 5/23/2019 20:45 0.0 0 0.0 0 26.09 17.37 5.08 257.82 947.34 0 0 29.799999 946.200012 289 0.8 0.0 0
73 2019-05-23 21:00:00 5/23/2019 21:00 0.0 0 0.0 0 25.76 17.96 5.07 259.95 947.48 0 0 29.1 946.400024 300 0.3 0.0 0
74 2019-05-23 21:15:00 5/23/2019 21:15 0.0 0 0.0 0 25.51 18.6 5.08 261.26 947.63 0 0 28.5 946.5 284 0.3 0.0 0
75 2019-05-23 21:30:00 5/23/2019 21:30 0.0 0 0.0 0 25.27 19.36 5.08 262.37 947.77 0 0 28.5 946.599976 16 0.2 0.0 0
76 2019-05-23 21:45:00 5/23/2019 21:45 0.0 0 0.0 0 25.05 20.21 5.1 264.01 947.92 0 0 28.1 946.599976 28 0.3 0.0 0
77 2019-05-23 22:00:00 5/23/2019 22:00 0.0 0 0.0 0 24.83 21.22 5.21 265.1 948.04 0 0 28.0 28 946.700012 351 0.0 0 0.0 0
78 2019-05-23 22:15:00 5/23/2019 22:15 0.0 0 0.0 0 24.68 22.33 5.47 265.38 948.25 0 0 28.0 28 946.700012 255 0.2 0.0 0
79 2019-05-23 22:30:00 5/23/2019 22:30 0.0 0 0.0 0 24.64 23.42 5.88 265.97 948.43 0 0 28.5 946.799988 216 0.2 0.0 0
80 2019-05-23 22:45:00 5/23/2019 22:45 0.0 0 0.0 0 24.73 24.02 6.36 264.64 948.57 0 0 28.200001 946.700012 329 0.8 0.0 0
81 2019-05-23 23:00:00 5/23/2019 23:00 0.0 0 0.0 0 24.74 24.2 6.74 263.69 948.7 0 0 27.9 946.700012 326 1.0 1 0.0 0
82 2019-05-23 23:15:00 5/23/2019 23:15 0.0 0 0.0 0 24.71 24.03 6.97 263.0 263 948.84 0 0 28.1 946.700012 250 2.0 2 0.0 0
83 2019-05-23 23:30:00 5/23/2019 23:30 0.0 0 0.0 0 24.61 23.8 7.09 262.7 948.98 0 0 27.4 946.900024 239 1.3 0.0 0
84 2019-05-23 23:45:00 5/23/2019 23:45 0.0 0 0.0 0 24.46 23.74 7.17 263.17 949.14 0 0 27.200001 946.799988 253 0.5 0.0 0
85 2019-05-24 00:00:00 5/24/2019 0:00 0.0 0 0.0 0 22.21 28.53 5.36 278.74 947.86 0 0 27.1 946.599976 247 0.0 0 0.0 0
86 2019-05-24 00:15:00 5/24/2019 0:15 0.0 0 0.0 0 22.13 28.49 5.41 278.24 947.91 0 0 26.5 946.5 19 0.0 0 0.0 0
87 2019-05-24 00:30:00 5/24/2019 0:30 0.0 0 0.0 0 21.98 28.52 5.52 278.31 947.96 0 0 26.200001 946.599976 267 1.1 0.0 0
88 2019-05-24 00:45:00 5/24/2019 0:45 0.0 0 0.0 0 21.91 28.36 5.65 278.29 948.0 948 0 0 26.200001 946.700012 298 0.3 0.0 0
89 2019-05-24 01:00:00 5/24/2019 1:00 0.0 0 0.0 0 21.82 28.18 5.7 276.61 947.76 0 0 25.9 946.5 303 0.3 0.0 0
90 2019-05-24 01:15:00 5/24/2019 1:15 0.0 0 0.0 0 21.7 28.08 5.71 274.62 947.61 0 0 25.6 946.5 264 0.0 0 0.0 0
91 2019-05-24 01:30:00 5/24/2019 1:30 0.0 0 0.0 0 21.6 27.96 5.7 274.52 947.66 0 0 25.200001 946.5 295 0.4 0.0 0
92 2019-05-24 01:45:00 5/24/2019 1:45 0.0 0 0.0 0 21.48 27.95 5.73 275.36 947.94 0 0 25.299999 946.400024 185 0.2 0.0 0
93 2019-05-24 02:00:00 5/24/2019 2:00 0.0 0 0.0 0 21.38 27.98 5.78 275.26 948.04 0 0 25.299999 946.299988 213 0.0 0 0.0 0
94 2019-05-24 02:15:00 5/24/2019 2:15 0.0 0 0.0 0 21.29 28.1 5.8 275.69 948.04 0 0 25.200001 946.200012 11 0.0 0 0.0 0
95 2019-05-24 02:30:00 5/24/2019 2:30 0.0 0 0.0 0 21.17 28.32 5.77 276.26 948.03 0 0 24.9 946.200012 30 0.4 0.0 0
96 2019-05-24 02:45:00 5/24/2019 2:45 0.0 0 0.0 0 21.05 28.61 5.75 275.82 947.92 0 0 24.9 946.099976 340 0.5 0.0 0
97 2019-05-24 03:00:00 5/24/2019 3:00 0.0 0 0.0 0 20.93 28.94 5.72 275.49 947.73 0 0 25.0 25 946.0 946 16 0.5 0.0 0
98 2019-05-24 03:15:00 5/24/2019 3:15 0.0 0 0.0 0 20.83 29.28 5.7 275.45 947.6 0 0 24.700001 945.900024 0 0.9 0.0 0
99 2019-05-24 03:30:00 5/24/2019 3:30 0.0 0 0.0 0 20.66 29.74 5.72 274.81 947.43 0 0 25.1 945.799988 345 0.9 0.0 0
100 2019-05-24 03:45:00 5/24/2019 3:45 0.0 0 0.0 0 20.68 29.85 5.8 274.23 947.45 0 0 25.1 945.700012 2 1.8 0.0 0
101 2019-05-24 04:00:00 5/24/2019 4:00 0.0 0 0.0 0 20.65 29.99 5.91 273.47 947.56 0 0 24.5 945.700012 345 2.0 2 0.0 0
102 2019-05-24 04:15:00 5/24/2019 4:15 0.0 0 0.0 0 20.68 30.01 6.03 272.43 947.55 0 0 24.200001 945.599976 2 1.4 0.0 0
103 2019-05-24 04:30:00 5/24/2019 4:30 0.0 0 0.0 0 20.72 29.99 6.16 270.87 947.4 0 0 24.4 945.700012 11 0.7 0.0 0
104 2019-05-24 04:45:00 5/24/2019 4:45 0.0 0 0.0 0 20.66 30.14 6.3 270.39 947.58 0 0 24.200001 945.799988 5 1.3 0.0 0
105 2019-05-24 05:00:00 5/24/2019 5:00 0.0 0 0.0 0 20.44 30.58 6.4 270.51 947.67 0 0 24.700001 945.799988 334 1.2 0.0 0
106 2019-05-24 05:15:00 5/24/2019 5:15 0.0 0 0.0 0 20.17 31.14 6.42 271.43 947.79 0 0 24.6 946.0 946 233 0.0 0 0.0 0
107 2019-05-24 05:30:00 5/24/2019 5:30 14.12 7.27 19.96 31.95 6.39 273.05 947.98 5 3 24.200001 945.700012 216 0.6 0.0734929999999999
108 2019-05-24 05:45:00 5/24/2019 5:45 49.81 33.88 19.96 32.82 6.33 274.56 947.98 22 17 24.0 24 946.0 946 149 0.7 0.368792
109 2019-05-24 06:00:00 5/24/2019 6:00 81.21 61.31 20.25 33.14 6.28 275.12 947.84 37 34 24.0 24 946.0 946 180 1.2 0.660454
110 2019-05-24 06:15:00 5/24/2019 6:15 130.42 105.85 20.89 32.69 6.3 274.34 947.75 37 29 23.700001 946.0 946 90 0.5 0.685913
111 2019-05-24 06:30:00 5/24/2019 6:30 166.49 139.24 21.64 31.71 6.36 272.76 947.55 56 43 23.4 946.099976 126 0.3 1.036116
112 2019-05-24 06:45:00 5/24/2019 6:45 219.95 189.95 22.49 30.34 6.39 270.27 947.58 71 60 23.6 946.200012 157 0.1 1.327835
113 2019-05-24 07:00:00 5/24/2019 7:00 254.05 222.32 23.23 29.19 6.4 266.9 947.78 87 69 24.1 946.299988 253 1.7 1.611819
114 2019-05-24 07:15:00 5/24/2019 7:15 303.96 270.24 23.98 27.85 6.44 262.5 947.98 117 90 24.700001 946.299988 233 1.8 2.124651
115 2019-05-24 07:30:00 5/24/2019 7:30 332.99 295.73 24.6 26.7 6.49 258.2 948.07 115 88 25.0 25 946.400024 222 2.5 2.124017
116 2019-05-24 07:45:00 5/24/2019 7:45 380.55 344.44 25.25 25.52 6.53 254.23 948.07 131 107 25.1 946.299988 216 1.9 2.470755
117 2019-05-24 08:00:00 5/24/2019 8:00 407.73 369.11 25.81 24.37 6.55 251.55 948.04 115 96 25.299999 946.400024 233 1.4 2.208017
118 2019-05-24 08:15:00 5/24/2019 8:15 445.64 401.8 26.37 23.5 6.46 248.55 948.02 92 62 24.9 946.5 250 1.6 1.765559
119 2019-05-24 08:30:00 5/24/2019 8:30 473.64 429.44 26.93 22.7 6.29 245.35 948.06 148 93 24.9 946.5 239 0.9 2.804388
120 2019-05-24 08:45:00 5/24/2019 8:45 520.96 477.52 27.42 21.54 6.08 241.72 948.0 948 188 124 25.1 946.400024 275 1.0 1 3.491398
121 2019-05-24 09:00:00 5/24/2019 9:00 551.69 501.43 27.9 21.06 5.76 237.75 947.89 466 230 25.6 946.400024 154 1.3 7.727365
122 2019-05-24 09:15:00 5/24/2019 9:15 591.47 548.47 28.42 20.21 5.37 232.06 947.75 341 255 26.799999 946.5 227 0.8 6.248734
123 2019-05-24 09:30:00 5/24/2019 9:30 603.17 557.18 28.82 19.62 5.04 227.31 947.56 146 104 26.9 946.0 946 216 2.4 2.809699
124 2019-05-24 09:45:00 5/24/2019 9:45 624.09 575.34 29.26 19.03 4.81 224.27 947.31 282 210 27.5 946.0 946 210 3.7 5.099175
125 2019-05-24 10:00:00 5/24/2019 10:00 628.72 580.69 29.68 18.37 4.72 221.37 947.0 947 322 232 27.700001 946.0 946 236 1.1 5.879827
126 2019-05-24 10:15:00 5/24/2019 10:15 626.35 543.45 30.07 17.73 4.72 219.58 946.86 473 250 28.1 946.099976 292 3.8 7.433452000000001
127 2019-05-24 10:30:00 5/24/2019 10:30 608.57 514.54 30.43 17.08 4.76 216.3 946.81 372 257 29.1 946.0 946 244 1.4 6.322285
128 2019-05-24 10:45:00 5/24/2019 10:45 622.88 581.48 30.84 16.56 4.74 213.04 946.8 826 349 29.299999 946.099976 196 2.4 12.15367
129 2019-05-24 11:00:00 5/24/2019 11:00 552.53 445.58 31.11 16.3 4.67 208.8 946.76 1045 278 29.299999 945.900024 255 4.7 16.25565
130 2019-05-24 11:15:00 5/24/2019 11:15 421.88 272.1 31.22 16.3 4.69 202.14 946.63 1219 310 30.299999 945.799988 298 1.7 16.52508
131 2019-05-24 11:30:00 5/24/2019 11:30 392.07 320.34 31.53 16.13 4.83 198.63 946.63 887 258 30.299999 945.900024 196 3.5 13.80319
132 2019-05-24 11:45:00 5/24/2019 11:45 206.33 133.68 31.08 16.73 5.05 195.72 946.68 294 233 29.799999 945.599976 154 1.3 5.337551
133 2019-05-24 12:00:00 5/24/2019 12:00 261.79 142.03 31.43 16.76 5.51 193.66 946.64 342 266 30.1 945.599976 202 3.4 6.440347
134 2019-05-24 12:15:00 5/24/2019 12:15 180.82 112.54 31.01 17.57 6.22 194.07 946.66 1025 275 30.6 945.5 244 1.9 15.52713
135 2019-05-24 12:30:00 5/24/2019 12:30 201.7 100.64 30.97 18.01 6.9 194.98 946.68 318 234 30.799999 945.099976 219 3.5 5.495908999999999
136 2019-05-24 12:45:00 5/24/2019 12:45 149.92 88.58 30.51 18.77 7.26 194.31 946.53 378 219 30.299999 944.900024 168 5.2 6.033394
137 2019-05-24 13:00:00 5/24/2019 13:00 124.31 72.79 30.15 19.49 7.45 191.68 946.37 812 273 29.700001 944.5 168 4.3 14.23589
138 2019-05-24 13:15:00 5/24/2019 13:15 156.61 123.75 30.29 19.53 7.63 188.71 946.18 340 217 30.700001 944.299988 165 1.7 5.763612
139 2019-05-24 13:30:00 5/24/2019 13:30 272.17 247.16 30.88 19.0 19 7.76 185.41 945.99 1086 200 31.299999 944.099976 253 1.8 15.61292
140 2019-05-24 13:45:00 5/24/2019 13:45 306.6 283.91 31.15 18.96 7.86 181.69 945.79 1003 327 30.6 944.200012 202 3.6 16.333579999999998
141 2019-05-24 14:00:00 5/24/2019 14:00 338.29 317.27 31.47 19.0 19 8.06 179.12 945.57 872 211 30.799999 944.099976 202 5.9 11.52492
142 2019-05-24 14:15:00 5/24/2019 14:15 332.57 311.45 31.61 19.29 8.37 177.69 945.37 713 155 31.5 943.700012 134 1.4 10.58435
143 2019-05-24 14:30:00 5/24/2019 14:30 330.07 308.75 31.69 19.65 8.75 176.86 945.18 888 133 32.299999 943.400024 199 2.2 12.95199
144 2019-05-24 14:45:00 5/24/2019 14:45 319.47 298.23 31.7 19.9 9.1 176.27 945.01 503 261 31.4 943.299988 118 4.7 7.650524000000001
145 2019-05-24 15:00:00 5/24/2019 15:00 309.39 288.37 31.69 19.99 9.36 176.12 944.9 699 193 31.799999 943.299988 208 4.6 9.340569
146 2019-05-24 15:15:00 5/24/2019 15:15 291.88 271.3 31.64 20.07 9.51 176.79 944.8 201 90 31.200001 943.299988 140 3.9 8.49445
147 2019-05-24 15:30:00 5/24/2019 15:30 283.07 262.57 31.65 19.95 9.57 177.73 944.71 671 87 32.400002 943.0 943 171 3.8 10.11193
148 2019-05-24 15:45:00 5/24/2019 15:45 275.49 254.6 31.6 19.76 9.6 177.87 944.64 635 93 31.799999 942.799988 182 4.7 9.481666
149 2019-05-24 16:00:00 5/24/2019 16:00 283.88 261.59 31.52 20.18 9.59 177.12 944.64 594 105 31.299999 942.799988 163 2.7 8.852041
150 2019-05-24 16:15:00 5/24/2019 16:15 290.91 266.7 31.36 20.76 9.52 176.28 944.53 526 92 31.6 942.5 163 6.0 6 7.797799
151 2019-05-24 16:30:00 5/24/2019 16:30 308.53 281.72 31.19 21.13 9.41 176.14 944.42 177 93 31.6 942.900024 146 3.3 6.29873
152 2019-05-24 16:45:00 5/24/2019 16:45 311.15 282.07 30.97 21.26 9.32 176.13 944.32 451 105 31.299999 942.5 149 4.0 4 5.853386
153 2019-05-24 17:00:00 5/24/2019 17:00 318.26 286.86 30.82 21.06 9.27 176.34 944.26 370 96 31.299999 942.5 191 3.2 4.284115
154 2019-05-24 17:15:00 5/24/2019 17:15 301.64 268.99 30.58 21.33 9.24 176.34 944.16 329 101 30.700001 942.5 16 1.7 4.775473000000001
155 2019-05-24 17:30:00 5/24/2019 17:30 290.04 256.37 30.31 22.14 9.17 176.44 944.06 247 76 30.700001 942.400024 174 3.2 3.427027
156 2019-05-24 17:45:00 5/24/2019 17:45 251.31 218.37 29.94 23.21 9.04 177.1 943.91 201 80 30.1 942.5 174 1.9 2.801674
157 2019-05-24 18:00:00 5/24/2019 18:00 222.29 190.28 29.56 24.31 8.87 178.48 943.81 135 56 29.9 942.599976 154 3.9 1.88593
158 2019-05-24 18:15:00 5/24/2019 18:15 170.92 141.88 29.1 25.59 8.66 179.96 943.72 92 49 29.6 942.799988 92 2.5 1.406235
159 2019-05-24 18:30:00 5/24/2019 18:30 136.35 109.9 28.65 26.89 8.43 181.66 943.75 60 40 29.1 942.900024 154 3.1 0.969608
160 2019-05-24 18:45:00 5/24/2019 18:45 85.9 64.5 28.13 28.3 8.22 183.25 943.83 39 29 28.799999 943.0 943 115 1.8 0.610111
161 2019-05-24 19:00:00 5/24/2019 19:00 54.78 37.8 27.61 29.8 7.99 184.87 943.92 24 18 28.4 943.099976 174 1.7 0.396965
162 2019-05-24 19:15:00 5/24/2019 19:15 15.36 7.6 27.06 31.14 7.72 186.57 943.97 6 3 27.9 943.200012 199 1.3 0.1029359999999999
163 2019-05-24 19:30:00 5/24/2019 19:30 0.0 0 0.0 0 26.62 32.13 7.41 188.59 944.06 0 0 27.1 943.5 171 0.7 0.0 0
164 2019-05-24 19:45:00 5/24/2019 19:45 0.0 0 0.0 0 26.26 33.09 7.04 191.71 944.24 0 0 26.299999 943.400024 182 1.2 0.0 0
165 2019-05-24 20:00:00 5/24/2019 20:00 0.0 0 0.0 0 25.92 34.1 6.61 195.03 944.39 0 0 26.200001 943.799988 171 1.6 0.0 0
166 2019-05-24 20:15:00 5/24/2019 20:15 0.0 0 0.0 0 25.58 35.13 6.12 199.26 944.57 0 0 26.200001 943.900024 149 2.1 0.0 0
167 2019-05-24 20:30:00 5/24/2019 20:30 0.0 0 0.0 0 25.2 36.21 5.53 204.28 944.74 0 0 25.6 944.0 944 160 0.9 0.0 0
168 2019-05-24 20:45:00 5/24/2019 20:45 0.0 0 0.0 0 24.77 37.35 4.84 210.93 944.86 0 0 25.6 944.200012 137 1.3 0.0 0
169 2019-05-24 21:00:00 5/24/2019 21:00 0.0 0 0.0 0 24.3 38.47 4.17 222.5 944.98 0 0 24.9 944.200012 250 0.3 0.0 0
170 2019-05-24 21:15:00 5/24/2019 21:15 0.0 0 0.0 0 23.89 39.35 3.66 238.81 945.13 0 0 24.4 944.299988 16 0.2 0.0 0
171 2019-05-24 21:30:00 5/24/2019 21:30 0.0 0 0.0 0 23.5 40.14 3.38 255.47 945.18 0 0 24.200001 944.400024 160 0.5 0.0 0
172 2019-05-24 21:45:00 5/24/2019 21:45 0.0 0 0.0 0 23.22 40.66 3.34 271.08 945.3 0 0 23.200001 944.400024 337 0.6 0.0 0
173 2019-05-24 22:00:00 5/24/2019 22:00 0.0 0 0.0 0 22.99 41.12 3.43 283.36 945.4 0 0 23.200001 944.400024 5 1.2 0.0 0
174 2019-05-24 22:15:00 5/24/2019 22:15 0.0 0 0.0 0 22.78 41.68 3.57 291.06 945.55 0 0 23.5 944.5 22 1.5 0.0 0
175 2019-05-24 22:30:00 5/24/2019 22:30 0.0 0 0.0 0 22.58 42.37 3.69 294.68 945.65 0 0 22.299999 944.400024 16 0.8 0.0 0
176 2019-05-24 22:45:00 5/24/2019 22:45 0.0 0 0.0 0 22.4 43.22 3.79 296.78 945.72 0 0 22.4 944.5 354 2.0 2 0.0 0
177 2019-05-24 23:00:00 5/24/2019 23:00 0.0 0 0.0 0 22.24 44.23 3.88 297.76 945.78 0 0 22.4 944.200012 289 1.2 0.0 0
178 2019-05-24 23:15:00 5/24/2019 23:15 0.0 0 0.0 0 22.09 45.45 3.92 297.58 945.83 0 0 21.700001 944.200012 343 1.1 0.0 0
179 2019-05-24 23:30:00 5/24/2019 23:30 0.0 0 0.0 0 21.96 46.88 3.94 295.31 945.86 0 0 21.6 944.299988 326 1.8 0.0 0
180 2019-05-24 23:45:00 5/24/2019 23:45 0.0 0 0.0 0 21.82 48.45 3.97 293.76 945.95 0 0 21.799999 944.099976 8 2.1 0.0 0
181 2019-05-25 00:00:00 5/25/2019 0:00 0.0 0 0.0 0 20.71 47.15 4.23 285.61 945.14 0 0 22.5 944.099976 59 0.2 0.0 0
182 2019-05-25 00:15:00 5/25/2019 0:15 0.0 0 0.0 0 20.71 47.84 4.4 283.5 945.13 0 0 22.5 944.0 944 343 0.5 0.0 0
183 2019-05-25 00:30:00 5/25/2019 0:30 0.0 0 0.0 0 20.77 48.59 4.66 282.49 945.27 0 0 22.0 22 944.0 944 0 1.4 0.0 0
184 2019-05-25 00:45:00 5/25/2019 0:45 0.0 0 0.0 0 20.87 49.5 4.95 281.02 945.09 0 0 21.0 21 943.900024 314 0.4 0.0 0
185 2019-05-25 01:00:00 5/25/2019 1:00 0.0 0 0.0 0 20.95 50.59 5.22 280.1 945.0 945 0 0 22.0 22 943.799988 326 0.8 0.0 0
186 2019-05-25 01:15:00 5/25/2019 1:15 0.0 0 0.0 0 21.02 51.72 5.43 280.52 944.73 0 0 21.9 943.700012 222 1.0 1 0.0 0
187 2019-05-25 01:30:00 5/25/2019 1:30 0.0 0 0.0 0 21.08 52.81 5.55 281.29 944.82 0 0 22.0 22 943.599976 216 1.1 0.0 0
188 2019-05-25 01:45:00 5/25/2019 1:45 0.0 0 0.0 0 21.1 53.85 5.6 282.45 945.04 0 0 22.0 22 943.599976 250 1.8 0.0 0
189 2019-05-25 02:00:00 5/25/2019 2:00 0.0 0 0.0 0 21.06 54.85 5.61 283.17 945.12 0 0 22.0 22 943.599976 329 0.4 0.0 0
190 2019-05-25 02:15:00 5/25/2019 2:15 0.0 0 0.0 0 20.99 55.78 5.64 283.79 945.0 945 0 0 21.9 943.5 351 0.0 0 0.0 0
191 2019-05-25 02:30:00 5/25/2019 2:30 0.0 0 0.0 0 20.92 56.57 5.7 284.32 944.86 0 0 21.9 943.299988 244 1.1 0.0 0
192 2019-05-25 02:45:00 5/25/2019 2:45 0.0 0 0.0 0 20.87 57.17 5.78 284.82 944.93 0 0 21.799999 943.299988 292 0.4 0.0 0
193 2019-05-25 03:00:00 5/25/2019 3:00 0.0 0 0.0 0 20.78 57.68 5.87 285.87 944.77 0 0 22.6 943.200012 241 2.1 0.0 0
194 2019-05-25 03:15:00 5/25/2019 3:15 0.0 0 0.0 0 20.69 58.05 5.96 286.88 944.63 0 0 22.6 943.200012 216 1.1 0.0 0
195 2019-05-25 03:30:00 5/25/2019 3:30 0.0 0 0.0 0 20.6 58.3 6.03 287.64 944.58 0 0 22.299999 943.0 943 244 0.8 0.0 0
196 2019-05-25 03:45:00 5/25/2019 3:45 0.0 0 0.0 0 20.51 58.41 6.02 288.36 944.64 0 0 22.1 943.0 943 281 0.6 0.0 0
197 2019-05-25 04:00:00 5/25/2019 4:00 0.0 0 0.0 0 20.38 58.59 5.94 288.89 944.56 0 0 22.200001 943.099976 267 0.4 0.0 0
198 2019-05-25 04:15:00 5/25/2019 4:15 0.0 0 0.0 0 20.24 58.78 5.84 289.5 944.31 0 0 22.200001 943.099976 295 0.0 0 0.0 0
199 2019-05-25 04:30:00 5/25/2019 4:30 0.0 0 0.0 0 20.12 58.83 5.73 289.56 944.09 0 0 21.4 943.099976 345 0.6 0.0 0
200 2019-05-25 04:45:00 5/25/2019 4:45 0.0 0 0.0 0 20.07 58.63 5.63 289.2 944.27 0 0 21.1 943.299988 14 0.0 0 0.0 0
201 2019-05-25 05:00:00 5/25/2019 5:00 0.0 0 0.0 0 20.0 20 58.5 5.49 289.45 944.27 0 0 21.5 943.400024 345 1.4 0.0 0
202 2019-05-25 05:15:00 5/25/2019 5:15 0.05 0.0 0 19.9 58.5 5.33 289.69 944.27 0 0 20.299999 943.5 306 0.5 0.0 0
203 2019-05-25 05:30:00 5/25/2019 5:30 16.46 8.32 19.92 58.26 5.11 289.84 944.31 7 5 20.6 943.599976 8 1.2 0.118986
204 2019-05-25 05:45:00 5/25/2019 5:45 56.28 39.03 20.21 57.5 4.68 289.6 944.26 17 14 20.6 943.700012 14 0.3 0.280346
205 2019-05-25 06:00:00 5/25/2019 6:00 87.5 65.89 20.63 56.59 3.92 288.35 944.18 28 23 20.9 943.900024 2 1.4 0.575588
206 2019-05-25 06:15:00 5/25/2019 6:15 138.06 111.42 21.39 54.69 2.88 289.66 944.11 37 30 20.700001 943.799988 281 0.3 0.86979
207 2019-05-25 06:30:00 5/25/2019 6:30 173.35 143.99 22.28 52.57 1.67 293.29 944.25 48 39 21.200001 944.0 944 59 0.6 1.247819
208 2019-05-25 06:45:00 5/25/2019 6:45 227.67 194.92 23.31 50.09 0.73 298.19 944.55 77 47 22.299999 944.099976 73 0.0 0 1.7254349999999998
209 2019-05-25 07:00:00 5/25/2019 7:00 264.48 229.79 24.09 47.17 0.58 91.95 944.9 116 53 23.200001 944.200012 146 0.0 0 2.335373
210 2019-05-25 07:15:00 5/25/2019 7:15 320.09 282.83 24.72 45.62 1.1 111.5 945.06 159 60 24.9 944.5 208 0.1 3.024289
211 2019-05-25 07:30:00 5/25/2019 7:30 357.13 318.38 25.28 43.28 1.73 112.11 945.22 206 66 25.200001 944.5 205 0.0 0 3.844083
212 2019-05-25 07:45:00 5/25/2019 7:45 412.17 371.4 25.73 41.89 2.21 115.47 945.25 257 72 25.200001 944.799988 165 0.8 4.681369
213 2019-05-25 08:00:00 5/25/2019 8:00 448.26 406.27 26.24 39.93 2.56 115.14 945.25 313 77 25.700001 944.5 163 1.7 5.576908
214 2019-05-25 08:15:00 5/25/2019 8:15 501.13 457.48 26.73 37.85 2.84 109.73 945.27 365 84 26.1 944.799988 146 1.3 6.45426
215 2019-05-25 08:30:00 5/25/2019 8:30 535.37 490.71 27.17 36.78 3.06 111.37 945.34 409 89 26.299999 944.900024 272 1.2 7.267761
216 2019-05-25 08:45:00 5/25/2019 8:45 584.94 538.9 27.67 34.96 3.21 111.21 945.34 460 96 26.5 945.0 945 326 0.3 8.027109
217 2019-05-25 09:00:00 5/25/2019 9:00 616.63 569.76 28.01 33.55 3.35 108.86 945.25 504 104 26.799999 945.0 945 213 1.7 8.775027
218 2019-05-25 09:15:00 5/25/2019 9:15 661.88 613.86 28.37 32.59 3.43 109.04 945.14 555 107 27.299999 945.099976 236 0.6 9.491481
219 2019-05-25 09:30:00 5/25/2019 9:30 690.37 641.65 28.7 31.49 3.4 106.4 945.12 600 109 27.6 944.900024 326 0.4 10.20661
220 2019-05-25 09:45:00 5/25/2019 9:45 730.35 680.68 29.03 30.59 3.28 102.96 944.97 644 114 28.200001 944.799988 199 2.5 10.7916
221 2019-05-25 10:00:00 5/25/2019 10:00 755.08 704.85 29.3 29.98 3.16 100.72 944.75 695 117 27.799999 944.799988 129 0.9 11.34098
222 2019-05-25 10:15:00 5/25/2019 10:15 788.99 737.99 29.62 29.4 3.13 98.82 944.69 748 118 28.299999 944.599976 146 1.4 11.94266
223 2019-05-25 10:30:00 5/25/2019 10:30 809.32 757.88 29.96 28.84 3.18 97.86 944.69 793 118 28.700001 944.5 196 2.2 12.38189
224 2019-05-25 10:45:00 5/25/2019 10:45 836.3 784.28 30.32 28.29 3.26 97.06 944.7 820 124 28.700001 944.5 143 2.4 12.73844
225 2019-05-25 11:00:00 5/25/2019 11:00 851.88 799.52 30.67 27.75 3.34 97.57 944.75 857 126 29.299999 944.5 213 1.3 13.08097
226 2019-05-25 11:15:00 5/25/2019 11:15 871.49 818.72 31.02 27.25 3.34 100.05 944.71 896 126 29.299999 944.299988 177 1.8 13.37407
227 2019-05-25 11:30:00 5/25/2019 11:30 882.03 829.05 31.27 26.91 3.32 106.2 944.62 893 129 29.5 944.099976 196 3.4 13.59137
228 2019-05-25 11:45:00 5/25/2019 11:45 893.74 840.5 31.57 26.66 3.5 111.2 944.55 894 147 30.1 944.200012 171 0.8 13.53405
229 2019-05-25 12:00:00 5/25/2019 12:00 898.67 845.34 31.86 26.51 3.86 115.74 944.5 907 157 30.200001 944.099976 163 3.8 13.57146
230 2019-05-25 12:15:00 5/25/2019 12:15 901.73 848.31 32.14 26.51 4.22 120.66 944.42 920 149 30.1 944.0 944 137 4.3 13.83477
231 2019-05-25 12:30:00 5/25/2019 12:30 900.91 847.5 32.36 26.65 4.5 125.98 944.34 914 151 30.6 943.799988 73 1.2 13.6162
232 2019-05-25 12:45:00 5/25/2019 12:45 895.57 842.27 32.55 26.97 4.74 129.4 944.2 922 153 30.799999 943.5 171 3.7 13.4889
233 2019-05-25 13:00:00 5/25/2019 13:00 889.48 836.3 32.73 27.11 4.94 131.82 944.04 909 145 31.299999 943.400024 90 2.4 13.72075
234 2019-05-25 13:15:00 5/25/2019 13:15 876.65 823.74 32.87 27.19 5.09 134.67 943.86 943 142 31.200001 943.200012 174 3.1 13.69333
235 2019-05-25 13:30:00 5/25/2019 13:30 865.59 812.92 32.97 27.36 5.22 136.75 943.71 863 163 31.6 943.200012 14 2.7 13.06515
236 2019-05-25 13:45:00 5/25/2019 13:45 845.41 793.15 33.06 27.37 5.34 138.51 943.64 826 170 31.9 943.099976 95 1.5 12.70744
237 2019-05-25 14:00:00 5/25/2019 14:00 829.69 777.78 33.16 27.07 5.38 140.34 943.52 845 178 31.799999 943.099976 157 3.8 12.34182
238 2019-05-25 14:15:00 5/25/2019 14:15 803.04 751.72 33.26 26.47 5.27 141.58 943.37 758 179 32.799999 942.900024 241 1.6 11.83927
239 2019-05-25 14:30:00 5/25/2019 14:30 783.23 732.36 33.38 25.68 5.09 141.9 943.22 716 177 32.400002 942.700012 120 4.8 10.84125
240 2019-05-25 14:45:00 5/25/2019 14:45 750.23 700.12 33.5 24.91 4.93 142.24 943.1 665 188 32.200001 942.5 143 5.7 9.825459
241 2019-05-25 15:00:00 5/25/2019 15:00 725.96 676.43 33.62 24.2 4.85 143.17 943.09 718 205 32.200001 942.5 115 4.8 10.49763
242 2019-05-25 15:15:00 5/25/2019 15:15 686.44 637.86 33.71 23.6 4.83 144.86 943.03 594 180 32.299999 942.400024 168 2.5 9.114202
243 2019-05-25 15:30:00 5/25/2019 15:30 658.2 610.3 33.8 23.06 4.84 146.66 942.99 563 172 31.700001 942.400024 123 3.6 8.315826
244 2019-05-25 15:45:00 5/25/2019 15:45 613.23 566.48 33.83 22.73 4.88 148.77 942.91 485 158 31.799999 942.200012 151 2.8 8.039521
245 2019-05-25 16:00:00 5/25/2019 16:00 581.71 535.8 33.87 22.53 4.94 150.5 942.88 510 147 31.4 942.0 942 180 2.4 7.585171000000001
246 2019-05-25 16:15:00 5/25/2019 16:15 532.46 487.93 33.84 22.53 5.01 150.75 942.72 428 140 31.5 942.099976 146 4.1 6.605402000000001
247 2019-05-25 16:30:00 5/25/2019 16:30 498.38 454.86 33.82 22.67 5.09 150.45 942.6 402 132 31.0 31 942.0 942 115 2.7 5.760957
248 2019-05-25 16:45:00 5/25/2019 16:45 445.68 403.81 33.74 23.02 5.15 149.84 942.52 341 119 31.1 942.0 942 112 2.6 5.116322
249 2019-05-25 17:00:00 5/25/2019 17:00 409.71 369.05 33.68 23.48 5.19 149.05 942.46 281 116 30.9 942.099976 146 3.9 4.192783
250 2019-05-25 17:15:00 5/25/2019 17:15 354.88 316.24 33.56 24.08 5.24 148.72 942.4 221 99 30.9 942.0 942 81 2.7 2.876264
251 2019-05-25 17:30:00 5/25/2019 17:30 317.99 280.84 33.44 24.7 5.33 149.28 942.35 179 88 30.4 942.099976 157 3.6 2.661674
252 2019-05-25 17:45:00 5/25/2019 17:45 262.63 228.03 33.26 25.36 5.41 150.52 942.27 139 73 30.299999 942.0 942 22 1.2 1.989386
253 2019-05-25 18:00:00 5/25/2019 18:00 226.05 193.38 33.08 25.93 5.4 151.8 942.2 104 58 29.9 942.200012 137 2.0 2 1.506804
254 2019-05-25 18:15:00 5/25/2019 18:15 172.15 142.85 32.81 26.62 5.18 152.07 942.15 72 45 29.700001 942.400024 59 5.0 5 1.068734
255 2019-05-25 18:30:00 5/25/2019 18:30 137.21 110.61 32.47 27.52 4.7 152.12 942.19 48 33 29.6 942.5 154 0.9 0.7407590000000001
256 2019-05-25 18:45:00 5/25/2019 18:45 87.13 65.53 31.84 29.15 4.04 152.12 942.35 33 23 29.1 942.599976 140 2.7 0.488124
257 2019-05-25 19:00:00 5/25/2019 19:00 56.17 38.9 31.04 31.22 3.42 151.91 942.53 18 12 28.9 942.900024 216 1.4 0.262969
258 2019-05-25 19:15:00 5/25/2019 19:15 16.63 8.4 30.14 33.05 2.89 153.34 942.64 7 4 28.6 942.900024 126 3.3 0.1036869999999999
259 2019-05-25 19:30:00 5/25/2019 19:30 0.14 0.0 0 29.65 33.66 2.36 162.51 942.71 0 0 28.5 943.099976 134 2.9 0.0 0
260 2019-05-25 19:45:00 5/25/2019 19:45 0.0 0 0.0 0 29.19 34.57 1.93 183.25 942.8 0 0 28.200001 943.299988 104 1.5 0.0 0
261 2019-05-25 20:00:00 5/25/2019 20:00 0.0 0 0.0 0 28.75 35.48 1.79 211.75 942.96 0 0 27.9 943.400024 149 1.5 0.0 0
262 2019-05-25 20:15:00 5/25/2019 20:15 0.0 0 0.0 0 28.31 36.36 1.94 238.51 943.15 0 0 27.6 943.5 134 1.3 0.0 0
263 2019-05-25 20:30:00 5/25/2019 20:30 0.0 0 0.0 0 27.9 37.14 2.23 259.29 943.26 0 0 27.5 943.5 115 2.6 0.0 0
264 2019-05-25 20:45:00 5/25/2019 20:45 0.0 0 0.0 0 27.52 37.85 2.53 274.7 943.33 0 0 27.200001 943.799988 95 0.8 0.0 0
265 2019-05-25 21:00:00 5/25/2019 21:00 0.0 0 0.0 0 27.2 38.41 2.67 283.3 943.4 0 0 27.200001 944.0 944 106 0.8 0.0 0
266 2019-05-25 21:15:00 5/25/2019 21:15 0.0 0 0.0 0 26.96 38.83 2.55 284.54 943.51 0 0 26.9 944.0 944 87 0.6 0.0 0
267 2019-05-25 21:30:00 5/25/2019 21:30 0.0 0 0.0 0 26.81 39.07 2.27 280.88 943.7 0 0 26.700001 944.0 944 61 0.8 0.0 0
268 2019-05-25 21:45:00 5/25/2019 21:45 0.0 0 0.0 0 26.71 39.26 2.12 272.16 943.85 0 0 26.4 944.200012 73 0.4 0.0 0
269 2019-05-25 22:00:00 5/25/2019 22:00 0.0 0 0.0 0 26.65 39.72 2.32 254.2 943.98 0 0 26.700001 944.099976 33 0.5 0.0 0
270 2019-05-25 22:15:00 5/25/2019 22:15 0.0 0 0.0 0 26.68 40.95 2.9 230.19 944.09 0 0 26.5 944.0 944 87 1.0 1 0.0 0
271 2019-05-25 22:30:00 5/25/2019 22:30 0.0 0 0.0 0 26.45 43.55 3.64 214.0 214 944.31 0 0 26.4 944.0 944 56 0.8 0.0 0
272 2019-05-25 22:45:00 5/25/2019 22:45 0.0 0 0.0 0 26.12 46.71 4.32 207.0 207 944.64 0 0 26.1 943.900024 236 0.0 0 0.0 0
273 2019-05-25 23:00:00 5/25/2019 23:00 0.0 0 0.0 0 25.91 49.09 4.69 214.5 944.8 0 0 25.200001 943.900024 5 0.0 0 0.0 0
274 2019-05-25 23:15:00 5/25/2019 23:15 0.0 0 0.0 0 25.64 50.16 4.65 225.4 945.02 0 0 25.0 25 944.0 944 348 0.0 0 0.0 0
275 2019-05-25 23:30:00 5/25/2019 23:30 0.0 0 0.0 0 25.31 50.48 4.41 239.91 945.26 0 0 24.4 943.900024 25 1.7 0.0 0
276 2019-05-25 23:45:00 5/25/2019 23:45 0.0 0 0.0 0 24.97 50.35 4.19 261.84 945.34 0 0 24.200001 943.700012 300 1.5 0.0 0
277 2019-05-26 00:00:00 5/26/2019 0:00 0.0 0 0.0 0 23.44 54.07 2.89 296.7 945.03 0 0 23.9 943.700012 340 2.1 0.0 0
278 2019-05-26 00:15:00 5/26/2019 0:15 0.0 0 0.0 0 23.32 54.41 3.01 296.2 945.17 0 0 23.9 943.799988 348 1.2 0.0 0
279 2019-05-26 00:30:00 5/26/2019 0:30 0.0 0 0.0 0 23.24 54.6 3.24 295.02 945.56 0 0 23.799999 943.700012 236 1.0 1 0.0 0
280 2019-05-26 00:45:00 5/26/2019 0:45 0.0 0 0.0 0 23.12 54.89 3.41 293.5 945.36 0 0 24.1 943.700012 331 0.9 0.0 0
281 2019-05-26 01:00:00 5/26/2019 1:00 0.0 0 0.0 0 22.92 55.44 3.4 293.01 945.05 0 0 23.700001 943.5 16 0.7 0.0 0
282 2019-05-26 01:15:00 5/26/2019 1:15 0.0 0 0.0 0 22.61 56.36 3.27 293.59 944.65 0 0 23.6 943.5 345 1.0 1 0.0 0
283 2019-05-26 01:30:00 5/26/2019 1:30 0.0 0 0.0 0 22.38 57.07 3.22 296.94 944.78 0 0 23.200001 943.599976 2 1.2 0.0 0
284 2019-05-26 01:45:00 5/26/2019 1:45 0.0 0 0.0 0 22.14 57.81 3.36 297.5 944.96 0 0 23.299999 943.700012 345 0.8 0.0 0
285 2019-05-26 02:00:00 5/26/2019 2:00 0.0 0 0.0 0 21.88 58.61 3.63 297.32 944.83 0 0 23.0 23 943.599976 11 1.4 0.0 0
286 2019-05-26 02:15:00 5/26/2019 2:15 0.0 0 0.0 0 21.56 59.64 3.87 293.85 944.61 0 0 23.200001 943.599976 11 1.1 0.0 0
287 2019-05-26 02:30:00 5/26/2019 2:30 0.0 0 0.0 0 21.3 60.48 4.02 288.79 944.69 0 0 23.200001 943.400024 264 0.1 0.0 0
288 2019-05-26 02:45:00 5/26/2019 2:45 0.0 0 0.0 0 21.25 60.56 4.21 283.97 944.72 0 0 22.5 943.400024 343 1.8 0.0 0
289 2019-05-26 03:00:00 5/26/2019 3:00 0.0 0 0.0 0 21.35 60.41 4.48 280.96 944.64 0 0 22.299999 943.400024 343 1.0 1 0.0 0
290 5/26/2019 3:15 0 0 21.43 60.97 4.82 279.04 944.43 0 0 21.9 943.599976 303 0 0
291 5/26/2019 3:30 0 0 21.53 62.09 5.2 279.21 944.35 0 0 22.200001 943.400024 351 1.1 0
292 5/26/2019 3:45 0 0 21.64 63.43 5.47 278.48 944.32 0 0 22.4 943.400024 19 0 0
293 5/26/2019 4:00 0 0 21.69 64.77 5.58 277.75 944.41 0 0 22.9 943.299988 320 0 0
294 5/26/2019 4:15 0 0 21.67 66.03 5.52 277.09 944.24 0 0 23.1 943.299988 323 0 0
295 5/26/2019 4:30 0 0 21.57 67.19 5.34 275.24 943.97 0 0 22.9 943.299988 5 0 0
296 5/26/2019 4:45 0 0 21.45 68.23 5.11 274 944.09 0 0 22.700001 943.400024 14 0 0
297 5/26/2019 5:00 0 0 21.33 69.12 4.89 273.5 944.31 0 0 22.299999 943.400024 343 0 0
298 5/26/2019 5:15 0.22 0 21.14 70.11 4.63 273.17 944.4 0 0 22.4 943.400024 343 1 0
299 5/26/2019 5:30 7.34 3.67 21.09 70.57 4.44 273.4 944.44 4 2 22.5 943.700012 317 0 0.03233
300 5/26/2019 5:45 23.02 15.84 21.43 69.54 4.34 273.27 944.35 12 8 22.5 943.599976 343 0 0.154317
301 5/26/2019 6:00 34.64 25.93 22.04 67.58 4.26 270.23 944.12 34 29 22.5 943.5 0 0.1 0.5440659999999999
302 5/26/2019 6:15 54 43.38 22.99 64.41 4.25 265.22 944.09 40 38 22.799999 943.5 0 0.2 0.705485
303 5/26/2019 6:30 65.29 42.81 23.92 61.23 4.34 260.2 944.18 64 55 23.1 943.5 2 0.5 1.271835
304 5/26/2019 6:45 55.76 17.99 24.51 59.07 4.37 257.17 944.43 92 74 23.200001 943.599976 129 0.1 1.7649240000000002
305 5/26/2019 7:00 44.36 0 24.75 58.23 4.21 252.33 944.68 121 90 23.299999 943.900024 191 0.4 2.282491
306 5/26/2019 7:15 45.6 0 24.95 57.63 4.04 245.37 944.78 168 116 24.4 943.900024 115 0.1 3.101246
307 5/26/2019 7:30 72.48 12.96 25.45 56.1 4.07 238.65 944.71 185 115 25.1 943.900024 160 1 2.934285
308 5/26/2019 7:45 144.65 126.91 26.31 53.41 4.33 234.81 944.62 220 128 24.9 944 241 0 3.938648
309 5/26/2019 8:00 170.92 154 27.14 50.84 4.65 232.09 944.61 256 141 25.700001 943.900024 227 0 4.568676
310 5/26/2019 8:15 173.74 153.07 27.69 49.05 4.84 229.23 944.72 309 157 26.299999 944 253 1 5.454169
311 5/26/2019 8:30 179.13 152.56 28.23 47.63 4.84 225.21 944.79 355 174 26.200001 944 14 0.2 6.154227
312 5/26/2019 8:45 208.55 183.2 28.87 44.99 4.76 225 944.78 395 187 27 943.900024 132 1.1 6.770631
313 5/26/2019 9:00 236.95 217.67 29.41 43.61 4.6 221.65 944.63 453 209 27.4 943.900024 151 0.8 7.692495
314 5/26/2019 9:15 254.49 233.71 29.97 41.73 4.39 218.36 944.5 349 226 27.700001 943.700012 182 0.8 5.816783
315 5/26/2019 9:30 264.46 242.99 30.47 39.87 4.22 219.45 944.43 397 249 27.799999 943.700012 323 2.7 8.543291
316 5/26/2019 9:45 269.62 235.06 30.59 39.46 4.3 227.04 944.35 591 287 28.700001 943.799988 84 0.3 7.985716
317 5/26/2019 10:00 235.36 195.91 30.06 41.21 4.38 238.67 944.32 624 249 28.200001 943.5 213 5.2 10.39089
318 5/26/2019 10:15 18.49 0 27.49 48.89 4.14 247.76 944.46 666 262 29.4 943.5 165 1.6 10.82722
319 5/26/2019 10:30 20.93 0 26.49 52.74 3.71 245.43 944.57 745 324 29.5 943.599976 154 2 9.738342
320 5/26/2019 10:45 9.06 0 25.76 55.52 3.14 229.51 944.58 668 296 30.1 943.400024 312 1.3 8.38909
321 5/26/2019 11:00 8.98 0 25.75 55.71 2.67 205.91 944.55 437 276 30.1 943.200012 272 1.2 7.641575
322 5/26/2019 11:15 17.95 0 26.17 54.67 2.46 186.5 944.48 369 261 29.799999 942.799988 120 2.7 6.1083300000000005
323 5/26/2019 11:30 19.71 0 26.44 54.18 2.59 166.73 944.44 805 332 29.9 942.799988 185 1.6 12.92134
324 5/26/2019 11:45 206.7 8.21 28.71 47.21 3.27 155.33 944.32 805 315 30.299999 942.599976 118 1.8 9.184751
325 5/26/2019 12:00 283.97 204.5 30.11 42.38 4.12 151.48 944.17 335 238 30.4 942.5 230 1.7 6.595242
326 5/26/2019 12:15 255.82 220 30.41 41.81 3.82 156.36 944.07 414 295 30.5 942.200012 132 4.8 9.445583
327 5/26/2019 12:30 108.13 52.48 29.29 45.8 3.13 204.26 944.31 808 341 30.799999 941.900024 137 4.6 11.85289
328 5/26/2019 12:45 6.99 0 26.1 57.28 3.09 302.28 944.7 744 332 30.6 941.799988 14 0.7 11.02761
329 5/26/2019 13:00 8.62 0 25.55 59.87 2.17 294.01 944.41 305 244 31.200001 941.599976 177 1.8 7.093295
330 5/26/2019 13:15 10.58 0 25.79 58.7 0.89 238.87 943.98 79 61 30.6 941.400024 137 3.7 1.368825
331 5/26/2019 13:30 12.39 0 25.85 58.32 0.95 217.12 943.63 82 79 29 941.599976 87 0.7 2.300619
332 5/26/2019 13:45 517.57 459.55 29.08 48.09 2.07 155.55 943.26 96 80 28.200001 941.299988 303 1.4 1.911621
333 5/26/2019 14:00 506.16 449.34 29.67 46.13 3.13 144.13 942.89 209 149 27.4 941.099976 112 3 4.43953
334 5/26/2019 14:15 548.83 513.42 30.65 42.91 3.88 116.86 942.79 609 226 28.299999 941 109 1.6 9.061724
335 5/26/2019 14:30 450.53 420.91 30.9 42.4 4.88 87.09 942.98 705 264 29.9 941 303 1 11.22321
336 5/26/2019 14:45 366.94 342.02 30.71 43.56 5.95 72.48 943.13 257 179 29.5 940.799988 351 0.7 4.725937999999999
337 5/26/2019 15:00 342.32 318.54 30.34 45.46 6.51 72.73 943.15 348 231 30 941 202 2.2 8.687044
338 5/26/2019 15:15 368.45 341.89 30.04 46.93 6.41 77.12 943.11 653 229 30 940.900024 216 1.1 10.18784
339 5/26/2019 15:30 437.23 404.85 29.92 47.47 5.95 80.82 943.02 559 207 30.4 941 126 3.3 8.69553
340 5/26/2019 15:45 493.56 455.34 29.94 47.22 5.43 83.06 942.89 540 197 29.700001 941.099976 90 1.5 8.441221
341 5/26/2019 16:00 529.31 486.94 30.06 46.41 4.96 85.15 942.76 477 180 29.299999 940.799988 129 4.8 7.492222999999999
342 5/26/2019 16:15 513.9 470.41 30.12 45.54 4.52 90.08 942.46 432 166 28.9 941.099976 143 2.5 6.782408
343 5/26/2019 16:30 490.1 446.81 30.19 44.81 4.02 91.35 942.35 390 147 28.9 940.799988 25 1.2 6.071786
344 5/26/2019 16:45 438.84 397.05 30.25 44.27 3.55 67.26 942.47 364 152 28.700001 940.900024 163 1.3 5.664371
345 5/26/2019 17:00 403.66 363.06 30.28 44.01 3.32 50.02 942.53 280 119 29.299999 940.900024 33 0.1 4.407778
346 5/26/2019 17:15 350.96 312.34 30.2 44.07 3.22 45.27 942.55 244 108 29.200001 941 227 0.3 3.848124
347 5/26/2019 17:30 315.3 278.15 30.1 44.33 3.17 36.4 942.57 141 72 29.5 941.099976 177 1.8 2.109006
348 5/26/2019 17:45 261.18 226.55 29.93 44.87 3.19 23.86 942.56 190 100 29 941.299988 129 1.2 2.963843
349 5/26/2019 18:00 225.1 192.37 29.74 45.54 3.36 10.21 942.61 132 73 29 941.400024 149 3 2.035513
350 5/26/2019 18:15 171.79 142.42 29.54 45.38 3.97 6.92 942.8 89 55 29.700001 941.599976 216 1.8 1.458367
351 5/26/2019 18:30 137.5 110.78 28.66 47.1 5.39 23.94 943.1 62 44 30.700001 941.799988 275 5.4 1.016602
352 5/26/2019 18:45 88.36 66.57 26.31 55.27 7.03 29.2 943.59 43 32 31 942.099976 261 4.5 0.666285
353 5/26/2019 19:00 57.74 40.2 24.97 59.82 7.7 16.57 944.23 6 3 30.299999 942.5 292 4.3 0.096701
354 5/26/2019 19:15 17.93 9.27 24 62.23 7.16 6.42 944.79 3 1 29.9 942.700012 298 3.8 0.039835
355 5/26/2019 19:30 0.75 0.04 23.27 63.61 6.02 0.25 945.07 0 0 29.4 943.200012 329 5.6 0
356 5/26/2019 19:45 0 0 22.74 63.38 4.87 353.77 945.43 0 0 29.1 943.700012 326 4.9 0
357 5/26/2019 20:00 0 0 22.3 62.22 3.75 349.32 945.89 0 0 28.6 944.299988 337 7.5 0
358 5/26/2019 20:15 0 0 21.85 61.43 2.58 347.3 946.23 0 0 27.5 944.400024 270 7.8 0
359 5/26/2019 20:30 0 0 21.64 60.38 1.88 6.76 946.65 0 0 27.1 944.599976 292 7 0
360 5/26/2019 20:45 0 0 21.33 60.78 1.97 38.15 947.07 0 0 26.6 945.299988 295 3.5 0
361 5/26/2019 21:00 0 0 20.93 62.6 2.26 38.11 947.38 0 0 26.4 945.700012 320 3.6 0
362 5/26/2019 21:15 0 0 20.52 64.14 2.09 31.33 947.61 0 0 26.200001 946 300 9.2 0
363 5/26/2019 21:30 0 0 20.21 64.74 1.58 19.78 947.8 0 0 25.799999 946.599976 284 2.9 0
364 5/26/2019 21:45 0 0 20.06 64.72 0.95 15.45 947.93 0 0 25.1 947.099976 351 1 0
365 5/26/2019 22:00 0 0 19.85 65.21 0.42 52.74 948.02 0 0 24.5 947.400024 309 4.2 0
366 5/26/2019 22:15 0 0 19.67 65.39 0.25 142.64 948.26 0 0 24.6 947.799988 306 3 0
367 5/26/2019 22:30 0 0 19.5 63.59 0.61 17.4 948.57 0 0 24.5 948 5 2.5 0
368 5/26/2019 22:45 0 0 19.38 59.39 1.44 23.76 948.83 0 0 24 948.299988 334 2.6 0
369 5/26/2019 23:00 0 0 19.07 56.73 2.26 33.72 949.09 0 0 24.1 948.299988 343 2.5 0
370 5/26/2019 23:15 0 0 18.69 55.31 2.7 37.3 949.35 0 0 24.1 948.299988 343 3.9 0
371 5/26/2019 23:30 0 0 18.39 54.02 2.85 43.17 949.66 0 0 24 948.700012 343 2.9 0
372 5/26/2019 23:45 0 0 18.09 53.39 2.81 49.21 950.06 0 0 23.799999 948.900024 11 3.3 0
373 5/27/2019 0:00 0 0 19.12 44.46 2.31 19.45 950.7 0 0 23.700001 949.099976 343 5.2 0
374 5/27/2019 0:15 0 0 18.88 48.46 2.57 35.42 951.18 0 0 23.6 949.299988 323 5.2 0
375 5/27/2019 0:30 0 0 18.52 52.55 3.01 41.12 951.74 0 0 20.5 949.5 123 2.2 0
376 5/27/2019 0:45 0 0 18.13 55.48 3.45 41.51 951.93 0 0 19.200001 949.599976 106 3.3 0
377 5/27/2019 1:00 0 0 17.75 57.14 3.86 38.68 952.07 0 0 19 949.900024 90 2.2 0
378 5/27/2019 1:15 0 0 17.43 57.98 3.87 33.33 952.02 0 0 19 950.099976 87 1.5 0
379 5/27/2019 1:30 0 0 17.13 59.13 3.12 29.23 952.13 0 0 18.9 950.5 140 1.8 0
380 5/27/2019 1:45 0 0 16.96 59.87 2.08 15.68 952.47 0 0 18.5 950.700012 267 0 0
381 5/27/2019 2:00 0 0 16.97 59.3 1.46 348.48 952.92 0 0 17.9 950.799988 216 0 0
382 5/27/2019 2:15 0 0 16.95 57.74 1.55 326.96 953.05 0 0 17.200001 951 19 0 0
383 5/27/2019 2:30 0 0 16.8 54.49 2.32 332.3 952.94 0 0 17.1 951.299988 340 0 0
384 5/27/2019 2:45 0 0 16.7 48.27 3.59 349.37 953.16 0 0 16.700001 951.400024 140 0 0
385 5/27/2019 3:00 0 0 16.58 42.69 5.07 358.77 953.16 0 0 16.700001 951.599976 25 0 0
386 5/27/2019 3:15 0 0 16.41 39.36 6.47 2.63 953.1 0 0 16.5 952 134 0 0
387 5/27/2019 3:30 0 0 16.36 37.49 7.67 3.57 953.25 0 0 16.799999 952.099976 253 0 0
388 5/27/2019 3:45 0 0 16.34 36.45 8.64 4.06 953.35 0 0 16.6 952.400024 81 0 0
389 5/27/2019 4:00 0 0 16.34 35.63 9.4 4.85 953.5 0 0 16.5 952.599976 78 0 0
390 5/27/2019 4:15 0 0 16.3 35.1 9.95 5.94 953.48 0 0 17.1 952.799988 67 0 0
391 5/27/2019 4:30 0 0 16.23 34.83 10.34 6.99 953.54 0 0 17.6 953.299988 8 1.8 0
392 5/27/2019 4:45 0 0 16.16 34.73 10.57 8.42 953.86 0 0 18.9 953.5 334 2.5 0
393 5/27/2019 5:00 0 0 16.05 34.82 10.63 9.93 954.13 0 0 18.9 953.700012 8 2.1 0
394 5/27/2019 5:15 0.95 0.08 15.93 34.98 10.52 11.74 954.52 0 0 18.9 954.099976 329 2.1 0
395 5/27/2019 5:30 19.55 10.58 15.87 35.32 10.35 13.74 954.85 8 6 18.6 954.5 300 0.6 0.142713
396 5/27/2019 5:45 60.9 42.92 15.94 35.61 10.2 15.31 955.07 22 18 18.799999 954.799988 337 2.7 0.376874
397 5/27/2019 6:00 91.01 67.8 16.05 35.72 10.13 16.2 955.25 48 42 18.799999 955 326 5 0.904948
398 5/27/2019 6:15 144.27 116.17 16.3 35.49 10.09 17 955.47 73 62 19.299999 955.099976 50 5.9 1.464949
399 5/27/2019 6:30 181.35 151.57 16.52 35.3 9.96 18.43 955.7 93 80 19.5 955.5 28 4.7 2.099769
400 5/27/2019 6:45 238.32 204.24 16.83 34.92 9.94 19.79 955.97 117 86 19.6 955.599976 0 5.6 2.536454
401 5/27/2019 7:00 276.7 240.95 17.1 34.42 10.12 20.6 956.34 166 97 19.9 955.900024 0 1.8 3.2831010000000003
402 5/27/2019 7:15 328.81 283.41 17.43 33.86 10.25 21.72 956.58 160 100 20 956 337 3.6 3.234779
403 5/27/2019 7:30 367.73 328.25 17.74 33.27 10.28 22.93 956.77 212 101 20.1 956.400024 348 4.3 4.146598
404 5/27/2019 7:45 416.28 369.52 18.09 32.51 10.35 24.44 956.94 307 112 20.200001 956.599976 2 7.6 5.659002
405 5/27/2019 8:00 444.85 390.37 18.4 31.75 10.52 25.79 957.13 422 118 20.6 956.599976 53 5.2 7.594177
406 5/27/2019 8:15 493.16 443 18.77 30.85 10.77 26.61 957.41 460 117 20.700001 956.900024 11 6.6 8.475745
407 5/27/2019 8:30 515.87 461.54 19.05 30.01 11.06 27.28 957.67 459 140 21.6 957.200012 345 3.3 8.030342999999998
408 5/27/2019 8:45 540.54 471.29 19.26 29.21 11.38 27.71 957.81 421 159 21.1 957.200012 326 3 7.827703
409 5/27/2019 9:00 572.98 499.84 19.48 28.35 11.67 28.04 957.93 527 168 21.1 957.599976 70 1.4 9.43294
410 5/27/2019 9:15 609.32 544.33 19.68 27.6 11.84 28.12 957.99 582 161 21.299999 957.599976 11 2.5 10.58562
411 5/27/2019 9:30 623.11 534.29 19.84 27.13 11.87 28.46 958.06 659 133 21.6 957.700012 334 3.1 10.892
412 5/27/2019 9:45 630.18 492.09 19.99 26.69 11.81 29.22 958.07 636 124 21.9 957.599976 351 2.6 11.26281
413 5/27/2019 10:00 656.64 531.72 20.18 26.17 11.71 30.13 958.07 643 110 22.299999 957.799988 354 1.5 11.2534
414 5/27/2019 10:15 665.56 517.84 20.35 25.7 11.54 30.35 958.15 763 141 22.6 957.900024 5 9.1 12.60647
415 5/27/2019 10:30 682.36 547.79 20.56 25.17 11.31 30.43 958.26 821 183 23.1 957.900024 208 2.3 13.40559
416 5/27/2019 10:45 690.74 543.92 20.77 24.59 11.05 30.54 958.38 787 138 23.299999 957.799988 0 4.8 13.4568
417 5/27/2019 11:00 725.56 596.59 21.03 23.9 10.8 30.64 958.4 927 143 23.1 958 351 6.2 14.66305
418 5/27/2019 11:15 749.9 617.13 21.3 23.19 10.53 31.4 958.41 946 153 22.700001 957.799988 67 3 14.94715
419 5/27/2019 11:30 757.54 606.3 21.52 22.54 10.31 33.52 958.47 1041 109 23.299999 957.900024 331 5.9 16.258129
420 5/27/2019 11:45 780.25 647.3 21.77 22.24 10.1 35.07 958.54 1042 123 23.700001 957.799988 345 1.1 16.6626
421 5/27/2019 12:00 732.99 563.5 21.84 22.56 9.78 34.9 958.59 1126 143 23.9 957.700012 19 3.3 15.2876
422 5/27/2019 12:15 800.02 699.28 22.14 22.58 9.35 33.49 958.6 1124 115 23.700001 957.400024 11 4.2 16.436001
423 5/27/2019 12:30 800.02 703.11 22.39 22.53 8.99 31.46 958.63 1016 101 23.9 957.400024 241 0.5 15.66303
424 5/27/2019 12:45 809.81 746.76 22.63 22.35 8.8 28.82 958.51 1003 142 24.4 957.200012 59 3.9 15.779420000000002
425 5/27/2019 13:00 776.52 686.71 22.76 22.3 8.66 28.12 958.34 959 217 24.700001 956.799988 334 4.1 14.59169
426 5/27/2019 13:15 776.64 690.96 23.01 21.9 8.55 30.75 958.19 1033 200 25.200001 956.900024 357 0.7 15.75696
427 5/27/2019 13:30 774.17 706.37 23.33 20.63 8.56 33.66 958.02 943 207 24.799999 956.700012 146 2.4 15.35711
428 5/27/2019 13:45 750.29 660.83 23.6 18.78 8.63 34.42 957.93 646 227 25.1 956.599976 28 2.3 10.7923
429 5/27/2019 14:00 720.02 661.93 23.7 17.61 8.56 34.64 957.9 1034 159 25.6 956.5 354 0.6 15.683
430 5/27/2019 14:15 726.12 673.9 23.84 17.04 8.29 35.34 957.86 974 149 24.9 956.400024 182 3.6 14.67772
431 5/27/2019 14:30 715.7 670.39 23.98 16.69 8 35.78 957.8 949 174 24.700001 956.299988 104 3.8 14.62778
432 5/27/2019 14:45 668.9 612.09 24.05 16.41 7.79 35.65 957.75 849 121 24.799999 956.099976 168 9 13.15221
433 5/27/2019 15:00 656.38 609.4 24.15 16.13 7.59 35.78 957.74 855 107 25 956.400024 168 4.5 13.360729999999998
434 5/27/2019 15:15 619.47 571.15 24.19 15.9 7.34 36.2 957.76 748 138 24.200001 956.299988 118 3.1 11.38347
435 5/27/2019 15:30 594.28 545.39 24.24 15.68 7.08 36.53 957.73 748 113 24.5 956.200012 151 5.8 9.635234
436 5/27/2019 15:45 555.5 507.22 24.27 15.51 6.83 36.43 957.67 667 130 25.299999 956.099976 154 2.5 10.66996
437 5/27/2019 16:00 519.81 473.35 24.28 15.38 6.6 36.55 957.61 437 133 24.4 956.200012 134 2.9 8.51327
438 5/27/2019 16:15 473.75 422.32 24.26 15.29 6.36 37.1 957.52 599 128 24.299999 956 171 3.3 9.556602
439 5/27/2019 16:30 452.96 413.71 24.26 15.21 6.1 38.14 957.44 401 114 24.700001 956.200012 213 0.4 5.711769
440 5/27/2019 16:45 397.33 354.65 24.19 15.23 5.83 39.3 957.43 336 162 24.5 956 137 2.9 6.201047
441 5/27/2019 17:00 359.25 313.56 24.14 15.27 5.56 40.78 957.43 270 155 24 956 168 2 4.522606
442 5/27/2019 17:15 302.6 245.81 24.03 15.39 5.27 41.97 957.43 200 134 23.4 956 126 1.8 3.64814
443 5/27/2019 17:30 261.26 196.48 23.9 15.58 4.97 43.26 957.39 151 110 23.700001 955.900024 137 2.7 2.717617
444 5/27/2019 17:45 223.1 185.45 23.77 15.78 4.68 44.77 957.3 134 103 23.5 955.700012 154 3.4 2.4417150000000003
445 5/27/2019 18:00 193.95 151.69 23.63 16.04 4.38 46.47 957.21 123 89 23.200001 955.900024 177 2.5 2.169971
446 5/27/2019 18:15 144.32 100.25 23.39 16.53 3.98 48.25 957.15 102 71 23.200001 955.900024 64 1.2 1.786458
447 5/27/2019 18:30 108.33 71.77 23.08 17.44 3.41 49.96 957.15 91 67 23.299999 956 118 0.5 1.645823
448 5/27/2019 18:45 75.28 53.31 22.46 19.63 2.8 50.67 957.24 52 39 23.1 956.200012 154 0.5 0.922499
449 5/27/2019 19:00 50.88 34.74 21.99 20.79 2.39 49.01 957.41 27 20 22.799999 956.200012 70 1.7 0.481716
450 5/27/2019 19:15 16.88 8.94 21.53 20.75 2.09 43.53 957.52 4 3 22.5 956.5 168 1.4 0.072223
451 5/27/2019 19:30 1.12 0.12 21.11 20.79 1.81 30.79 957.62 0 0 21.799999 956.700012 132 2.7 0
452 5/27/2019 19:45 0 0 20.67 21.21 1.76 8.16 957.76 0 0 21.4 956.799988 137 0.6 0
453 5/27/2019 20:00 0 0 20.22 21.77 2.04 344.71 957.93 0 0 21.1 957.099976 78 1.4 0
454 5/27/2019 20:15 0 0 19.64 22.54 2.52 330.63 958.08 0 0 21 957.099976 95 1.8 0
455 5/27/2019 20:30 0 0 19.11 23.22 2.93 324.42 958.22 0 0 20.799999 957.299988 120 1.5 0
456 5/27/2019 20:45 0 0 18.69 23.72 3.22 322.37 958.32 0 0 20.6 957.5 149 0.7 0
457 5/27/2019 21:00 0 0 18.41 23.96 3.39 322.02 958.44 0 0 20.299999 957.599976 95 0.9 0
458 5/27/2019 21:15 0 0 18.22 24.07 3.44 321.7 958.57 0 0 20.299999 957.900024 106 1.1 0
459 5/27/2019 21:30 0 0 18.02 24.24 3.39 320.29 958.7 0 0 20.200001 958 92 1.5 0
460 5/27/2019 21:45 0 0 17.81 24.4 3.28 317.43 958.81 0 0 20.200001 958 92 1.1 0
461 5/27/2019 22:00 0 0 17.72 24.38 3.18 313.79 958.9 0 0 20.1 958.099976 295 0 0
462 5/27/2019 22:15 0 0 17.61 24.37 3.12 310.26 959.05 0 0 19.200001 958.299988 8 0 0
463 5/27/2019 22:30 0 0 17.57 24.27 3.1 306.28 959.25 0 0 19.4 958.200012 70 0 0
464 5/27/2019 22:45 0 0 17.43 24.29 3.13 303.16 959.44 0 0 18.700001 958.200012 298 0.1 0
465 5/27/2019 23:00 0 0 17.27 24.36 3.22 299.87 959.6 0 0 19 958.299988 337 0.5 0
466 5/27/2019 23:15 0 0 17.11 24.49 3.35 296.26 959.73 0 0 18.799999 958 2 1.2 0
467 5/27/2019 23:30 0 0 16.91 24.68 3.51 292.69 959.89 0 0 18.5 958 11 1.4 0
468 5/27/2019 23:45 0 0 16.67 24.98 3.67 290.34 960.07 0 0 18.5 958 5 2 0
469 5/28/2019 0:00 0 0 15.54 32.38 3.7 293.45 958.99 0 0 18.4 958 0 1 0
470 5/28/2019 0:15 0 0 15.35 32.81 3.79 294.08 958.88 0 0 18.6 957.799988 357 0.8 0
471 5/28/2019 0:30 0 0 15.24 33.07 3.89 294.75 958.96 0 0 18.200001 957.700012 289 0.3 0
472 5/28/2019 0:45 0 0 15.11 33.35 4.04 295.03 958.73 0 0 18.299999 957.700012 309 0.5 0
473 5/28/2019 1:00 0 0 14.98 33.63 4.22 295.1 958.67 0 0 18.200001 957.5 354 0.9 0
474 5/28/2019 1:15 0 0 14.83 33.93 4.38 295 958.58 0 0 18 957.5 8 0.5 0
475 5/28/2019 1:30 0 0 14.61 34.36 4.45 294.89 958.65 0 0 18 957.5 345 1.3 0
476 5/28/2019 1:45 0 0 14.36 34.87 4.49 293.92 958.78 0 0 17.799999 957.599976 28 1.4 0
477 5/28/2019 2:00 0 0 14.18 35.17 4.52 293.25 958.77 0 0 18 957.400024 33 0.6 0
478 5/28/2019 2:15 0 0 13.89 35.69 4.54 292.06 958.71 0 0 17.9 957.5 216 0 0
479 5/28/2019 2:30 0 0 13.68 35.99 4.62 288.97 958.91 0 0 17.700001 957.400024 331 0.4 0
480 5/28/2019 2:45 0 0 13.59 35.93 4.81 286.17 959.03 0 0 17.9 957.400024 205 0.2 0
481 5/28/2019 3:00 0 0 13.61 35.67 5.05 283.86 959.17 0 0 17.6 957.299988 56 0.1 0
482 5/28/2019 3:15 0 0 13.72 35.32 5.28 282.53 959.17 0 0 17.5 957.299988 244 0.1 0

View File

@ -60,9 +60,7 @@ class ModelInference:
数据长度满足192截取前192 数据长度满足192截取前192
数据长度不满足192前拼接满足数量级 数据长度不满足192前拼接满足数量级
""" """
def load_pred_data(self,data_path): def load_pred_data(self,data):
data = pd.read_csv(data_path)
raw_data = data.values raw_data = data.values
length = raw_data.shape[0] length = raw_data.shape[0]
# 顺序,必须一致才能进行下一步 # 顺序,必须一致才能进行下一步
@ -84,10 +82,10 @@ class ModelInference:
input_data = np.array(input_data) input_data = np.array(input_data)
input_data = input_data[:guangfufadian_args.in_len, 1:].astype(np.float32) input_data = input_data[:guangfufadian_args.in_len, 1:].astype(np.float32)
input_tensor = torch.tensor(input_data, dtype=torch.float32).unsqueeze(0) # 增加batch维度 input_tensor = torch.tensor(input_data, dtype=torch.float32).unsqueeze(0) # 增加batch维度
return input_tensor return {'status':True, 'reason':input_tensor }
else: else:
print("文件不匹配,请检查上传文件与模版是否一致") print("文件不匹配,请检查上传文件与模版是否一致")
return None return {'status':False, 'reason':'文件不匹配,请检查上传文件与模版是否一致'}
# 数据归一化 # 数据归一化
def preprocess_data(self, input_tensor): def preprocess_data(self, input_tensor):
@ -100,11 +98,14 @@ class ModelInference:
# return predictions.cpu().numpy() # 返回 NumPy 数组 # return predictions.cpu().numpy() # 返回 NumPy 数组
return predictions return predictions
# 推理过程 # 推理过程
def run_inference(self, file_path): def run_inference(self, data):
raw_data = self.load_pred_data(file_path) raw_data = self.load_pred_data(data)
input_tensor = self.preprocess_data(raw_data) if raw_data['status'] == False:
predictions = self.predict(input_tensor) return {'status':False, 'reason':'文件不匹配,请检查上传文件与模版是否一致'}
predictions = self.scaler.inverse_transform(predictions) else:
predictions = predictions.squeeze(0) input_tensor = self.preprocess_data(raw_data['reason'])
predictions = predictions.cpu().numpy() predictions = self.predict(input_tensor)
return predictions[:,-1:] predictions = self.scaler.inverse_transform(predictions)
predictions = predictions.squeeze(0)
predictions = predictions.cpu().numpy()
return {'status':True, 'reason':predictions[:,-1:]}

BIN
imgs/screen/ch4-app.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

BIN
imgs/screen/dmsb-app.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

BIN
imgs/screen/pv-app.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 591 KiB

BIN
imgs/screen/roof-app.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

BIN
imgs/screen/roofpv-app.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

94081
meijitancailiao/data/moni.csv Normal file

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ import numpy as np
import xgboost as xgb import xgboost as xgb
from sklearn.svm import SVR from sklearn.svm import SVR
from sklearn.tree import DecisionTreeRegressor from sklearn.tree import DecisionTreeRegressor
from sklearn.ensemble import RandomForestRegressor, AdaBoostRegressor from sklearn.ensemble import RandomForestRegressor, AdaBoostRegressor,GradientBoostingRegressor
from sklearn.pipeline import Pipeline from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler, MinMaxScaler,RobustScaler from sklearn.preprocessing import StandardScaler, MinMaxScaler,RobustScaler
from sklearn.linear_model import LinearRegression,Ridge,LogisticRegression, Lasso, ElasticNet from sklearn.linear_model import LinearRegression,Ridge,LogisticRegression, Lasso, ElasticNet
@ -634,60 +634,101 @@ XGB
""" """
# 创建Pipeline # 创建Pipeline
base_estimator = DecisionTreeRegressor(max_depth=3) # base_estimator = DecisionTreeRegressor(max_depth=3)
# pipeline = Pipeline([
# ('scaler', StandardScaler()), # 可选
# ('xgb', xgb.XGBRegressor(objective='reg:squarederror',
# random_state=42,
# n_jobs=-1))
# ])
# # 定义超参数网格
# param_grid = {
# 'xgb__n_estimators': np.arange(1,150), # 树的数量
# # 'xgb__max_depth': [3, 4, 5], # 树的最大深度
# # 'xgb__learning_rate': [0.01, 0.05, 0.1], # 学习率
# # 'xgb__subsample': [0.6, 0.8, 1.0], # 样本采样比例
# # 'xgb__colsample_bytree': [0.6, 0.8, 1.0], # 特征采样比例
# # 'xgb__gamma': [0, 0.1, 0.2], # 最小分裂损失
# # 'xgb__reg_alpha': [0, 0.1, 1], # L1正则化
# # 'xgb__reg_lambda': [0.1, 1, 10] # L2正则化
# }
# # 设置5折交叉验证
# kf = KFold(n_splits=5, shuffle=True, random_state=42)
# # 网格搜索(优化超参数)
# grid_search = GridSearchCV(
# pipeline,
# param_grid,
# cv=kf,
# scoring='neg_mean_squared_error', # 最小化MSE
# n_jobs=-1, # 使用所有CPU核心
# verbose=2 # 打印进度
# )
# # 训练模型
# print("开始网格搜索优化...")
# grid_search.fit(train_x, train_y)
# print("\n最佳参数组合:", grid_search.best_params_)
# # 使用最佳模型进行预测
# best_model = grid_search.best_estimator_
# # 保存模型
# dump(best_model, './model/SSA_XGB.joblib')
# pred_y = best_model.predict(valid_x)
# # 验证
# acc = evaluate_model_accuracy(pred_y,valid_y)
# print(acc)
# # 画图保存
# draw_picture(valid_y,pred_y,acc,'./pic/ssa','XGB')
# # 加载模型
# loaded_pipeline = load('./model/SSA_XGB.joblib')
# # 使用模型预测
# pred_y = loaded_pipeline.predict(valid_x)
# print(pred_y)
"""GBDT"""
pipeline = Pipeline([ pipeline = Pipeline([
('scaler', StandardScaler()), # 可选 ('scaler', StandardScaler()), # 可替换为MinMaxScaler()
('xgb', xgb.XGBRegressor(objective='reg:squarederror', ('gbdt', GradientBoostingRegressor(random_state=42))
random_state=42, ])
n_jobs=-1))
])
# 定义超参数网格
param_grid = { param_grid = {
'xgb__n_estimators': np.arange(1,150), # 树的数量 'gbdt__n_estimators': [20, 30, 40, 50, 60, 70, 80,100], # 树的数量
# 'xgb__max_depth': [3, 4, 5], # 树的最大深度 'gbdt__learning_rate': [0.01, 0.1, 0.2], # 学习率
# 'xgb__learning_rate': [0.01, 0.05, 0.1], # 学习率 'gbdt__max_depth': [3, 5, 7], # 树的最大深度
# 'xgb__subsample': [0.6, 0.8, 1.0], # 样本采样比例 'gbdt__min_samples_split': [2, 5], # 分裂所需最小样本数
# 'xgb__colsample_bytree': [0.6, 0.8, 1.0], # 特征采样比例 'gbdt__min_samples_leaf': [1, 2,3,4,5], # 叶节点最小样本数
# 'xgb__gamma': [0, 0.1, 0.2], # 最小分裂损失 'gbdt__max_features': ['sqrt', 'log2'], # 特征选择方式
# 'xgb__reg_alpha': [0, 0.1, 1], # L1正则化
# 'xgb__reg_lambda': [0.1, 1, 10] # L2正则化
} }
# 设置K折交叉验证和网格搜索
# 设置5折交叉验证
kf = KFold(n_splits=5, shuffle=True, random_state=42) kf = KFold(n_splits=5, shuffle=True, random_state=42)
grid_search = GridSearchCV(pipeline, param_grid, cv=kf, scoring='neg_mean_squared_error',
# 网格搜索(优化超参数) n_jobs=-1, verbose=2)
grid_search = GridSearchCV(
pipeline,
param_grid,
cv=kf,
scoring='neg_mean_squared_error', # 最小化MSE
n_jobs=-1, # 使用所有CPU核心
verbose=2 # 打印进度
)
# 训练模型 # 训练模型
print("开始网格搜索优化...") print("开始网格搜索...")
grid_search.fit(train_x, train_y) grid_search.fit(train_x, train_y)
print("\n最佳参数组合:", grid_search.best_params_) print("\n最佳参数组合:", grid_search.best_params_)
# 使用最佳模型进行预测 #使用最佳模型进行预测
best_model = grid_search.best_estimator_ best_model = grid_search.best_estimator_
# 保存模型 dump(best_model, './model/SSA_GDBT.joblib')
dump(best_model, './model/SSA_XGB.joblib')
pred_y = best_model.predict(valid_x) pred_y = best_model.predict(valid_x)
# 验证
acc = evaluate_model_accuracy(pred_y,valid_y) acc = evaluate_model_accuracy(pred_y,valid_y)
print(pred_y)
print("\n")
print(acc) print(acc)
# 画图保存 draw_picture(valid_y,pred_y,acc,'./pic/SSA','GDBT')
draw_picture(valid_y,pred_y,acc,'./pic/ssa','XGB') loaded_pipeline = load('./model/SSA_GDBT.joblib')
# 加载模型
loaded_pipeline = load('./model/SSA_XGB.joblib')
# 使用模型预测
pred_y = loaded_pipeline.predict(valid_x) pred_y = loaded_pipeline.predict(valid_x)
print(pred_y) print(pred_y)

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

692
run.py
View File

@ -1,13 +1,14 @@
import sys import sys
from fastapi import FastAPI,File, UploadFile,Form from fastapi import FastAPI,File, UploadFile,Form,Query
from fastapi.staticfiles import StaticFiles from fastapi.staticfiles import StaticFiles
from fastapi import FastAPI, HTTPException
from fastapi.responses import FileResponse
import sys import sys
import os import os
import shutil import shutil
from pydantic import BaseModel, validator from pydantic import BaseModel, validator
from typing import List from typing import List
from fastapi import FastAPI, HTTPException
import asyncio import asyncio
import pandas as pd import pandas as pd
import numpy as np import numpy as np
@ -29,11 +30,52 @@ from work_util.logger import logger
import joblib import joblib
import mysql.connector import mysql.connector
import uuid import uuid
import json
import zipfile
from pathlib import Path
version = f"{sys.version_info.major}.{sys.version_info.minor}" version = f"{sys.version_info.major}.{sys.version_info.minor}"
app = FastAPI() app = FastAPI()
param = params.ModelParams()
def get_roof_model():
model_roof = roof_resUnetpamcarb()
model_path_roof = os.path.join(current_dir,'wudingpv/models/roof_best.pth')
model_dict_roof = torch.load(model_path_roof, map_location=torch.device('cpu'))
model_roof.load_state_dict(model_dict_roof['net'])
logger.info("屋顶识别权重加载成功")
model_roof.eval()
model_roof.cuda()
return model_roof
def get_pv_model():
model_roof = roof_resUnetpamcarb()
model_path_roof = os.path.join(current_dir,'wudingpv/models/pv_best.pth')
model_dict_roof = torch.load(model_path_roof, map_location=torch.device('cpu'))
model_roof.load_state_dict(model_dict_roof['net'])
logger.info("屋顶识别权重加载成功")
model_roof.eval()
model_roof.cuda()
return model_roof
# 模型实例
dimaoshibie_SegFormer = segformer.SegFormer_Segmentation()
# 模型实例
dimaoshibie_SegFormer = segformer.SegFormer_Segmentation()
roof_model = get_roof_model()
pv_model = get_pv_model()
ch4_model_flow = joblib.load(os.path.join(current_dir,'jiawanyuce/liuliang_model/xgb_model_liuliang.pkl'))
ch4_model_gas = joblib.load(os.path.join(current_dir,'jiawanyuce/qixiangnongdu_model/xgb_model_qixiangnongdu.pkl'))
pvfd_param = guangfufadian_model_base.guangfufadian_Args()
pvfd_model_path = os.path.join(pvfd_param.checkpoints,'Crossformer_station08_il192_ol96_sl6_win2_fa10_dm256_nh4_el3_itr0/checkpoint.pth') # 修改为实际模型路径
pvfd_model = guangfufadian_model_base.ModelInference(pvfd_model_path, pvfd_param)
windfd_args = fenglifadian_model_base.fenglifadian_Args()
windfd_model_path = os.path.join(windfd_args.checkpoints,'Crossformer_Wind_farm_il192_ol12_sl6_win2_fa10_dm256_nh4_el3_itr0/checkpoint.pth') # 修改为实际模型路径
windfd_model = fenglifadian_model_base.ModelInference(windfd_model_path, windfd_args)
# 将 /root/app 目录挂载为静态文件 # 将 /root/app 目录挂载为静态文件
app.mount("/files", StaticFiles(directory="/root/app"), name="files") app.mount("/files", StaticFiles(directory="/root/app"), name="files")
@ -46,7 +88,7 @@ async def read_root():
# 获取数据界面资源信息 # 获取数据界面资源信息
@app.get("/api/data_source/show") @app.get("/ai-station-api/data_source/show")
async def get_data_source_info(): async def get_data_source_info():
sql = "SELECT id,application_name, task_type, sample_name, img_url, time, download_url FROM data_samples" sql = "SELECT id,application_name, task_type, sample_name, img_url, time, download_url FROM data_samples"
data = data_util.fetch_data(sql) data = data_util.fetch_data(sql)
@ -64,7 +106,7 @@ async def get_data_source_info():
# 获取应用界面资源信息 # 获取应用界面资源信息
@app.get("/api/app_source/show") @app.get("/ai-station-api/app_source/show")
async def get_app_source_info(): async def get_app_source_info():
sql = "SELECT id,application_name, task_type, sample_name, img_url, time FROM app_samples" sql = "SELECT id,application_name, task_type, sample_name, img_url, time FROM app_samples"
data = data_util.fetch_data(sql) data = data_util.fetch_data(sql)
@ -83,7 +125,7 @@ async def get_app_source_info():
# 获取煤基碳材料界面资源信息 # 获取煤基碳材料界面资源信息
@app.get("/api/mjtcl_source/show") @app.get("/ai-station-api/mjtcl_source/show")
async def get_mjtcl_source_info(): async def get_mjtcl_source_info():
sql = "SELECT id,application_name, task_type, sample_name, img_url, time FROM meijitancailiao_samples" sql = "SELECT id,application_name, task_type, sample_name, img_url, time FROM meijitancailiao_samples"
data = data_util.fetch_data(sql) data = data_util.fetch_data(sql)
@ -101,7 +143,7 @@ async def get_mjtcl_source_info():
# 获取煤热解界面资源信息 # 获取煤热解界面资源信息
@app.get("/api/mrj_source/show") @app.get("/ai-station-api/mrj_source/show")
async def get_mrj_source_info(): async def get_mrj_source_info():
sql = "SELECT id,application_name, task_type, sample_name, img_url, time FROM meirejie_samples" sql = "SELECT id,application_name, task_type, sample_name, img_url, time FROM meirejie_samples"
data = data_util.fetch_data(sql) data = data_util.fetch_data(sql)
@ -121,12 +163,12 @@ async def get_mrj_source_info():
"""煤基碳材料输入特征说明接口列表 """煤基碳材料输入特征说明接口列表
type = {zongkongtiji,zongbiaomianji,tancailiao,meiliqing,moniqi} type = {zongkongtiji,zongbiaomianji,tancailiao,meiliqing,moniqi}
""" """
@app.get("/api/mjt_feature/show") @app.get("/ai-station-api/mjt_feature/show")
async def get_mjt_feature_info(type:str = None): async def get_mjt_feature_info(type:str = None):
# if type in ["tancailiao","meiliqing"]: # if type in ["tancailiao","meiliqing"]:
# sql = "SELECT type, chinese_name, col_name, data_type, unit FROM meijitancailiao_features where use_type = %s;" # sql = "SELECT type, chinese_name, col_name, data_type, unit FROM meijitancailiao_features where use_type = %s;"
# else: # else:
sql = "SELECT type, chinese_name, col_name, data_type, unit, data_scale FROM meijitancailiao_features where use_type = %s;" sql = "SELECT type, chinese_name, col_name, data_type, unit, data_scale,best_data FROM meijitancailiao_features where use_type = %s;"
data = data_util.fetch_data_with_param(sql,(type,)) data = data_util.fetch_data_with_param(sql,(type,))
if data is None: if data is None:
return { return {
@ -144,7 +186,7 @@ async def get_mjt_feature_info(type:str = None):
"""煤热解材料输入特征说明接口列表 """煤热解材料输入特征说明接口列表
type = {tar,char,gas,water} type = {tar,char,gas,water}
""" """
@app.get("/api/mrj_feature/show") @app.get("/ai-station-api/mrj_feature/show")
async def get_mrj_feature_info(type:str = None): async def get_mrj_feature_info(type:str = None):
sql = "SELECT type, chinese_name, col_name, data_type, unit, data_scale FROM meirejie_features where use_type = %s;" sql = "SELECT type, chinese_name, col_name, data_type, unit, data_scale FROM meirejie_features where use_type = %s;"
data = data_util.fetch_data_with_param(sql,(type,)) data = data_util.fetch_data_with_param(sql,(type,))
@ -160,7 +202,7 @@ async def get_mrj_feature_info(type:str = None):
"data":data} "data":data}
#========================================煤基碳材料 ================================== #========================================煤基碳材料 ==================================
@app.post("/api/mjt/predict") @app.post("/ai-station-api/mjt/predict")
async def mjt_models_predict(content: post_model.Zongbiaomianji): async def mjt_models_predict(content: post_model.Zongbiaomianji):
# 处理接收到的字典数据 # 处理接收到的字典数据
meijiegou_test_content = pd.DataFrame([content.model_dump()]) meijiegou_test_content = pd.DataFrame([content.model_dump()])
@ -185,7 +227,7 @@ async def mjt_models_predict(content: post_model.Zongbiaomianji):
""" """
模型综合分析 模型综合分析
""" """
@app.post("/api/mjt_models_ssa/predict") @app.post("/ai-station-api/mjt_models_ssa/predict")
async def mjt_models_predict_ssa(content: post_model.Zongbiaomianji): async def mjt_models_predict_ssa(content: post_model.Zongbiaomianji):
# 处理接收到的字典数据 # 处理接收到的字典数据
meijiegou_test_content = pd.DataFrame([content.model_dump()]) meijiegou_test_content = pd.DataFrame([content.model_dump()])
@ -209,7 +251,7 @@ async def mjt_models_predict_ssa(content: post_model.Zongbiaomianji):
""" """
上传文件 上传文件
""" """
@app.post("/api/document/upload") @app.post("/ai-station-api/document/upload")
async def upload_file(file: UploadFile = File(...),type: str = Form(...), ): async def upload_file(file: UploadFile = File(...),type: str = Form(...), ):
if not file.filename.endswith('.csv'): if not file.filename.endswith('.csv'):
raise HTTPException(status_code=400, detail="文件类型有误,必须是 CSV 文件") raise HTTPException(status_code=400, detail="文件类型有误,必须是 CSV 文件")
@ -228,7 +270,7 @@ async def upload_file(file: UploadFile = File(...),type: str = Form(...), ):
""" """
批量预测接口 批量预测接口
""" """
@app.get("/api/mjt_multi_ssa/predict") @app.get("/ai-station-api/mjt_multi_ssa/predict")
async def mjt_multi_ssa_pred(model:str = None, path:str = None): async def mjt_multi_ssa_pred(model:str = None, path:str = None):
data = model_deal.get_excel_ssa(model, path) data = model_deal.get_excel_ssa(model, path)
return {"success":True, return {"success":True,
@ -241,7 +283,7 @@ async def mjt_multi_ssa_pred(model:str = None, path:str = None):
""" """
模型综合分析 模型综合分析
""" """
@app.post("/api/mjt_models_tpv/predict") @app.post("/ai-station-api/mjt_models_tpv/predict")
async def mjt_models_predict_tpv(content: post_model.Zongbiaomianji): async def mjt_models_predict_tpv(content: post_model.Zongbiaomianji):
# 处理接收到的字典数据 # 处理接收到的字典数据
meijiegou_test_content = pd.DataFrame([content.model_dump()]) meijiegou_test_content = pd.DataFrame([content.model_dump()])
@ -263,7 +305,7 @@ async def mjt_models_predict_tpv(content: post_model.Zongbiaomianji):
""" """
批量预测接口 批量预测接口
""" """
@app.get("/api/mjt_multi_tpv/predict") @app.get("/ai-station-api/mjt_multi_tpv/predict")
async def mjt_multi_tpv_pred(model:str = None, path:str = None): async def mjt_multi_tpv_pred(model:str = None, path:str = None):
data = model_deal.get_excel_tpv(model, path) data = model_deal.get_excel_tpv(model, path)
return {"success":True, return {"success":True,
@ -271,7 +313,7 @@ async def mjt_multi_tpv_pred(model:str = None, path:str = None):
"data":data} "data":data}
#==========================煤基碳材料-煤炭材料应用细节接口================================== #==========================煤基碳材料-煤炭材料应用细节接口==================================
@app.post("/api/mjt_models_meitan/predict") @app.post("/ai-station-api/mjt_models_meitan/predict")
async def mjt_models_predict_meitan(content: post_model.Meitan): async def mjt_models_predict_meitan(content: post_model.Meitan):
# 处理接收到的字典数据 # 处理接收到的字典数据
meijiegou_test_content = pd.DataFrame([content.model_dump()]) meijiegou_test_content = pd.DataFrame([content.model_dump()])
@ -294,7 +336,7 @@ async def mjt_models_predict_meitan(content: post_model.Meitan):
""" """
批量预测接口 批量预测接口
""" """
@app.get("/api/mjt_multi_meitan/predict") @app.get("/ai-station-api/mjt_multi_meitan/predict")
async def mjt_multi_meitan_pred(model:str = None, path:str = None): async def mjt_multi_meitan_pred(model:str = None, path:str = None):
data = model_deal.get_excel_meitan(model, path) data = model_deal.get_excel_meitan(model, path)
return {"success":True, return {"success":True,
@ -303,7 +345,7 @@ async def mjt_multi_meitan_pred(model:str = None, path:str = None):
#==========================煤基碳材料-煤沥青应用细节接口================================== #==========================煤基碳材料-煤沥青应用细节接口==================================
@app.post("/api/mjt_models_meiliqing/predict") @app.post("/ai-station-api/mjt_models_meiliqing/predict")
async def mjt_models_predict_meiliqing(content: post_model.Meitan): async def mjt_models_predict_meiliqing(content: post_model.Meitan):
# 处理接收到的字典数据 # 处理接收到的字典数据
meijiegou_test_content = pd.DataFrame([content.model_dump()]) meijiegou_test_content = pd.DataFrame([content.model_dump()])
@ -326,7 +368,7 @@ async def mjt_models_predict_meiliqing(content: post_model.Meitan):
""" """
批量预测接口 批量预测接口
""" """
@app.get("/api/mjt_multi_meiliqing/predict") @app.get("/ai-station-api/mjt_multi_meiliqing/predict")
async def mjt_multi_meiliqing_pred(model:str = None, path:str = None): async def mjt_multi_meiliqing_pred(model:str = None, path:str = None):
data = model_deal.get_excel_meiliqing(model, path) data = model_deal.get_excel_meiliqing(model, path)
return {"success":True, return {"success":True,
@ -337,7 +379,8 @@ async def mjt_multi_meiliqing_pred(model:str = None, path:str = None):
#=============================煤基炭材料-制备模拟器================================================ #=============================煤基炭材料-制备模拟器================================================
@app.post("/api/mnq_model/analysis") # 正向模拟器
@app.post("/ai-station-api/mnq_model/analysis")
async def mnq_model_predict(return_count: int, # 返回条数 async def mnq_model_predict(return_count: int, # 返回条数
model_choice: str, # 模型选择标记 model_choice: str, # 模型选择标记
form_data: post_model.FormData # 表单数据 form_data: post_model.FormData # 表单数据
@ -347,21 +390,622 @@ async def mnq_model_predict(return_count: int, # 返回条数
pred_data = prepare_data.create_pred_data(params) pred_data = prepare_data.create_pred_data(params)
result = model_deal.pred_func(model_choice,pred_data) result = model_deal.pred_func(model_choice,pred_data)
sorted_result = result.sort_values(by=['SSA', 'TPV'], ascending=[False, False]) sorted_result = result.sort_values(by=['SSA', 'TPV'], ascending=[False, False])
upload_dir = os.path.join(current_dir,'tmp','moniqi', str(uuid.uuid4()))
if not os.path.exists(upload_dir):
os.makedirs(upload_dir )
# 将文件保存到指定目录
file_name = model_choice + "_moniqi.csv"
file_location = os.path.join(upload_dir , file_name)
sorted_result.to_csv(file_location, index = False)
# 保留条数 # 保留条数
if return_count is None: if return_count is None:
return {"success":True, return {"success":True,
"msg":"获取信息成功", "msg":"获取信息成功",
"data":{"result": sorted_result.to_json(orient='index')}} "data":{"result": sorted_result.to_dict(orient='records'), "path":file_location}}
else:
data = sorted_result.iloc[:return_count]
# logger.info(data.to_dict(orient="records"))
return {"success":True,
"msg":"获取信息成功",
"data":{"result":data.to_dict(orient="records"), "path":file_location}
}
# 反向模拟器
@app.get("/ai-station-api/mnq_model/reverse_analysis")
async def mjt_multi_meiliqing_pred(model:str = None, path:str = None, type:int = 1, scale:float=None, num:int=5):
result = prepare_data.moniqi_data_prepare(model,path,type,scale,num)
if result['status'] == False:
return {
"success":False,
"msg":result['reason'],
"data":None
}
else:
return {
"success":True,
"msg":"获取信息成功",
"data":{"data": result['reason']}
}
#================================ 地貌识别 ====================================================
"""
上传图片 , type = dimaoshibie
"""
@app.post("/ai-station-api/image/upload")
async def upload_image(file: UploadFile = File(...),type: str = Form(...), ):
if not data_util.allowed_file(file.filename):
return {
"success":False,
"msg":"图片必须以 '.jpg', '.jpeg', '.png', '.tif' 结尾",
"data":None
}
if file.size > param.MAX_FILE_SIZE:
return {
"success":False,
"msg":"图片大小不能大于100MB",
"data":None
}
upload_dir = os.path.join(current_dir,'tmp',type, str(uuid.uuid4()))
if not os.path.exists(upload_dir):
os.makedirs(upload_dir )
# 将文件保存到指定目录
file_location = os.path.join(upload_dir , file.filename)
with open(file_location, "wb") as buffer:
shutil.copyfileobj(file.file, buffer)
file_location = model_deal.get_pic_url(file_location)
return {"success":True,
"msg":"获取信息成功",
"data":{"location": file_location}}
"""
图片地貌识别
"""
@app.get("/ai-station-api/dmsb_image/analysis")
async def dmsb_image_analysis(path:str = None):
path = model_deal.get_pic_path(path)
result = model_deal.dimaoshibie_pic(dimaoshibie_SegFormer,path,param.dmsb_count,param.dmsb_name_classes)
if result['status'] == False:
return {"success":False,
"msg":result['reason'],
"data":None}
else:
path = result['reason']
path= model_deal.get_pic_url(path[0]) # 是一个列表
return {"success":True,
"msg":"获取信息成功",
"data":{"result": path}}
"""
图片地貌 - 分割结果计算 ,图片demo的是z17
"""
@app.get("/ai-station-api/dmsb_image/calculate")
async def dmsb_image_calculate(path:str = None, scale:float = 1.92*1.92):
path = model_deal.get_pic_path(path)
result = model_deal.dimaoshibie_area(path,scale,param.dmsb_colors)
logger.info(result)
if result['status'] == True:
res = result['reason']
translated_dict = {param.dmsb_type[key]: value for key, value in res.items()}
# json_data = json.dumps(translated_dict)
return {"success":True,
"msg":"获取信息成功",
"data":{"result": translated_dict}}
else:
return {"success":False,
"msg":result['reason'],
"data":None}
"""
下载
"""
@app.get("/ai-station-api/download")
async def download_zip(path:str = None):
path = model_deal.get_pic_path(path)
zip_filename = "download.zip"
zip_filepath = Path(zip_filename)
dir_path = os.path.dirname(path)
# 创建 ZIP 文件
try:
with zipfile.ZipFile(zip_filepath, 'w') as zip_file:
# 遍历文件夹中的所有文件
for foldername, subfolders, filenames in os.walk(dir_path):
for filename in filenames:
file_path = os.path.join(foldername, filename)
# 将文件写入 ZIP 文件
zip_file.write(file_path, os.path.relpath(file_path, dir_path))
except Exception as e:
raise HTTPException(status_code=500, detail=f"Error creating zip file: {str(e)}")
# 返回 ZIP 文件作为响应
return FileResponse(zip_filepath, media_type='application/zip', filename=zip_filename)
#============================屋顶识别======================================
"""
上传图片 type = roof
"""
"""
图片分析
"""
@app.get("/ai-station-api/roof_image/analysis")
async def roof_image_analysis(path:str = None):
path = model_deal.get_pic_path(path)
result = model_deal.roof_pic(roof_model,path,param.wdpv_palette)
if result['status'] == False:
return {"success":False,
"msg":result['reason'],
"data":None}
else:
path = result['reason']
path= model_deal.get_pic_url(path[0])
return {"success":True,
"msg":"获取信息成功",
"data":{"result": path}}
"""
屋顶面积 - 分割结果计算 ,图片demo的是z18
"""
@app.get("/ai-station-api/roof_image/calculate")
async def roof_image_calculate(path:str = None, scale:float = 0.92*0.92):
path = model_deal.get_pic_path(path)
result = model_deal.roof_area(path,scale,param.wdpv_colors)
logger.info(result)
if result['status'] == True:
res = result['reason']
translated_dict = {param.wd_type[key]: value for key, value in res.items()}
del translated_dict['其他']
return {"success":True,
"msg":"获取信息成功",
"data":{"result": translated_dict}}
else:
return {"success":False,
"msg":result['reason'],
"data":None}
#============================光伏识别======================================
"""
上传图片 type = pv
"""
"""
图片分析
"""
@app.get("/ai-station-api/pv_image/analysis")
async def pv_image_analysis(path:str = None):
path = model_deal.get_pic_path(path)
result = model_deal.roof_pic(pv_model,path,param.wdpv_palette)
if result['status'] == False:
return {"success":False,
"msg":result['reason'],
"data":None}
else:
path = result['reason']
path= model_deal.get_pic_url(path[0])
return {"success":True,
"msg":"获取信息成功",
"data":{"result": path}}
"""
光伏面积 - 分割结果计算 ,图片demo的是z18
"""
@app.get("/ai-station-api/pv_image/calculate")
async def pv_image_calculate(path:str = None, scale:float = 0.92*0.92):
path = model_deal.get_pic_path(path)
result = model_deal.roof_area(path,scale,param.wdpv_colors)
logger.info(result)
if result['status'] == True:
res = result['reason']
translated_dict = {param.pv_type[key]: value for key, value in res.items()}
del translated_dict['其他']
return {"success":True,
"msg":"获取信息成功",
"data":{"result": translated_dict}}
else:
return {"success":False,
"msg":result['reason'],
"data":None}
#============================屋顶光伏识别======================================
"""
上传图片 type = roofpv
"""
"""
图片分析
"""
@app.get("/ai-station-api/roofpv_image/analysis")
async def roofpv_image_analysis(path:str = None):
path = model_deal.get_pic_path(path)
result = model_deal.roofpv_pic(roof_model,pv_model,path,param.wdpv_palette)
if result['status'] == False:
return {"success":False,
"msg":result['reason'],
"data":None}
else:
file_list = result['reason']
final_path = prepare_data.merge_binary(file_list)
final_path = model_deal.get_pic_url(final_path)
return {"success":True,
"msg":"获取信息成功",
"data":{"result": final_path}}
"""
光伏面积 - 分割结果计算 ,图片demo的是z18
"""
@app.get("/ai-station-api/roofpv_image/calculate")
async def roofpv_image_calculate(path:str = None, scale:float = 0.92*0.92):
path = model_deal.get_pic_path(path)
result = model_deal.roof_area_roofpv(path,scale,param.wdpv_colors)
logger.info(result)
if result['status'] == True:
res = result['reason']
translated_dict = {param.wdpv_type[key]: value for key, value in res.items()}
del translated_dict['其他']
return {"success":True,
"msg":"获取信息成功",
"data":{"result": translated_dict}}
else:
return {"success":False,
"msg":result['reason'],
"data":None}
# ====================================时序预测类============================================
# ====================================甲烷预测==============================================
"""
返回显示列表
"""
@app.get("/ai-station-api/ch4_features/show")
async def get_ch4_features_info():
sql = "SELECT chinese_name, col_name,type,data_type,unit,data_sample FROM ch4_features;"
data = data_util.fetch_data(sql)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else: else:
return {"success":True, return {"success":True,
"msg":"获取信息成功", "msg":"获取信息成功",
"data":{"result": sorted_result.head(return_count).to_json(orient='index')}} "data":data}
#===================================================================================================
@app.get("/ai-station-api/ch4_pic_table/show")
async def get_ch4_pic_table_info():
sql = "SELECT chinese_name, col_name FROM ch4_features where col_name != 'date_time';"
data = data_util.fetch_data(sql)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data}
# @app.post("/api/items/") """
针对列表返回数据供画图
"""
@app.get("/ai-station-api/ch4_feature_pic/select")
async def get_ch4_feature_pic_select(type:str = None, path:str =None):
if type == 'date_time':
return {
"success":False,
"msg":"时间列无法展示,请重新选择",
"data":None
}
data = prepare_data.show_data_jiawanyuce(type,path)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data}
"""
上传数据分页展示
"""
@app.get("/ai-station-api/ch4_data/show")
async def get_ch4_data(path:str = None, page: int = Query(1, ge=1), page_size: int = Query(10, ge=1)):
data = prepare_data.get_jiawanyuce_data(path)
total_items = len(data) # 获取总条数
total_pages = (total_items + page_size - 1) // page_size # 计算总页数
# 检查请求的页码是否超出范围
if page > total_pages:
raise HTTPException(status_code=404, detail="Page not found")
# 计算起始和结束索引
start_idx = (page - 1) * page_size
end_idx = start_idx + page_size
# 获取当前页的数据
items = data.iloc[start_idx:end_idx].to_dict(orient="records")
# 返回数据,包括总条数、总页数和当前页的数据
return {
"success":True,
"msg":"获取信息成功",
"data":{
"total_items": total_items,
"total_pages": total_pages,
"current_page": page,
"page_size": page_size,
"items": items
}
}
"""
csv上传
"""
# @app.post("/ai-station-api/document/upload") type = "ch4"
"""
预测, type
"""
@app.get("/ai-station-api/ch4_data/predict")
async def get_ch4_predict(path:str=None,start_time:str=None, end_time:str = None,type:int=1,is_show:bool=True):
data = model_deal.start_predict_endpoint(ch4_model_flow,ch4_model_gas,path,start_time,end_time,type,is_show)
if data['status'] ==False:
return {
"success":False,
"msg":data['reason'],
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data['reason']}
#========================================光伏预测==========================================================
"""
返回显示列表
"""
@app.get("/ai-station-api/pvelectric_features/show")
async def get_pvelectric_features_info():
sql = "SELECT chinese_name, col_name,type,data_type,unit,data_sample FROM pv_electric_features;"
data = data_util.fetch_data(sql)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data}
@app.get("/ai-station-api/pvelectric_pic_table/show")
async def get_pvelectric_pic_table_info():
sql = "SELECT chinese_name, col_name FROM pv_electric_features where col_name != 'date_time';"
data = data_util.fetch_data(sql)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data}
"""
针对列表返回数据供画图
"""
@app.get("/ai-station-api/pvelectric_feature_pic/select")
async def get_pvelectric_feature_pic_select(type:str = None, path:str =None):
if type == 'date_time':
return {
"success":False,
"msg":"时间列无法展示,请重新选择",
"data":None
}
data = prepare_data.show_data_pvfd(path,type)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data}
"""
上传数据分页展示
"""
@app.get("/ai-station-api/pvelectric_data/show")
async def get_pvelectric_data(path:str = None, page: int = Query(1, ge=1), page_size: int = Query(10, ge=1)):
data = prepare_data.show_testdata_pvfd(path)
total_items = len(data) # 获取总条数
total_pages = (total_items + page_size - 1) // page_size # 计算总页数
# 检查请求的页码是否超出范围
if page > total_pages:
raise HTTPException(status_code=404, detail="Page not found")
# 计算起始和结束索引
start_idx = (page - 1) * page_size
end_idx = start_idx + page_size
# 获取当前页的数据
items = data.iloc[start_idx:end_idx].to_dict(orient="records")
# 返回数据,包括总条数、总页数和当前页的数据
return {
"success":True,
"msg":"获取信息成功",
"data":{
"total_items": total_items,
"total_pages": total_pages,
"current_page": page,
"page_size": page_size,
"items": items
}
}
"""
csv上传
"""
# @app.post("/ai-station-api/document/upload") type = "pvelectric"
"""
预测, type
"""
@app.get("/ai-station-api/pvelectric_data/predict")
async def get_pvelectri_predict(path:str=None,start_time:str=None, end_time:str = None,is_show:bool=True):
data = model_deal.start_pvelectric_predict_endpoint(pvfd_model,path,start_time,end_time,is_show)
if data['status'] ==False:
return {
"success":False,
"msg":data['reason'],
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data['reason']}
#========================================风力发电预测==========================================================
"""
返回显示列表
"""
@app.get("/ai-station-api/wind_electric_features/show")
async def get_wind_electric_features_info():
sql = "SELECT chinese_name, col_name,type,data_type,unit,data_sample FROM wind_electric_features;"
data = data_util.fetch_data(sql)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data}
@app.get("/ai-station-api/wind_electric_pic_table/show")
async def get_wind_electric_pic_table_info():
sql = "SELECT chinese_name, col_name FROM wind_electric_features where col_name != 'date';"
data = data_util.fetch_data(sql)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data}
"""
针对列表返回数据供画图
"""
@app.get("/ai-station-api/wind_electric_feature_pic/select")
async def get_wind_electric_feature_pic_select(type:str = None, path:str =None):
if type == 'date':
return {
"success":False,
"msg":"时间列无法展示,请重新选择",
"data":None
}
data = prepare_data.show_data_windfd(path,type)
if data is None:
return {
"success":False,
"msg":"获取信息列表失败",
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data}
"""
上传数据分页展示
"""
@app.get("/ai-station-api/wind_electric_data/show")
async def get_wind_electric_data(path:str = None, page: int = Query(1, ge=1), page_size: int = Query(10, ge=1)):
data = prepare_data.show_testdata_windfd(path)
total_items = len(data) # 获取总条数
total_pages = (total_items + page_size - 1) // page_size # 计算总页数
# 检查请求的页码是否超出范围
if page > total_pages:
raise HTTPException(status_code=404, detail="Page not found")
# 计算起始和结束索引
start_idx = (page - 1) * page_size
end_idx = start_idx + page_size
# 获取当前页的数据
items = data.iloc[start_idx:end_idx].to_dict(orient="records")
# 返回数据,包括总条数、总页数和当前页的数据
return {
"success":True,
"msg":"获取信息成功",
"data":{
"total_items": total_items,
"total_pages": total_pages,
"current_page": page,
"page_size": page_size,
"items": items
}
}
"""
csv上传
"""
# @app.post("/ai-station-api/document/upload") type = "wind_electric"
"""
预测, type
"""
@app.get("/ai-station-api/wind_electric_data/predict")
async def get_wind_electri_predict(path:str=None,start_time:str=None, end_time:str = None,is_show:bool=True):
data = model_deal.start_wind_electric_predict_endpoint(windfd_model,path,start_time,end_time,is_show)
if data['status'] ==False:
return {
"success":False,
"msg":data['reason'],
"data":None
}
else:
return {"success":True,
"msg":"获取信息成功",
"data":data['reason']}
# @app.post("/ai-station-api/items/")
# async def create_item(item: post_model.Zongbiaomianji): # async def create_item(item: post_model.Zongbiaomianji):
# try: # try:
# data = { # data = {

Some files were not shown because too many files have changed in this diff Show More