20250314修改:增加dingdanliu_nb_mflow
This commit is contained in:
61
999.账户相关/simnow_trader/traderdata/0312/IM2503_ofdata.csv
Normal file
61
999.账户相关/simnow_trader/traderdata/0312/IM2503_ofdata.csv
Normal file
@@ -0,0 +1,61 @@
|
||||
price,Ask,Bid,symbol,datetime,delta,close,open,high,low,volume,dj
|
||||
"['6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.2', '6526.4', '6526.6', '6526.8', '6527.0', '6527.2', '6527.4', '6527.6', '6527.8']","[0, 0, 0, 0, 0, 0, 1, 9, 9, 14, 42, 49, 15, 4, 4, 42, 7, 14, 27, 22, 9, 8, 18, 3, 24, 11, 21, 18, 5, 5]","[12, 17, 5, 18, 40, 22, 10, 22, 0, 0, 47, 87, 0, 27, 22, 18, 19, 13, 55, 42, 6, 7, 13, 4, 0, 8, 0, 13, 0, 0]",IM2503,2025-03-12 13:02:00,-146,6525.6,6525.8,6527.8,6522.0,1112,-4
|
||||
"['6517.8', '6518.0', '6518.2', '6518.4', '6518.6', '6518.8', '6519.0', '6519.2', '6519.4', '6519.8', '6520.0', '6520.2', '6520.4', '6520.6', '6520.8', '6521.0', '6521.2', '6521.4', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.2', '6526.4', '6526.6']","[0, 3, 20, 10, 0, 7, 6, 7, 2, 9, 2, 0, 11, 16, 6, 15, 4, 13, 1, 21, 18, 4, 21, 21, 10, 9, 0, 9, 11, 10, 0, 0, 3, 0, 2, 13, 4, 2, 18, 13, 15, 5, 0]","[9, 31, 18, 0, 29, 12, 7, 4, 0, 4, 19, 22, 9, 19, 12, 30, 8, 4, 31, 31, 20, 3, 0, 15, 12, 9, 1, 6, 2, 10, 15, 7, 1, 2, 1, 11, 6, 3, 2, 0, 6, 0, 3]",IM2503,2025-03-12 13:04:00,-93,6520.0,6525.6,6526.6,6517.6,957,1,
|
||||
"['6516.0', '6516.2', '6516.4', '6516.6', '6516.8', '6517.2', '6517.4', '6517.6', '6517.8', '6518.0', '6518.2', '6518.4', '6518.6', '6518.8', '6519.0', '6519.2', '6519.4', '6519.6', '6519.8', '6520.0', '6520.4', '6521.0', '6521.2', '6521.4', '6521.6', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6']","[0, 0, 0, 13, 1, 11, 0, 16, 7, 40, 4, 11, 5, 29, 0, 5, 0, 1, 7, 5, 0, 5, 0, 0, 0, 5, 8, 5, 2, 6]","[4, 12, 5, 14, 5, 31, 1, 33, 16, 30, 10, 23, 4, 9, 7, 6, 18, 0, 0, 0, 1, 7, 2, 3, 5, 10, 2, 0, 6, 2]",IM2503,2025-03-12 13:06:00,-80,6518.2,6520.0,6522.6,6516.0,539,-1,
|
||||
"['6515.6', '6515.8', '6516.0', '6516.2', '6516.4', '6516.6', '6516.8', '6517.0', '6517.2', '6517.4', '6517.6', '6517.8', '6518.0', '6518.2', '6518.4', '6518.6', '6518.8', '6519.0', '6519.2', '6519.4', '6520.0', '6520.2', '6520.4', '6520.8', '6521.0', '6521.2', '6521.4', '6521.6', '6521.8', '6522.0', '6522.2', '6522.4']","[0, 0, 6, 4, 21, 6, 3, 4, 2, 0, 0, 0, 13, 5, 15, 5, 9, 27, 2, 24, 36, 2, 0, 14, 8, 5, 1, 9, 10, 2, 3, 3]","[3, 16, 30, 11, 6, 3, 1, 11, 5, 3, 6, 3, 6, 0, 14, 5, 4, 0, 0, 6, 0, 2, 2, 0, 1, 0, 19, 0, 6, 0, 0, 0]",IM2503,2025-03-12 13:08:00,76,6521.4,6518.0,6522.4,6515.6,465,3,
|
||||
"['6521.2', '6521.4', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.2', '6526.4', '6526.6', '6527.0']","[0, 2, 0, 2, 2, 4, 1, 16, 2, 4, 0, 11, 14, 9, 32, 6, 31, 10, 14, 1, 11, 0, 13, 14, 12, 6, 27, 3]","[6, 5, 14, 16, 8, 8, 0, 7, 3, 10, 7, 15, 7, 15, 14, 8, 4, 0, 9, 4, 10, 4, 3, 6, 9, 6, 7, 0]",IM2503,2025-03-12 13:10:00,42,6524.6,6522.0,6527.0,6521.2,645,-1,
|
||||
"['6521.2', '6521.4', '6521.6', '6521.8', '6522.6', '6522.8', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.6']","[0, 0, 0, 4, 2, 3, 2, 2, 3, 12, 5, 12, 23, 9, 4, 13, 40, 13, 14, 11, 1, 21]","[2, 5, 3, 15, 11, 5, 5, 7, 17, 6, 25, 1, 18, 0, 4, 11, 12, 15, 0, 0, 0, 0]",IM2503,2025-03-12 13:12:00,32,6525.0,6524.4,6526.6,6521.2,435,1,
|
||||
"['6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.6', '6526.8']","[0, 0, 3, 6, 6, 10, 9, 3, 8, 10, 34, 13, 16, 28, 7, 15, 8, 21, 4]","[6, 7, 24, 1, 1, 2, 17, 0, 5, 24, 28, 20, 14, 2, 2, 16, 0, 0, 0]",IM2503,2025-03-12 13:14:00,32,6525.2,6524.8,6526.8,6522.8,449,1,
|
||||
"['6518.0', '6518.2', '6518.4', '6518.6', '6518.8', '6519.0', '6519.2', '6519.4', '6519.6', '6519.8', '6520.0', '6520.2', '6520.4', '6520.6', '6520.8', '6521.0', '6521.2', '6521.4', '6521.6', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6525.0', '6525.2', '6525.8', '6526.0', '6526.2', '6526.4', '6526.6', '6526.8', '6527.0', '6527.2']","[0, 0, 3, 8, 9, 5, 28, 17, 7, 15, 10, 23, 14, 17, 12, 15, 13, 0, 8, 0, 4, 0, 11, 0, 0, 0, 0, 0, 12, 0, 3, 3, 1, 0, 0, 12, 0, 1, 10, 3, 5, 4, 8]","[23, 6, 21, 20, 5, 46, 17, 17, 13, 11, 13, 3, 4, 22, 5, 11, 10, 7, 1, 4, 0, 4, 3, 2, 1, 7, 1, 6, 6, 14, 0, 21, 0, 16, 2, 13, 2, 14, 0, 0, 3, 0, 0]",IM2503,2025-03-12 13:16:00,-93,6522.8,6525.8,6527.2,6518.0,786,-3,
|
||||
"['6521.2', '6521.4', '6521.6', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.8', '6525.0']","[1, 0, 0, 3, 0, 4, 11, 6, 6, 14, 7, 21, 43, 15, 22, 2, 1, 0, 21]","[1, 4, 8, 6, 4, 7, 4, 1, 25, 25, 14, 6, 11, 10, 1, 25, 0, 20, 1]",IM2503,2025-03-12 13:18:00,4,6521.2,6523.0,6525.0,6521.2,420,0,
|
||||
"['6521.8', '6522.0', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.6', '6527.0', '6527.2', '6527.4', '6527.8', '6528.0', '6528.2', '6528.4', '6528.6', '6528.8', '6529.0', '6529.4', '6529.8', '6530.2', '6530.4', '6530.6', '6530.8', '6531.0', '6531.2', '6531.6', '6531.8', '6532.0', '6532.4', '6532.8', '6533.0', '6533.2', '6533.4', '6533.6']","[0, 3, 18, 7, 1, 3, 9, 1, 6, 2, 0, 11, 4, 18, 7, 21, 5, 2, 20, 8, 2, 13, 10, 0, 10, 49, 10, 32, 23, 28, 33, 24, 19, 0, 7, 2, 86, 74, 31, 10, 0, 38, 9, 16, 18, 22, 31, 30]","[10, 0, 0, 15, 5, 1, 0, 0, 1, 1, 1, 7, 7, 1, 0, 0, 2, 0, 3, 0, 3, 59, 5, 9, 45, 6, 84, 19, 0, 14, 0, 0, 0, 11, 16, 9, 8, 5, 34, 0, 36, 43, 7, 14, 0, 0, 0, 0]",IM2503,2025-03-12 13:20:00,292,6533.6,6521.8,6533.6,6521.8,1367,3,
|
||||
"['6530.8', '6531.2', '6531.4', '6531.6', '6531.8', '6532.0', '6532.2', '6533.0', '6533.2', '6533.4', '6533.8', '6534.0', '6534.6', '6534.8', '6535.0', '6536.0', '6536.4', '6537.0', '6537.8', '6538.0', '6538.6', '6539.0', '6539.8', '6540.0', '6540.8', '6541.2', '6542.0', '6542.2', '6542.4', '6542.6', '6542.8', '6543.0', '6543.4', '6543.8', '6544.0', '6544.4', '6544.6', '6545.0', '6545.2', '6545.6', '6545.8', '6546.0', '6546.2', '6546.8', '6547.0', '6547.2', '6547.4', '6547.6', '6547.8', '6548.0', '6548.2', '6548.6', '6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.4', '6550.6', '6550.8', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.0', '6552.4', '6553.0', '6553.2', '6553.8']","[0, 4, 5, 18, 12, 0, 3, 9, 7, 0, 6, 29, 10, 7, 191, 8, 22, 18, 55, 7, 50, 61, 58, 38, 0, 43, 141, 28, 0, 87, 109, 84, 31, 0, 31, 18, 26, 139, 18, 9, 30, 53, 24, 0, 100, 17, 0, 19, 17, 46, 0, 177, 0, 113, 40, 0, 0, 41, 158, 28, 9, 0, 9, 30, 11, 30, 12, 32, 38, 7, 0, 0, 14]","[18, 0, 2, 3, 7, 11, 0, 7, 7, 3, 14, 0, 0, 0, 9, 0, 0, 0, 16, 0, 0, 0, 0, 0, 23, 0, 42, 0, 24, 12, 15, 0, 0, 31, 0, 0, 12, 12, 0, 49, 0, 0, 18, 8, 39, 47, 10, 33, 0, 30, 12, 51, 17, 111, 0, 49, 9, 1, 131, 0, 0, 8, 19, 15, 3, 0, 0, 0, 43, 0, 28, 13, 0]",IM2503,2025-03-12 13:22:00,1425,6551.4,6533.6,6553.8,6530.8,4053,10,
|
||||
"['6543.0', '6543.6', '6543.8', '6544.0', '6544.2', '6544.4', '6544.6', '6544.8', '6545.0', '6545.2', '6545.4', '6545.6', '6545.8', '6546.0', '6546.2', '6546.4', '6546.6', '6547.0', '6547.2', '6547.4', '6547.8', '6548.0', '6548.2', '6548.4', '6548.6', '6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.4', '6550.8', '6551.0', '6551.4', '6551.6', '6552.0']","[0, 0, 0, 12, 0, 11, 63, 30, 34, 0, 23, 38, 32, 4, 12, 10, 24, 0, 18, 0, 0, 24, 10, 22, 19, 13, 8, 64, 18, 10, 8, 34, 0, 30, 10, 7, 14, 21, 14]","[12, 38, 22, 7, 51, 47, 18, 24, 14, 37, 10, 77, 0, 22, 30, 0, 63, 9, 0, 3, 16, 9, 28, 27, 27, 60, 9, 9, 31, 12, 18, 16, 32, 5, 3, 0, 0, 9, 51]",IM2503,2025-03-12 13:24:00,-209,6544.0,6551.6,6552.0,6543.0,1818,0,
|
||||
"['6541.4', '6541.6', '6541.8', '6542.0', '6542.4', '6542.6', '6542.8', '6543.0', '6543.2', '6543.4', '6543.8', '6544.0', '6544.2', '6544.4', '6544.6', '6544.8', '6545.0', '6545.2', '6545.4', '6545.6', '6545.8', '6546.0', '6546.2', '6546.4', '6546.6', '6546.8', '6547.0', '6547.2', '6547.4', '6547.6', '6547.8', '6548.0', '6548.4']","[0, 13, 0, 13, 29, 0, 16, 13, 14, 2, 5, 7, 0, 8, 34, 16, 61, 0, 17, 12, 7, 13, 21, 46, 25, 7, 28, 3, 23, 2, 21, 11, 11]","[8, 26, 7, 27, 2, 46, 13, 26, 23, 37, 26, 15, 7, 9, 3, 29, 16, 33, 2, 9, 31, 34, 14, 23, 16, 5, 1, 15, 10, 0, 9, 0, 0]",IM2503,2025-03-12 13:26:00,-44,6544.4,6545.0,6548.4,6541.4,1212,-2,
|
||||
"['6544.4', '6544.6', '6545.0', '6545.8', '6546.8', '6547.0', '6547.2', '6547.4', '6547.6', '6547.8', '6548.0', '6548.2', '6548.4', '6548.6', '6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.4', '6550.6', '6551.0', '6551.2', '6551.4']","[5, 8, 7, 8, 16, 8, 11, 12, 0, 38, 16, 3, 25, 58, 36, 73, 8, 61, 20, 16, 104, 8, 24, 23, 14, 18, 18]","[0, 0, 0, 0, 0, 34, 15, 9, 22, 54, 54, 14, 39, 19, 8, 34, 11, 33, 13, 6, 109, 18, 37, 1, 0, 17, 0]",IM2503,2025-03-12 13:28:00,91,6550.2,6544.4,6551.8,6544.4,1400,3,
|
||||
"['6548.0', '6548.2', '6548.4', '6548.6', '6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.4', '6550.6', '6550.8', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.0']","[0, 5, 7, 4, 21, 68, 58, 46, 30, 27, 43, 3, 23, 16, 53, 31, 16, 18, 24, 15, 36]","[19, 30, 64, 8, 7, 54, 93, 45, 16, 8, 16, 22, 24, 29, 25, 9, 9, 9, 0, 0, 0]",IM2503,2025-03-12 13:30:00,57,6549.6,6550.0,6552.0,6548.0,1252,-1,
|
||||
"['6549.0', '6549.4', '6549.6', '6550.2', '6550.4', '6550.6', '6550.8', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.0', '6552.2', '6552.4', '6552.6', '6552.8', '6553.0', '6553.2', '6553.4', '6554.0', '6554.4', '6554.6', '6555.0', '6556.0', '6556.6', '6556.8', '6557.0', '6557.2', '6557.4', '6557.6', '6557.8', '6558.0', '6558.2', '6558.6', '6558.8', '6559.0', '6559.2', '6559.6', '6559.8', '6560.4', '6561.0', '6562.6', '6563.0', '6563.2', '6563.4', '6563.6', '6564.0', '6565.0', '6565.2', '6565.4', '6566.0', '6566.8', '6567.0', '6567.2', '6567.6', '6567.8', '6568.0', '6568.4', '6568.8', '6569.0', '6569.6', '6569.8']","[12, 7, 9, 1, 7, 38, 14, 34, 4, 8, 37, 21, 18, 18, 9, 7, 52, 32, 0, 33, 5, 15, 20, 36, 85, 0, 0, 48, 42, 12, 10, 32, 9, 11, 19, 17, 21, 20, 66, 58, 68, 33, 28, 0, 14, 28, 29, 10, 20, 0, 30, 0, 23, 43, 0, 67, 60, 111, 0, 23, 10, 9, 35]","[20, 6, 0, 8, 11, 14, 13, 46, 4, 0, 2, 12, 10, 18, 6, 12, 0, 0, 10, 0, 0, 0, 31, 0, 0, 10, 7, 98, 52, 0, 8, 141, 32, 8, 0, 0, 0, 0, 0, 0, 0, 0, 46, 20, 17, 36, 0, 44, 0, 30, 29, 44, 35, 0, 76, 4, 20, 43, 18, 0, 0, 0, 0]",IM2503,2025-03-12 13:32:00,487,6569.8,6549.6,6569.8,6549.0,3149,8,
|
||||
"['6565.8', '6566.4', '6567.0', '6567.2', '6567.4', '6567.6', '6567.8', '6568.0', '6568.2', '6568.4', '6568.6', '6568.8', '6569.0', '6569.2', '6569.4', '6569.6', '6569.8', '6570.0', '6570.2', '6570.4', '6570.6', '6570.8', '6571.0', '6571.2', '6571.4', '6571.6', '6571.8', '6572.0', '6572.2', '6572.4', '6572.6', '6572.8', '6573.0', '6573.2', '6573.4', '6573.6', '6574.0', '6574.2', '6574.4']","[0, 11, 32, 0, 0, 0, 18, 0, 0, 10, 30, 24, 24, 102, 3, 21, 128, 50, 44, 50, 5, 24, 81, 101, 22, 59, 7, 55, 63, 8, 26, 10, 66, 24, 0, 92, 73, 0, 56]","[12, 30, 0, 40, 11, 32, 0, 12, 5, 19, 38, 34, 57, 29, 76, 40, 76, 58, 51, 28, 38, 26, 7, 24, 17, 31, 30, 11, 56, 75, 0, 0, 25, 9, 26, 0, 0, 50, 0]",IM2503,2025-03-12 13:34:00,246,6572.6,6573.0,6574.4,6565.8,2909,0,
|
||||
"['6572.2', '6572.8', '6573.0', '6573.4', '6573.8', '6574.4', '6574.6', '6574.8', '6575.2', '6575.4', '6575.6', '6575.8', '6576.2', '6576.4', '6576.6', '6576.8', '6577.0', '6577.2', '6577.4', '6577.8', '6578.0', '6578.2', '6578.4', '6578.8', '6579.0', '6579.2', '6579.4', '6579.6', '6579.8', '6580.0', '6580.2', '6580.4', '6580.6', '6580.8', '6581.0', '6581.2', '6581.4', '6581.6', '6582.0', '6582.2', '6582.4', '6582.6', '6582.8', '6583.0', '6583.2', '6583.4', '6583.6', '6583.8', '6584.0', '6584.2', '6584.4', '6584.8', '6585.0', '6585.6', '6585.8', '6586.0', '6586.2']","[2, 4, 15, 17, 16, 28, 12, 0, 24, 0, 35, 0, 79, 17, 45, 83, 0, 2, 38, 33, 17, 48, 0, 17, 26, 0, 14, 72, 20, 18, 41, 0, 37, 84, 21, 0, 33, 17, 75, 20, 0, 26, 59, 89, 26, 23, 51, 70, 0, 32, 0, 25, 46, 0, 0, 59, 0]","[0, 0, 0, 0, 0, 9, 26, 7, 13, 5, 0, 13, 31, 15, 26, 0, 75, 12, 34, 6, 27, 18, 4, 0, 16, 22, 0, 27, 76, 73, 111, 3, 58, 0, 59, 42, 24, 9, 157, 49, 5, 57, 51, 44, 18, 2, 18, 0, 67, 23, 31, 95, 0, 70, 43, 0, 26]",IM2503,2025-03-12 13:36:00,-81,6579.0,6572.2,6586.2,6572.2,3698,3,
|
||||
"['6571.2', '6571.4', '6571.6', '6571.8', '6572.0', '6572.4', '6572.6', '6572.8', '6573.0', '6573.4', '6573.8', '6574.0', '6574.2', '6574.4', '6574.6', '6575.0', '6576.0', '6576.2', '6576.4', '6576.6', '6576.8', '6577.0', '6577.2', '6577.4', '6577.6', '6577.8', '6578.0', '6578.2', '6578.4', '6578.6', '6578.8', '6579.0', '6579.2', '6579.4', '6579.6', '6579.8', '6580.0', '6580.2', '6580.4', '6580.8', '6581.4', '6581.8', '6582.0', '6582.2', '6582.6', '6582.8', '6583.0', '6583.2', '6583.8', '6584.6', '6584.8', '6585.8']","[0, 14, 0, 14, 9, 14, 17, 27, 9, 40, 0, 3, 0, 11, 10, 20, 0, 0, 0, 21, 3, 0, 0, 28, 3, 6, 60, 23, 34, 2, 33, 18, 10, 32, 8, 43, 63, 81, 14, 50, 7, 0, 31, 23, 8, 58, 14, 17, 29, 25, 0, 13]","[18, 20, 18, 23, 31, 0, 54, 0, 20, 0, 10, 9, 42, 53, 8, 28, 45, 19, 4, 13, 22, 43, 34, 12, 24, 6, 66, 57, 34, 8, 33, 17, 36, 18, 47, 50, 37, 5, 0, 0, 0, 14, 74, 0, 37, 7, 21, 0, 33, 0, 16, 0]",IM2503,2025-03-12 13:38:00,-221,6571.4,6580.8,6585.8,6571.2,2498,-4,
|
||||
"['6566.8', '6567.0', '6567.2', '6567.4', '6567.6', '6567.8', '6568.0', '6568.2', '6568.4', '6568.6', '6569.0', '6569.2', '6569.4', '6569.6', '6569.8', '6570.0', '6570.2', '6570.4', '6570.6', '6571.0', '6571.2', '6571.4', '6571.6', '6571.8', '6572.0', '6572.2', '6572.4', '6572.6', '6572.8', '6573.0', '6573.2', '6573.4', '6573.6', '6573.8', '6574.0', '6574.4', '6574.8', '6575.0', '6575.2', '6575.4', '6575.6', '6575.8', '6576.0', '6576.2', '6576.6', '6576.8', '6577.0', '6577.2', '6577.4', '6577.6', '6577.8', '6578.0', '6578.2', '6578.8', '6579.4']","[0, 41, 29, 13, 39, 0, 83, 0, 8, 12, 45, 24, 29, 17, 0, 9, 0, 0, 0, 0, 33, 24, 0, 15, 29, 0, 47, 59, 54, 51, 29, 12, 21, 0, 9, 29, 18, 13, 10, 6, 6, 51, 8, 19, 10, 16, 12, 0, 14, 14, 0, 34, 22, 19, 19]","[17, 97, 15, 22, 0, 10, 70, 61, 32, 81, 97, 7, 21, 0, 8, 0, 50, 38, 7, 55, 73, 25, 5, 7, 33, 15, 52, 8, 31, 10, 9, 0, 51, 30, 0, 13, 11, 9, 14, 20, 40, 21, 32, 10, 26, 13, 5, 4, 18, 27, 4, 0, 0, 0, 0]",IM2503,2025-03-12 13:40:00,-252,6567.0,6571.4,6579.4,6566.8,2698,0,
|
||||
"['6565.0', '6565.2', '6565.4', '6565.6', '6566.0', '6566.2', '6566.6', '6567.0', '6567.2', '6567.4', '6567.6', '6567.8', '6568.0', '6568.2', '6568.4', '6568.6', '6569.0', '6569.2', '6569.4', '6569.6', '6569.8', '6570.0', '6570.2', '6570.4', '6570.6', '6570.8', '6571.0', '6571.2', '6571.4', '6571.6', '6571.8', '6572.0', '6572.2', '6572.4', '6572.6', '6572.8', '6573.0', '6573.2', '6573.4', '6573.6', '6573.8', '6574.2']","[0, 0, 0, 41, 22, 11, 0, 0, 9, 0, 23, 0, 19, 43, 4, 30, 0, 11, 2, 22, 14, 29, 29, 41, 48, 19, 52, 10, 16, 5, 11, 28, 15, 19, 6, 0, 25, 15, 7, 2, 6, 11]","[35, 10, 28, 0, 0, 20, 8, 21, 43, 37, 0, 3, 0, 11, 0, 11, 4, 30, 38, 23, 7, 34, 55, 10, 10, 62, 59, 23, 0, 13, 47, 24, 9, 0, 0, 15, 63, 33, 31, 5, 0, 0]",IM2503,2025-03-12 13:42:00,-177,6572.8,6568.2,6574.2,6565.0,1759,-1,
|
||||
"['6561.2', '6561.4', '6561.6', '6561.8', '6562.0', '6562.2', '6562.4', '6562.6', '6562.8', '6563.0', '6563.2', '6563.4', '6563.6', '6563.8', '6564.0', '6564.2', '6564.4', '6564.6', '6564.8', '6565.0', '6565.2', '6565.4', '6565.6', '6565.8', '6566.0', '6566.2', '6566.4', '6566.6', '6566.8', '6567.0', '6567.2', '6567.4', '6567.6', '6568.0', '6568.2', '6568.8', '6569.2', '6570.0', '6570.6', '6571.2', '6571.6', '6572.4', '6572.6', '6572.8', '6573.0']","[0, 0, 31, 28, 21, 95, 21, 10, 17, 67, 59, 33, 59, 45, 44, 10, 9, 9, 3, 0, 58, 29, 23, 2, 0, 0, 5, 0, 5, 0, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 13, 6, 12]","[18, 23, 0, 34, 96, 36, 51, 24, 22, 33, 38, 30, 35, 0, 4, 12, 3, 0, 6, 44, 4, 13, 72, 9, 4, 19, 14, 31, 0, 3, 0, 2, 7, 24, 3, 6, 18, 3, 5, 6, 14, 0, 0, 0, 0]",IM2503,2025-03-12 13:44:00,-38,6563.0,6572.6,6573.0,6561.2,1727,-12,
|
||||
"['6561.2', '6561.6', '6561.8', '6562.0', '6562.2', '6562.4', '6562.6', '6562.8', '6563.0', '6563.2', '6563.4', '6563.6', '6563.8', '6564.0', '6564.2', '6564.4', '6564.6', '6564.8', '6565.0', '6565.2', '6565.4', '6565.6', '6565.8', '6566.0', '6566.2', '6566.4', '6566.8']","[0, 6, 0, 0, 26, 0, 23, 22, 40, 36, 15, 30, 3, 48, 14, 14, 28, 19, 37, 10, 0, 20, 28, 21, 6, 7, 5]","[8, 0, 16, 70, 43, 6, 27, 20, 20, 25, 7, 18, 15, 46, 26, 27, 23, 12, 5, 0, 26, 12, 15, 0, 0, 0, 0]",IM2503,2025-03-12 13:46:00,-9,6562.6,6563.0,6566.8,6561.2,1117,0,
|
||||
"['6544.2', '6544.4', '6544.6', '6545.0', '6545.2', '6545.4', '6545.6', '6545.8', '6546.0', '6546.2', '6546.4', '6546.6', '6546.8', '6547.0', '6547.2', '6547.4', '6547.6', '6547.8', '6548.0', '6548.2', '6548.4', '6548.6', '6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6550.0', '6550.2', '6550.6', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.0', '6552.2', '6552.8', '6553.0', '6553.2', '6553.4', '6554.0', '6554.2', '6554.6', '6555.0', '6555.2', '6555.4', '6556.2', '6556.4', '6557.0', '6557.2', '6557.4', '6557.6', '6557.8', '6558.0', '6558.2', '6558.4', '6559.0', '6559.2', '6559.6', '6560.0', '6560.2', '6560.4', '6561.2', '6561.6']","[0, 26, 16, 14, 63, 49, 0, 32, 27, 21, 49, 0, 20, 66, 0, 44, 18, 51, 39, 11, 17, 6, 12, 0, 6, 80, 14, 0, 23, 0, 0, 0, 22, 36, 0, 0, 0, 15, 27, 13, 0, 0, 18, 0, 13, 10, 0, 0, 0, 12, 24, 47, 0, 11, 0, 13, 15, 0, 0, 6, 5, 0, 0, 0, 1]","[8, 56, 22, 68, 29, 19, 33, 7, 96, 10, 10, 49, 36, 64, 44, 13, 0, 0, 68, 0, 0, 0, 24, 18, 43, 0, 10, 15, 0, 10, 28, 23, 35, 0, 5, 13, 3, 11, 39, 21, 5, 24, 20, 14, 0, 29, 27, 14, 1, 35, 13, 27, 4, 0, 37, 23, 4, 7, 11, 0, 62, 15, 9, 57, 5]",IM2503,2025-03-12 13:48:00,-381,6545.0,6562.2,6562.2,6544.2,2811,-2,
|
||||
"['6545.0', '6545.4', '6545.6', '6546.0', '6546.2', '6546.4', '6546.6', '6547.0', '6547.4', '6548.0', '6548.4', '6549.4', '6550.0', '6550.2', '6550.4', '6550.6', '6550.8', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.0', '6552.2', '6552.4', '6552.6', '6552.8', '6553.0', '6553.2', '6553.4', '6553.6', '6553.8', '6554.2', '6554.4', '6554.6', '6554.8', '6555.0', '6555.2', '6555.4', '6555.6', '6555.8', '6556.0']","[15, 21, 12, 32, 8, 21, 3, 9, 8, 22, 12, 2, 14, 0, 15, 9, 0, 24, 11, 26, 37, 18, 32, 13, 15, 14, 45, 43, 17, 11, 17, 3, 40, 8, 14, 1, 54, 2, 8, 14, 29, 5]","[2, 0, 36, 4, 0, 15, 4, 0, 0, 14, 0, 0, 4, 13, 0, 11, 15, 0, 11, 10, 33, 0, 33, 26, 34, 38, 23, 23, 12, 12, 21, 10, 44, 3, 13, 2, 23, 9, 10, 2, 0, 0]",IM2503,2025-03-12 13:50:00,194,6555.0,6545.0,6556.0,6544.8,1391,0,
|
||||
"['6548.2', '6548.4', '6548.6', '6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.4', '6550.6', '6550.8', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.2', '6553.2', '6553.8', '6554.4', '6554.6', '6554.8', '6555.0', '6555.2', '6555.4', '6555.8', '6556.0', '6556.2', '6556.4', '6556.6', '6556.8', '6557.0', '6557.2', '6557.4']","[0, 1, 0, 10, 1, 11, 10, 40, 16, 18, 11, 5, 5, 11, 4, 4, 7, 0, 8, 2, 0, 0, 9, 63, 6, 0, 16, 0, 21, 37, 5, 18, 50, 36, 27, 0, 18]","[2, 1, 1, 30, 22, 8, 13, 13, 17, 19, 14, 15, 0, 25, 10, 0, 12, 2, 0, 12, 7, 2, 19, 9, 0, 32, 0, 9, 21, 52, 14, 13, 18, 4, 13, 12, 0]",IM2503,2025-03-12 13:52:00,29,6548.4,6554.4,6557.4,6548.2,1080,0,
|
||||
"['6541.6', '6541.8', '6542.0', '6542.2', '6542.4', '6542.6', '6542.8', '6543.0', '6543.2', '6543.4', '6543.8', '6544.0', '6544.2', '6544.6', '6544.8', '6545.0', '6545.4', '6545.6', '6546.0', '6546.2', '6546.8', '6547.0', '6547.2', '6547.4', '6547.6', '6548.0', '6548.2', '6548.4', '6548.6', '6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.4', '6550.8', '6551.2', '6552.8']","[0, 0, 9, 0, 0, 26, 38, 0, 7, 45, 6, 2, 0, 0, 9, 26, 3, 13, 14, 9, 21, 0, 15, 14, 4, 15, 28, 10, 21, 15, 4, 32, 10, 6, 0, 17, 11, 5, 14, 1, 7]","[5, 54, 24, 24, 23, 8, 15, 18, 83, 3, 0, 25, 13, 2, 0, 35, 11, 7, 7, 63, 9, 13, 18, 6, 17, 23, 25, 5, 0, 0, 17, 14, 17, 4, 7, 8, 30, 0, 3, 0, 0]",IM2503,2025-03-12 13:54:00,-179,6546.0,6548.6,6552.8,6541.6,1243,-1,
|
||||
"['6543.0', '6543.6', '6543.8', '6544.0', '6544.2', '6544.4', '6544.6', '6544.8', '6545.0', '6545.2', '6545.4', '6545.6', '6545.8', '6546.0', '6546.2', '6546.6', '6546.8', '6547.0', '6547.2', '6547.4', '6547.6', '6547.8', '6548.0', '6548.4', '6548.6', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.8', '6551.0']","[0, 7, 29, 15, 17, 8, 23, 25, 41, 44, 13, 22, 2, 10, 5, 3, 21, 18, 0, 22, 21, 13, 0, 3, 12, 13, 0, 1, 0, 0, 5, 29, 11, 5]","[2, 38, 32, 21, 18, 43, 6, 0, 47, 3, 15, 2, 2, 1, 24, 3, 27, 5, 5, 0, 1, 21, 4, 3, 9, 7, 5, 3, 12, 6, 19, 11, 0, 19]",IM2503,2025-03-12 13:56:00,24,6548.6,6546.8,6551.0,6543.0,976,-1,
|
||||
"['6548.8', '6549.0', '6549.2', '6549.4', '6549.8', '6550.0', '6550.2', '6550.6', '6550.8', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.0', '6552.2', '6552.4', '6552.6', '6552.8', '6553.0', '6553.2', '6553.4', '6553.6', '6553.8', '6554.0', '6554.2', '6554.4', '6554.6', '6554.8', '6555.0', '6555.2', '6555.4', '6555.6', '6555.8', '6556.0', '6556.2', '6556.4', '6556.6']","[0, 0, 3, 3, 7, 7, 0, 0, 8, 11, 19, 24, 3, 14, 19, 6, 7, 9, 12, 19, 27, 11, 39, 35, 12, 25, 13, 34, 0, 70, 3, 7, 22, 27, 8, 10, 21, 4]","[11, 2, 3, 0, 0, 0, 4, 9, 18, 8, 10, 11, 2, 11, 10, 18, 3, 0, 1, 5, 36, 30, 26, 12, 6, 10, 16, 23, 16, 20, 0, 2, 0, 16, 8, 0, 0, 3]",IM2503,2025-03-12 13:58:00,189,6555.2,6549.2,6556.6,6548.8,1013,2,
|
||||
"['6551.4', '6551.8', '6552.0', '6552.2', '6552.4', '6552.6', '6552.8', '6553.0', '6553.2', '6553.4', '6553.6', '6554.0', '6554.2', '6554.4', '6554.6', '6554.8', '6555.0', '6555.2', '6555.4', '6555.6', '6556.0', '6556.2', '6556.6', '6557.0', '6557.2', '6557.8', '6558.0', '6558.2', '6558.4', '6558.6', '6558.8', '6559.0', '6559.2', '6559.4', '6559.6', '6559.8', '6560.0', '6560.2', '6560.4', '6560.6', '6560.8', '6561.0', '6561.2', '6561.6', '6561.8', '6562.0']","[0, 3, 0, 9, 5, 7, 2, 2, 0, 2, 29, 8, 6, 4, 2, 12, 18, 18, 18, 6, 17, 5, 9, 3, 8, 15, 19, 0, 0, 2, 17, 35, 13, 6, 3, 4, 8, 1, 25, 19, 29, 34, 25, 12, 9, 44]","[10, 9, 5, 9, 8, 9, 2, 3, 2, 19, 16, 5, 10, 2, 0, 36, 4, 13, 0, 0, 10, 0, 0, 0, 14, 8, 1, 2, 1, 0, 16, 0, 0, 0, 5, 8, 17, 6, 15, 27, 6, 0, 8, 4, 3, 0]",IM2503,2025-03-12 14:00:00,200,6561.8,6555.6,6562.0,6551.4,995,2,
|
||||
"['6554.0', '6554.8', '6555.0', '6555.2', '6555.4', '6555.6', '6556.0', '6556.2', '6556.6', '6556.8', '6557.0', '6557.4', '6557.6', '6557.8', '6558.0', '6558.2', '6558.4', '6558.6', '6558.8', '6559.0', '6559.2', '6559.4', '6559.6', '6559.8', '6560.0', '6560.2', '6560.4', '6560.6', '6560.8', '6561.0', '6561.2', '6561.8']","[0, 0, 0, 0, 3, 0, 0, 3, 4, 19, 0, 0, 15, 2, 37, 36, 39, 13, 15, 7, 8, 28, 7, 13, 28, 11, 23, 0, 31, 6, 0, 0]","[7, 7, 20, 5, 0, 8, 12, 5, 22, 0, 16, 22, 44, 43, 7, 35, 13, 8, 20, 12, 5, 6, 10, 9, 2, 0, 30, 5, 0, 28, 7, 11]",IM2503,2025-03-12 14:02:00,-71,6554.0,6561.8,6561.8,6554.0,1001,0,
|
||||
"['6547.0', '6547.4', '6547.8', '6548.0', '6548.2', '6548.4', '6548.6', '6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.6', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.0', '6552.2', '6552.4', '6552.6', '6552.8', '6553.0', '6553.2', '6553.4', '6553.6', '6553.8', '6554.0', '6554.2', '6554.4', '6554.6', '6554.8', '6555.0', '6555.2', '6555.4', '6555.6', '6555.8', '6556.0']","[0, 0, 19, 12, 0, 20, 4, 0, 2, 1, 2, 6, 0, 58, 4, 7, 2, 2, 7, 0, 3, 5, 5, 7, 3, 9, 20, 26, 40, 4, 1, 12, 3, 24, 11, 27, 4, 14, 3, 0, 8, 1]","[4, 6, 0, 1, 4, 14, 0, 10, 1, 0, 0, 12, 32, 22, 1, 26, 0, 7, 3, 13, 11, 18, 11, 7, 5, 11, 23, 15, 16, 15, 9, 8, 9, 7, 42, 8, 5, 21, 19, 9, 0, 3]",IM2503,2025-03-12 14:04:00,-52,6553.6,6554.0,6556.2,6547.0,996,0,
|
||||
"['6548.8', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.4', '6550.6', '6550.8', '6551.0', '6551.2', '6551.4', '6551.6', '6551.8', '6552.0', '6552.2', '6552.4', '6552.6', '6552.8', '6553.0', '6553.2', '6553.4', '6553.6', '6553.8', '6554.0', '6554.4', '6554.6', '6554.8']","[0, 7, 9, 0, 0, 1, 2, 2, 5, 3, 0, 14, 5, 3, 3, 16, 14, 5, 4, 12, 26, 17, 4, 6, 14, 23, 10, 9, 1, 13]","[13, 3, 4, 8, 2, 0, 11, 24, 7, 1, 7, 38, 6, 12, 0, 7, 5, 5, 19, 8, 13, 11, 31, 11, 8, 3, 5, 1, 0, 0]",IM2503,2025-03-12 14:06:00,-35,6551.8,6553.4,6554.8,6548.8,610,0,
|
||||
"['6551.6', '6552.2', '6552.6', '6552.8', '6553.0', '6553.6', '6553.8', '6554.0', '6554.2', '6554.4', '6554.6', '6554.8', '6555.0', '6555.4', '6555.8', '6556.0', '6556.2', '6556.6', '6556.8', '6557.0', '6557.2', '6557.4', '6557.6', '6557.8', '6558.0', '6558.2', '6558.4', '6558.6', '6558.8', '6559.0', '6559.2', '6559.4', '6559.6', '6559.8', '6560.0', '6560.2', '6560.6', '6561.8', '6562.0', '6562.2', '6562.4', '6562.6', '6562.8', '6563.0', '6563.2', '6563.4', '6563.6', '6563.8', '6564.0', '6564.4', '6565.0', '6565.4', '6565.6', '6565.8', '6566.0']","[0, 2, 1, 0, 7, 0, 5, 3, 4, 0, 5, 0, 6, 1, 5, 9, 0, 0, 14, 11, 2, 12, 17, 14, 18, 3, 2, 26, 17, 10, 10, 0, 5, 6, 8, 9, 42, 1, 4, 7, 7, 1, 0, 57, 11, 4, 23, 5, 9, 11, 16, 0, 23, 28, 16]","[1, 0, 0, 4, 0, 3, 2, 0, 3, 3, 2, 8, 0, 1, 6, 9, 6, 8, 4, 21, 3, 12, 26, 8, 3, 6, 10, 18, 6, 1, 22, 1, 3, 10, 3, 0, 0, 42, 22, 20, 23, 4, 11, 26, 0, 6, 0, 26, 0, 22, 0, 17, 10, 0, 0]",IM2503,2025-03-12 14:08:00,55,6566.0,6552.2,6566.0,6551.6,1109,1,
|
||||
"['6561.0', '6561.6', '6562.0', '6562.2', '6562.6', '6562.8', '6563.0', '6563.2', '6563.6', '6563.8', '6564.0', '6564.2', '6564.4', '6564.6', '6564.8', '6565.0', '6565.2', '6565.4', '6565.6', '6565.8', '6566.0', '6566.2', '6566.4', '6566.6', '6566.8', '6567.0', '6567.2', '6567.4', '6567.6', '6568.0', '6568.2', '6568.4', '6568.6', '6568.8', '6569.0', '6569.2', '6569.6']","[0, 0, 11, 0, 3, 7, 5, 0, 18, 18, 0, 18, 17, 0, 14, 11, 24, 41, 34, 20, 8, 22, 9, 5, 30, 57, 23, 4, 28, 80, 20, 2, 5, 13, 9, 1, 43]","[4, 16, 5, 7, 18, 4, 4, 11, 103, 8, 7, 9, 58, 3, 16, 33, 16, 24, 7, 23, 25, 12, 13, 14, 0, 29, 0, 0, 1, 5, 14, 12, 46, 12, 0, 0, 0]",IM2503,2025-03-12 14:10:00,41,6568.8,6565.4,6569.6,6560.8,1364,2,
|
||||
"['6563.6', '6564.0', '6564.2', '6564.4', '6564.6', '6564.8', '6565.0', '6565.2', '6565.4', '6565.6', '6565.8', '6566.0', '6566.2', '6566.4', '6566.6', '6566.8', '6567.0', '6567.2', '6567.4', '6567.6', '6568.0', '6569.4']","[6, 18, 0, 0, 5, 9, 33, 10, 16, 40, 17, 11, 31, 10, 22, 0, 26, 13, 5, 3, 2, 5]","[4, 59, 8, 4, 8, 20, 24, 9, 3, 36, 34, 15, 44, 18, 29, 10, 32, 9, 2, 0, 0, 61]",IM2503,2025-03-12 14:12:00,-147,6566.6,6568.4,6569.4,6563.6,852,0,
|
||||
"['6563.0', '6563.2', '6563.4', '6563.6', '6563.8', '6564.0', '6564.2', '6564.4', '6564.6', '6564.8', '6565.0', '6565.2', '6565.4', '6565.6', '6565.8', '6566.0', '6566.2', '6566.4', '6566.6', '6566.8', '6567.0', '6567.2', '6567.4', '6567.6']","[0, 15, 5, 6, 23, 13, 16, 19, 0, 17, 34, 12, 10, 2, 28, 7, 0, 0, 16, 3, 4, 11, 0, 10]","[11, 12, 13, 11, 15, 11, 19, 9, 5, 26, 8, 10, 1, 8, 10, 5, 63, 16, 9, 7, 0, 3, 7, 0]",IM2503,2025-03-12 14:14:00,-28,6565.2,6567.0,6567.6,6563.0,622,0,
|
||||
"['6559.0', '6559.2', '6559.4', '6559.6', '6559.8', '6560.0', '6560.2', '6560.4', '6560.6', '6560.8', '6561.0', '6561.2', '6561.4', '6562.0', '6562.4', '6562.6', '6562.8', '6563.0', '6563.4', '6563.6', '6563.8', '6564.0', '6564.2', '6564.4', '6564.6', '6564.8', '6565.0', '6565.2', '6565.4', '6565.6', '6565.8', '6566.0', '6566.2', '6566.4', '6566.6', '6566.8', '6567.0']","[0, 0, 4, 0, 26, 23, 17, 7, 18, 2, 0, 0, 6, 0, 0, 0, 5, 3, 0, 0, 0, 7, 1, 7, 6, 3, 10, 6, 7, 1, 3, 23, 2, 3, 11, 16, 14]","[12, 6, 6, 4, 5, 18, 8, 3, 12, 12, 6, 6, 0, 14, 13, 14, 14, 21, 1, 2, 11, 2, 3, 14, 6, 1, 9, 0, 11, 0, 20, 18, 9, 13, 4, 9, 11]",IM2503,2025-03-12 14:16:00,-87,6560.4,6565.2,6567.2,6559.0,635,-3,
|
||||
"['6544.2', '6544.6', '6545.2', '6545.4', '6545.6', '6545.8', '6546.6', '6547.0', '6547.2', '6547.8', '6548.0', '6548.2', '6548.4', '6548.6', '6549.0', '6549.2', '6549.4', '6549.6', '6549.8', '6550.0', '6550.2', '6550.4', '6550.6', '6551.0', '6552.0', '6552.2', '6553.8', '6554.0', '6554.2', '6555.0', '6555.8', '6556.0', '6556.6', '6556.8', '6557.0', '6557.2', '6557.4', '6557.6', '6557.8', '6558.0', '6558.2', '6558.4', '6558.6', '6558.8', '6559.0', '6559.2', '6559.4', '6559.6', '6559.8', '6560.0', '6560.2']","[0, 0, 7, 21, 12, 10, 0, 0, 0, 0, 16, 26, 0, 16, 0, 28, 22, 0, 36, 51, 5, 31, 0, 9, 0, 24, 0, 0, 11, 8, 0, 10, 0, 4, 16, 33, 1, 15, 3, 9, 0, 0, 5, 15, 1, 5, 21, 12, 3, 12, 7]","[59, 32, 15, 40, 0, 0, 22, 10, 6, 17, 31, 7, 7, 31, 5, 6, 0, 7, 34, 41, 18, 9, 11, 10, 6, 11, 5, 5, 8, 25, 5, 9, 18, 14, 25, 24, 1, 5, 7, 10, 9, 6, 3, 10, 12, 7, 41, 8, 12, 0, 3]",IM2503,2025-03-12 14:18:00,-202,6545.8,6559.8,6560.2,6543.4,1453,-1,
|
||||
"['6539.4', '6539.6', '6539.8', '6540.0', '6540.2', '6540.4', '6540.6', '6540.8', '6541.0', '6541.2', '6541.4', '6541.6', '6541.8', '6542.0', '6542.2', '6542.4', '6542.6', '6542.8', '6543.0', '6543.2', '6543.4', '6543.6', '6543.8', '6544.0', '6544.4', '6544.6', '6544.8', '6545.0', '6545.2', '6545.4', '6545.6', '6545.8', '6546.0', '6546.2', '6546.4', '6546.6', '6546.8', '6547.0', '6547.2', '6547.4', '6547.6', '6547.8', '6548.0', '6548.2', '6548.4']","[0, 0, 0, 0, 56, 0, 0, 62, 10, 21, 0, 20, 0, 1, 141, 0, 0, 26, 29, 3, 8, 17, 29, 26, 0, 5, 29, 29, 12, 7, 28, 20, 0, 7, 28, 12, 12, 54, 29, 4, 10, 16, 0, 9, 8]","[13, 65, 10, 11, 52, 24, 38, 7, 20, 10, 22, 0, 10, 44, 48, 44, 26, 63, 40, 5, 38, 24, 0, 0, 14, 0, 0, 21, 2, 11, 5, 15, 7, 16, 11, 20, 39, 26, 19, 10, 1, 0, 9, 2, 0]",IM2503,2025-03-12 14:20:00,-74,6546.2,6546.6,6548.4,6539.4,1864,-1,
|
||||
"['6538.6', '6538.8', '6539.0', '6539.2', '6539.4', '6539.6', '6539.8', '6540.0', '6540.2', '6540.4', '6540.6', '6540.8', '6541.0', '6541.2', '6541.4', '6541.6', '6542.2', '6542.4', '6542.6', '6542.8', '6543.0', '6543.2', '6543.4', '6543.6', '6543.8', '6544.0', '6544.2', '6544.4', '6544.6', '6544.8', '6545.0', '6545.2', '6545.4', '6545.6', '6545.8', '6546.2', '6546.4', '6546.8', '6547.0', '6547.4', '6547.6']","[5, 0, 29, 27, 0, 12, 5, 0, 0, 0, 0, 0, 1, 21, 9, 20, 5, 5, 5, 0, 16, 30, 20, 6, 3, 5, 16, 5, 6, 6, 12, 6, 6, 0, 14, 0, 0, 23, 4, 8, 2]","[25, 34, 18, 5, 3, 5, 5, 35, 6, 15, 23, 10, 39, 20, 23, 5, 7, 0, 21, 16, 5, 14, 21, 20, 10, 21, 9, 7, 30, 16, 23, 15, 0, 2, 0, 7, 5, 23, 0, 5, 0]",IM2503,2025-03-12 14:22:00,-216,6539.6,6546.4,6547.6,6538.6,1007,-4,
|
||||
"['6516.0', '6516.4', '6516.8', '6517.0', '6517.2', '6517.4', '6517.6', '6517.8', '6518.0', '6518.4', '6518.8', '6519.0', '6519.2', '6520.0', '6520.4', '6521.0', '6521.8', '6522.0', '6522.2', '6523.0', '6523.2', '6525.0', '6526.2', '6526.8', '6527.2', '6529.0', '6530.0', '6530.4', '6530.6', '6531.0', '6531.2', '6531.4', '6531.6', '6532.0', '6532.4', '6532.6', '6532.8', '6533.0', '6533.2', '6533.4', '6533.6', '6533.8', '6534.0', '6534.2', '6534.4', '6534.8', '6535.0', '6535.6', '6536.0', '6536.2', '6536.8', '6537.2', '6537.4', '6537.6', '6537.8', '6538.0', '6538.2', '6538.4', '6538.6', '6538.8', '6539.0', '6539.4', '6539.6']","[37, 0, 8, 47, 54, 52, 17, 0, 0, 25, 0, 15, 26, 19, 12, 0, 0, 110, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 12, 6, 0, 0, 16, 17, 41, 0, 11, 23, 60, 18, 12, 18, 0, 0, 0, 14, 5, 4, 0, 17, 0, 11, 13, 0, 25, 15, 14, 3, 15, 4]","[123, 34, 33, 27, 25, 62, 0, 8, 39, 26, 10, 0, 85, 53, 0, 19, 29, 91, 14, 25, 26, 9, 24, 15, 59, 26, 15, 7, 5, 33, 26, 0, 6, 7, 12, 30, 68, 3, 8, 16, 0, 24, 10, 17, 0, 41, 3, 4, 28, 90, 0, 10, 99, 219, 19, 98, 32, 20, 4, 18, 11, 11, 2]",IM2503,2025-03-12 14:24:00,-1013,6516.8,6539.4,6539.6,6516.0,3183,-8,
|
||||
"['6510.8', '6511.2', '6511.8', '6512.0', '6512.2', '6512.8', '6513.0', '6513.2', '6513.4', '6513.6', '6513.8', '6514.0', '6514.2', '6514.4', '6514.6', '6514.8', '6515.0', '6515.2', '6515.4', '6515.6', '6515.8', '6516.0', '6516.2', '6516.6', '6516.8', '6517.0', '6517.4', '6517.6', '6517.8', '6518.6', '6519.6', '6519.8', '6520.0', '6520.2', '6520.4', '6520.6', '6520.8', '6521.0', '6521.2', '6521.4', '6521.8', '6522.0', '6522.4', '6522.6', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8']","[0, 23, 0, 0, 17, 27, 0, 0, 15, 13, 82, 86, 69, 14, 31, 15, 59, 59, 24, 29, 15, 60, 16, 15, 26, 29, 13, 2, 27, 5, 14, 0, 9, 20, 8, 24, 7, 19, 4, 16, 21, 0, 20, 0, 18, 0, 0, 16, 10, 54, 12, 34, 19, 64]","[17, 43, 41, 43, 0, 0, 116, 45, 66, 50, 52, 102, 9, 54, 17, 24, 124, 45, 0, 9, 0, 6, 18, 9, 52, 0, 0, 0, 0, 0, 7, 25, 17, 0, 0, 48, 0, 0, 9, 0, 80, 7, 10, 17, 2, 3, 5, 35, 28, 15, 0, 11, 22, 0]",IM2503,2025-03-12 14:26:00,-123,6520.4,6516.8,6524.8,6510.8,2867,3,
|
||||
"['6510.0', '6510.2', '6510.6', '6510.8', '6511.0', '6511.2', '6511.4', '6511.6', '6511.8', '6512.0', '6512.2', '6512.4', '6512.6', '6512.8', '6513.0', '6513.2', '6513.4', '6513.6', '6513.8', '6514.0', '6514.2', '6514.4', '6514.8', '6515.0', '6515.2', '6515.4', '6515.8', '6516.0', '6516.4', '6516.6', '6517.6', '6517.8', '6518.0', '6518.2', '6518.6', '6518.8', '6519.0', '6519.2', '6519.4', '6520.0', '6520.2', '6520.4', '6521.0', '6521.2', '6521.4', '6521.6', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8']","[16, 52, 0, 19, 0, 0, 0, 61, 0, 19, 37, 14, 16, 16, 19, 0, 6, 10, 0, 24, 10, 13, 15, 40, 23, 7, 0, 15, 0, 0, 0, 9, 9, 1, 24, 6, 13, 0, 5, 0, 0, 12, 0, 5, 3, 10, 5, 4, 21, 0, 6, 23, 11, 2, 29, 4, 0, 45, 5, 5, 5, 19]","[86, 0, 10, 0, 21, 14, 127, 0, 12, 48, 33, 50, 26, 32, 87, 31, 0, 7, 15, 41, 20, 0, 10, 7, 0, 4, 14, 24, 4, 11, 4, 0, 0, 10, 11, 2, 2, 13, 0, 27, 20, 0, 18, 18, 24, 20, 7, 12, 1, 4, 14, 0, 45, 0, 7, 7, 2, 0, 11, 0, 4, 5]",IM2503,2025-03-12 14:28:00,-309,6512.0,6520.0,6524.8,6509.4,1981,1,
|
||||
"['6510.6', '6511.0', '6511.4', '6511.6', '6512.0', '6512.2', '6512.4', '6512.6', '6513.0', '6513.2', '6513.4', '6513.6', '6513.8', '6514.0', '6514.2', '6514.4', '6514.6', '6514.8', '6515.0', '6515.2', '6515.4', '6515.6', '6515.8', '6516.0', '6516.2', '6516.4', '6516.6', '6516.8', '6517.0', '6517.4', '6517.6', '6518.8', '6519.0', '6519.2', '6519.6', '6520.0', '6520.2', '6520.4', '6520.6', '6520.8', '6521.0']","[0, 16, 11, 98, 5, 6, 0, 4, 24, 0, 0, 15, 9, 11, 17, 51, 40, 21, 36, 7, 30, 5, 64, 5, 15, 12, 18, 6, 5, 14, 7, 4, 4, 10, 4, 7, 51, 4, 30, 32, 40]","[19, 21, 14, 0, 0, 7, 20, 7, 8, 5, 9, 21, 8, 48, 0, 14, 0, 25, 24, 0, 2, 37, 0, 15, 7, 10, 9, 0, 0, 0, 3, 7, 0, 0, 3, 19, 62, 23, 9, 0, 5]",IM2503,2025-03-12 14:30:00,277,6520.2,6510.6,6521.2,6510.6,1518,2,
|
||||
"['6516.6', '6516.8', '6517.0', '6517.2', '6517.4', '6517.6', '6518.0', '6518.2', '6518.4', '6518.6', '6518.8', '6519.0', '6519.2', '6519.4', '6519.6', '6519.8', '6520.0', '6520.2', '6520.4', '6520.6', '6520.8', '6521.0', '6521.4', '6521.6', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0']","[0, 0, 0, 4, 7, 0, 16, 15, 12, 10, 6, 6, 0, 5, 0, 17, 5, 19, 14, 4, 6, 3, 14, 0, 10, 15, 9, 18, 21, 25, 36, 5, 7, 16, 14, 11]","[5, 1, 4, 4, 0, 6, 10, 14, 17, 11, 4, 0, 11, 36, 16, 5, 48, 22, 0, 0, 0, 17, 15, 23, 21, 25, 19, 25, 3, 52, 2, 0, 14, 10, 14, 0]",IM2503,2025-03-12 14:32:00,-104,6519.8,6520.4,6524.0,6516.6,1013,1,
|
||||
"['6519.4', '6520.0', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.2', '6526.4', '6526.6', '6526.8', '6527.0', '6527.2', '6527.4', '6527.6', '6527.8', '6528.0', '6528.2', '6528.4', '6528.6', '6528.8']","[0, 10, 15, 0, 3, 0, 27, 0, 0, 4, 17, 4, 15, 15, 18, 6, 51, 42, 21, 2, 7, 5, 20, 34, 18, 11, 15, 36, 10, 6, 30, 15, 7, 0, 54, 7, 17]","[10, 0, 0, 6, 23, 12, 0, 2, 10, 7, 10, 0, 15, 13, 39, 1, 77, 4, 13, 36, 12, 14, 88, 22, 13, 6, 7, 27, 0, 4, 0, 0, 5, 3, 20, 0, 0]",IM2503,2025-03-12 14:34:00,43,6528.8,6520.0,6528.8,6519.4,1220,2,
|
||||
"['6526.2', '6526.4', '6526.6', '6526.8', '6527.0', '6527.2', '6527.4', '6527.6', '6527.8', '6528.0', '6528.2', '6528.6', '6528.8', '6529.0', '6529.2', '6529.4', '6529.6', '6529.8', '6530.0', '6530.2', '6530.4', '6530.6', '6530.8', '6531.0', '6531.2', '6531.4', '6531.6', '6531.8', '6532.0', '6532.2', '6532.4', '6532.6', '6532.8', '6533.0', '6533.2', '6533.4', '6533.6', '6534.0']","[0, 0, 15, 4, 0, 5, 23, 3, 11, 7, 4, 0, 5, 44, 0, 6, 12, 58, 5, 6, 2, 32, 17, 30, 28, 9, 30, 34, 88, 10, 14, 21, 16, 10, 14, 1, 21, 6]","[12, 6, 17, 2, 6, 4, 3, 8, 3, 12, 3, 9, 0, 5, 5, 0, 15, 1, 12, 4, 0, 38, 19, 26, 21, 41, 19, 89, 98, 46, 8, 4, 20, 12, 2, 0, 0, 0]",IM2503,2025-03-12 14:36:00,21,6526.8,6528.8,6534.0,6526.2,1355,1,
|
||||
"['6526.6', '6526.8', '6527.0', '6527.2', '6527.4', '6527.6', '6527.8', '6528.0', '6528.4', '6528.8', '6529.0', '6529.2', '6529.4', '6529.6', '6529.8', '6530.0', '6530.2', '6530.4', '6530.6', '6530.8', '6531.0', '6531.2', '6531.4', '6531.6', '6531.8', '6532.0', '6532.2', '6532.4', '6532.6', '6532.8', '6533.0', '6533.2', '6533.4', '6533.6']","[0, 0, 0, 5, 3, 2, 5, 3, 1, 9, 3, 9, 7, 0, 3, 14, 10, 3, 13, 8, 7, 11, 11, 62, 33, 29, 1, 15, 43, 4, 21, 12, 3, 17]","[6, 5, 12, 0, 5, 17, 0, 6, 4, 5, 14, 6, 0, 24, 0, 5, 21, 8, 3, 11, 27, 5, 20, 57, 5, 0, 1, 11, 0, 14, 11, 0, 0, 0]",IM2503,2025-03-12 14:38:00,64,6527.4,6527.4,6533.6,6526.6,830,3,
|
||||
"['6526.6', '6526.8', '6527.0', '6527.2', '6527.6', '6528.2', '6528.4', '6528.6', '6529.0', '6529.2', '6529.6', '6529.8', '6530.0', '6530.2', '6530.4', '6530.6', '6530.8', '6531.0', '6531.2', '6531.4', '6531.6', '6531.8', '6532.0', '6532.2', '6532.4', '6532.6', '6532.8', '6533.0', '6533.2', '6533.4']","[0, 0, 6, 3, 5, 1, 0, 11, 4, 9, 12, 8, 13, 10, 1, 2, 5, 11, 6, 0, 7, 21, 8, 9, 8, 18, 34, 48, 18, 9]","[2, 5, 41, 0, 12, 0, 8, 5, 5, 2, 0, 31, 9, 21, 0, 0, 9, 0, 13, 6, 1, 30, 51, 9, 27, 8, 8, 16, 0, 0]",IM2503,2025-03-12 14:40:00,-32,6532.0,6527.6,6533.4,6526.6,750,0,
|
||||
"['6526.2', '6526.6', '6526.8', '6527.0', '6527.2', '6527.4', '6527.6', '6527.8', '6528.0', '6528.2', '6528.4', '6528.6', '6528.8', '6529.0', '6529.2', '6529.4', '6529.6', '6529.8', '6530.0', '6530.2', '6530.4', '6530.6', '6530.8', '6531.0', '6531.2', '6531.4', '6531.6', '6531.8', '6532.0', '6532.2', '6532.4', '6532.6', '6532.8', '6533.0', '6533.2', '6533.4', '6533.6', '6533.8']","[0, 0, 7, 0, 11, 0, 0, 0, 10, 26, 1, 0, 2, 8, 0, 4, 24, 1, 1, 7, 7, 4, 4, 0, 0, 0, 12, 3, 10, 0, 7, 24, 31, 29, 4, 20, 37, 12]","[22, 15, 0, 5, 4, 16, 6, 12, 13, 7, 0, 1, 8, 10, 7, 12, 0, 3, 18, 1, 8, 3, 7, 4, 8, 2, 0, 0, 17, 6, 8, 66, 9, 12, 3, 0, 10, 0]",IM2503,2025-03-12 14:42:00,-17,6527.0,6532.0,6533.8,6526.2,745,-1,
|
||||
"['6523.4', '6523.6', '6524.0', '6524.2', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.2', '6526.4', '6526.6', '6526.8', '6527.0', '6527.2', '6527.4', '6527.6', '6527.8', '6528.0', '6528.2', '6528.4', '6528.6', '6528.8', '6529.0', '6529.2']","[0, 2, 3, 38, 44, 12, 14, 32, 35, 26, 2, 16, 7, 16, 6, 35, 2, 14, 7, 18, 20, 0, 22, 20, 17, 15, 19, 11, 14]","[9, 8, 45, 21, 37, 13, 26, 28, 3, 38, 20, 3, 27, 16, 5, 3, 27, 18, 6, 13, 0, 24, 23, 20, 22, 7, 1, 0, 0]",IM2503,2025-03-12 14:44:00,4,6525.0,6527.4,6529.2,6523.4,1022,0,
|
||||
"['6518.8', '6519.0', '6519.2', '6520.2', '6520.6', '6521.0', '6521.2', '6521.4', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.4', '6523.6', '6523.8', '6524.0', '6524.4', '6524.6', '6524.8', '6525.0', '6525.2', '6525.4', '6525.6', '6525.8', '6526.0', '6526.2', '6526.4', '6526.6', '6526.8', '6527.0', '6527.4', '6527.8']","[0, 0, 30, 39, 0, 10, 3, 22, 6, 9, 29, 11, 4, 44, 3, 14, 10, 24, 19, 11, 10, 10, 3, 5, 13, 3, 7, 2, 7, 5, 21, 2, 1, 3, 0, 5]","[17, 21, 0, 33, 9, 34, 12, 0, 6, 20, 21, 11, 4, 12, 17, 41, 17, 14, 3, 5, 21, 4, 0, 5, 3, 13, 19, 3, 3, 8, 9, 14, 7, 5, 5, 0]",IM2503,2025-03-12 14:46:00,-31,6522.8,6524.8,6527.8,6518.8,965,0,
|
||||
"['6507.4', '6507.6', '6507.8', '6508.0', '6508.2', '6508.6', '6509.0', '6509.4', '6510.0', '6510.2', '6510.4', '6511.0', '6511.2', '6511.6', '6512.0', '6512.2', '6512.4', '6512.6', '6513.0', '6513.2', '6513.4', '6513.8', '6514.0', '6514.2', '6515.0', '6515.2', '6515.4', '6515.6', '6516.2', '6516.6', '6516.8', '6517.0', '6517.2', '6517.4', '6517.6', '6517.8', '6518.0', '6518.2', '6518.4', '6518.6', '6518.8', '6519.0', '6519.2', '6519.4', '6519.6', '6519.8', '6520.0', '6520.2', '6520.4', '6521.0', '6521.4', '6521.6', '6521.8', '6522.0', '6522.2', '6522.4', '6522.6', '6522.8', '6523.0', '6523.2', '6523.6', '6523.8', '6524.0', '6524.2', '6524.4', '6524.6']","[0, 13, 8, 19, 18, 28, 0, 0, 11, 3, 13, 12, 26, 0, 15, 10, 26, 5, 4, 29, 0, 9, 14, 7, 0, 0, 0, 8, 0, 0, 3, 0, 2, 5, 10, 0, 5, 19, 13, 0, 6, 59, 16, 34, 36, 27, 0, 33, 1, 0, 0, 0, 0, 0, 3, 3, 0, 0, 2, 1, 5, 2, 7, 2, 3, 8]","[13, 0, 18, 119, 6, 31, 17, 11, 35, 54, 27, 0, 66, 18, 21, 13, 4, 0, 39, 2, 6, 10, 16, 0, 52, 18, 22, 0, 3, 9, 12, 11, 10, 19, 27, 9, 11, 14, 18, 8, 12, 16, 12, 0, 35, 2, 7, 0, 0, 12, 10, 4, 9, 1, 0, 0, 4, 9, 1, 0, 3, 12, 6, 0, 0, 0]",IM2503,2025-03-12 14:48:00,-341,6507.4,6522.8,6524.6,6507.4,1712,-2,
|
||||
"['6506.4', '6506.6', '6507.0', '6507.2', '6507.4', '6507.6', '6507.8', '6508.0', '6508.2', '6508.4', '6508.6', '6508.8', '6509.0', '6509.2', '6509.4', '6509.6', '6509.8', '6510.0', '6510.2', '6510.4', '6510.6', '6510.8', '6511.0', '6511.2', '6511.4', '6511.6', '6511.8', '6512.0', '6512.2', '6512.4']","[0, 0, 4, 0, 39, 9, 4, 26, 22, 37, 10, 59, 90, 27, 14, 30, 39, 62, 7, 0, 51, 9, 22, 23, 7, 19, 3, 13, 11, 14]","[19, 55, 31, 15, 2, 27, 46, 93, 58, 29, 21, 11, 47, 2, 3, 34, 8, 51, 19, 5, 26, 30, 15, 15, 7, 18, 8, 10, 3, 6]",IM2503,2025-03-12 14:50:00,-63,6509.4,6508.4,6512.4,6506.4,1583,-1,
|
||||
"['6506.0', '6506.2', '6506.4', '6506.6', '6506.8', '6507.0', '6507.2', '6507.4', '6507.6', '6507.8', '6508.0', '6508.2', '6508.4', '6508.6', '6508.8', '6509.0', '6509.2', '6509.4', '6509.6', '6509.8', '6510.0', '6510.2', '6510.4', '6510.6', '6510.8', '6511.0', '6511.2']","[0, 18, 6, 0, 0, 0, 21, 83, 132, 0, 18, 34, 8, 53, 14, 27, 26, 18, 20, 55, 52, 14, 12, 30, 5, 40, 24]","[34, 2, 22, 3, 77, 31, 58, 17, 84, 19, 18, 23, 20, 31, 4, 80, 25, 15, 21, 26, 37, 0, 15, 43, 0, 7, 0]",IM2503,2025-03-12 14:52:00,-2,6509.2,6509.0,6511.2,6506.0,1600,-1,
|
||||
"['6502.0', '6502.2', '6502.4', '6502.6', '6502.8', '6503.0', '6503.4', '6503.6', '6503.8', '6504.0', '6504.2', '6504.4', '6504.6', '6504.8', '6505.0', '6505.2', '6505.4', '6505.6', '6505.8', '6506.0', '6506.8', '6507.0', '6507.4', '6507.6', '6507.8', '6508.0', '6508.2', '6508.4', '6508.6', '6508.8', '6509.0', '6509.2', '6509.4', '6509.6', '6509.8', '6510.0', '6510.2', '6510.4', '6510.6']","[0, 0, 0, 42, 0, 21, 0, 41, 0, 86, 32, 76, 54, 60, 159, 24, 52, 24, 59, 0, 0, 0, 0, 29, 2, 4, 6, 0, 7, 11, 7, 14, 0, 3, 6, 16, 8, 8, 24]","[13, 11, 36, 15, 17, 45, 15, 81, 65, 56, 14, 102, 38, 29, 115, 13, 6, 12, 0, 26, 7, 25, 4, 14, 0, 22, 10, 8, 8, 0, 5, 7, 30, 0, 14, 20, 0, 6, 29]",IM2503,2025-03-12 14:54:00,-43,6504.4,6509.2,6510.6,6502.0,1930,0,
|
||||
"['6504.0', '6504.2', '6504.4', '6504.6', '6504.8', '6505.0', '6505.2', '6505.4', '6505.8', '6506.0', '6506.2', '6506.4', '6506.6', '6506.8', '6507.0', '6507.2', '6507.4', '6507.6', '6507.8', '6508.0', '6508.2', '6508.4', '6508.6', '6509.2', '6509.4', '6509.6', '6509.8', '6510.0', '6510.2', '6510.4', '6510.6', '6510.8', '6511.0', '6511.2', '6511.4', '6511.6', '6511.8', '6512.0', '6512.4']","[0, 14, 6, 17, 18, 36, 13, 10, 17, 4, 9, 13, 0, 12, 0, 0, 42, 29, 8, 9, 8, 3, 22, 9, 20, 46, 0, 22, 27, 25, 53, 63, 93, 48, 7, 35, 33, 37, 3]","[37, 31, 6, 7, 5, 0, 0, 0, 7, 0, 0, 8, 6, 14, 22, 11, 18, 30, 0, 0, 0, 0, 16, 9, 29, 6, 29, 0, 44, 23, 46, 61, 9, 37, 2, 45, 3, 0, 0]",IM2503,2025-03-12 14:56:00,250,6511.8,6504.2,6512.4,6504.0,1504,4,
|
||||
"['6511.6', '6511.8', '6512.0', '6512.2', '6512.4', '6512.6', '6512.8', '6513.0', '6513.2', '6513.4', '6513.6', '6513.8', '6514.0', '6514.2', '6514.6', '6514.8', '6515.0', '6515.2', '6515.4', '6515.6', '6515.8', '6516.0', '6516.2', '6516.4', '6516.6', '6516.8', '6517.0', '6517.2', '6517.4', '6517.6', '6517.8', '6518.0', '6518.2', '6518.4', '6518.6', '6518.8', '6519.0', '6519.4', '6519.6', '6519.8', '6520.0']","[0, 0, 7, 5, 31, 42, 80, 53, 17, 19, 34, 83, 19, 8, 16, 21, 50, 6, 12, 8, 15, 43, 26, 36, 51, 2, 47, 28, 61, 36, 14, 23, 5, 19, 4, 26, 42, 37, 6, 30, 166]","[1, 32, 17, 15, 18, 7, 38, 6, 0, 20, 59, 12, 20, 15, 8, 37, 8, 15, 2, 10, 4, 0, 11, 25, 44, 39, 31, 0, 13, 0, 11, 0, 16, 4, 24, 21, 16, 34, 7, 3, 0]",IM2503,2025-03-12 14:58:00,585,6518.8,6512.4,6520.0,6511.6,2041,0,
|
||||
"['6513.0', '6513.2', '6513.4', '6513.6', '6513.8', '6514.0', '6514.2', '6514.4', '6514.6', '6514.8', '6515.0', '6515.2', '6515.4', '6515.6', '6515.8', '6516.0', '6516.2', '6516.4', '6516.6', '6517.0', '6517.2', '6517.6', '6517.8', '6518.0', '6518.2', '6518.4', '6518.6', '6518.8', '6519.0', '6519.2', '6519.4', '6519.6', '6519.8', '6520.0', '6520.6', '6520.8']","[14, 0, 45, 67, 68, 40, 19, 0, 49, 105, 0, 33, 10, 0, 0, 45, 30, 24, 0, 2, 0, 0, 0, 8, 11, 15, 39, 13, 24, 9, 24, 40, 5, 7, 0, 24]","[29, 42, 40, 68, 71, 53, 4, 25, 4, 42, 10, 9, 0, 47, 43, 55, 0, 0, 3, 21, 2, 16, 24, 18, 6, 0, 25, 70, 41, 13, 12, 0, 35, 11, 12, 17]",IM2503,2025-03-12 15:00:00,-98,6514.8,6518.8,6520.8,6513.0,1881,-1,
|
||||
|
302
999.账户相关/simnow_trader/traderdata/0312/app.py
Normal file
302
999.账户相关/simnow_trader/traderdata/0312/app.py
Normal file
@@ -0,0 +1,302 @@
|
||||
from flask import Flask, render_template, jsonify, make_response
|
||||
from flask_socketio import SocketIO
|
||||
import pandas as pd
|
||||
import numpy as np
|
||||
import os
|
||||
import ast
|
||||
import time
|
||||
from datetime import datetime
|
||||
|
||||
app = Flask(__name__)
|
||||
app.config['SECRET_KEY'] = 'secret!'
|
||||
socketio = SocketIO(app)
|
||||
|
||||
# 添加安全响应头
|
||||
@app.after_request
|
||||
def add_security_headers(response):
|
||||
response.headers['X-Content-Type-Options'] = 'nosniff'
|
||||
response.headers['Cache-Control'] = 'no-store, no-cache, must-revalidate, max-age=0'
|
||||
response.headers['Pragma'] = 'no-cache'
|
||||
response.headers['Expires'] = '0'
|
||||
return response
|
||||
|
||||
# 加入邮件通知
|
||||
import smtplib
|
||||
from email.mime.text import MIMEText # 导入 MIMEText 类发送纯文本邮件
|
||||
from email.mime.multipart import (
|
||||
MIMEMultipart,
|
||||
)
|
||||
|
||||
import akshare as ak
|
||||
|
||||
# from email.mime.application import MIMEApplication
|
||||
|
||||
# 配置邮件信息
|
||||
receivers = ["240884432@qq.com"] # 设置邮件接收人地址
|
||||
subject = "TD_Simnow_Signal" # 设置邮件主题 订单流策略交易信号
|
||||
|
||||
# 配置邮件服务器信息
|
||||
smtp_server = "smtp.qq.com" # 设置发送邮件的 SMTP 服务器地址
|
||||
smtp_port = 465 # 设置发送邮件的 SMTP 服务器端口号,一般为 25 端口 465
|
||||
sender = "240884432@qq.com" # 设置发送邮件的邮箱地址
|
||||
username = "240884432@qq.com" # 设置发送邮件的邮箱用户名
|
||||
password = "osjyjmbqrzxtbjbf" # zrmpcgttataabhjh,设置发送邮件的邮箱密码或授权码
|
||||
|
||||
last_sent_time = 0
|
||||
count = 0
|
||||
time_period = 30
|
||||
|
||||
# current_dir = os.path.dirname(os.path.abspath(__file__))
|
||||
# os.chdir(current_dir)
|
||||
# print("已更改为新的工作目录:", current_dir)
|
||||
|
||||
# 获取当前工作目录
|
||||
current_directory = os.getcwd()
|
||||
print("当前工作目录:", current_directory)
|
||||
# 设置新的工作目录
|
||||
new_directory = r"D:\Git_Nas\Quant_Code\999.账户相关\test\0312"
|
||||
os.chdir(new_directory)
|
||||
# 验证新的工作目录
|
||||
updated_directory = os.getcwd()
|
||||
print("已更改为新的工作目录:", updated_directory)
|
||||
|
||||
# 获取当前文件夹中所有包含"ofdata"字符的CSV文件
|
||||
def get_csv_files():
|
||||
files = {}
|
||||
for filename in os.listdir():
|
||||
if "ofdata" in filename and filename.endswith(".csv"):
|
||||
files[filename] = os.path.join(os.getcwd(), filename)
|
||||
return files
|
||||
|
||||
def send_mail(text):
|
||||
global last_sent_time, count
|
||||
|
||||
# 检查时间间隔
|
||||
current_time = time.time()
|
||||
print('count:',count)
|
||||
if count == 1 and current_time - last_sent_time <1:
|
||||
print("current_time:",current_time)
|
||||
print("last_sent_time:",last_sent_time)
|
||||
print("一分钟内已发送过邮件,本次跳过")
|
||||
return
|
||||
elif count ==1 and current_time - last_sent_time >1:
|
||||
count = 0
|
||||
if count == 0 and current_time - last_sent_time < 1:
|
||||
msg = MIMEMultipart()
|
||||
msg["From"] = sender
|
||||
msg["To"] = ";".join(receivers)
|
||||
msg["Subject"] = subject
|
||||
html_content = f"""
|
||||
<html>
|
||||
<body>
|
||||
<p>以下是数据的最后一列:</p>
|
||||
{text}
|
||||
</body>
|
||||
</html>
|
||||
"""
|
||||
msg.attach(MIMEText(html_content, 'html'))
|
||||
smtp = smtplib.SMTP_SSL(smtp_server, smtp_port)
|
||||
smtp.login(username, password)
|
||||
smtp.sendmail(sender, receivers, msg.as_string())
|
||||
count = 1
|
||||
smtp.quit()
|
||||
|
||||
# 根据文件路径加载数据,只读取前12列
|
||||
def load_data(file_path):
|
||||
df = pd.read_csv(file_path, usecols=range(12)).iloc[-600:] # 只读取前12列
|
||||
|
||||
df = df.drop_duplicates(subset='datetime', keep='first').reset_index(drop=True)
|
||||
# df = df[df['high'] != df['low']]
|
||||
df["delta"] = df["delta"].astype(float)
|
||||
df['datetime'] = pd.to_datetime(df['datetime'],format='ISO8601')#, dayfirst=True, format='mixed'
|
||||
# df['delta累计'] = df.groupby(df['datetime'].dt.date)['delta'].cumsum()
|
||||
|
||||
# 自定义分组逻辑:前一日21:00至当日15:00为一天
|
||||
def get_trading_day(dt):
|
||||
# 如果时间在21:00之后,属于下一个交易日
|
||||
if dt.hour >= 21:
|
||||
return (dt + pd.Timedelta(days=1)).date()
|
||||
# 如果时间在15:00之前,属于当前交易日
|
||||
elif dt.hour < 15:
|
||||
return dt.date()
|
||||
# 15:00-21:00之间的数据属于当前交易日
|
||||
else:
|
||||
return dt.date()
|
||||
|
||||
# 添加交易日列并转换为字符串
|
||||
df['trading_day'] = df['datetime'].apply(get_trading_day)
|
||||
df['trading_day'] = df['trading_day'].astype(str) # 将日期转换为字符串
|
||||
|
||||
# 按交易日计算delta累计
|
||||
df['delta累计'] = df.groupby('trading_day')['delta'].cumsum()
|
||||
|
||||
df = df.fillna('缺值')
|
||||
df['终极平滑值'],df['趋势方向'] = ultimate_smoother(df['close'],time_period)
|
||||
df['datetime'] = df['datetime'].dt.strftime("%Y-%m-%d %H:%M:%S")
|
||||
df['POC'] = add_poc_column(df)
|
||||
df['最终趋势'] = finall_trend(df['delta累计'],df['趋势方向'])
|
||||
# print(df.tail(1))
|
||||
# print(type(df['delta累计'].iloc[-1]))
|
||||
|
||||
if len(df) >=time_period and (df['最终趋势'].iloc[-1] != df['最终趋势'].iloc[-2]):
|
||||
table_text = df.iloc[:,3:].tail(1).to_html(index=False) #price,Ask,Bid,symbol,datetime,delta,close,open,high,low,volume,dj
|
||||
send_mail(table_text)
|
||||
else:
|
||||
pass
|
||||
return df.to_dict(orient="records")#.iloc[-48:]
|
||||
# return df.iloc[-60:].iloc[::-1].to_dict(orient="records")
|
||||
|
||||
def finall_trend(delta_sum,trend):
|
||||
f_trend = [None]*(len(delta_sum))
|
||||
# delta_sum = delta_sum.astype(float)
|
||||
for i in range(len(delta_sum)):
|
||||
if (delta_sum[i] == '缺值') or (trend[i] == '缺值'):
|
||||
f_trend[i] = '方向不明'
|
||||
# return f_trend
|
||||
else:
|
||||
if delta_sum[i] > 0 and (trend[i] == '多头趋势'):
|
||||
f_trend[i] = '强多头'
|
||||
elif delta_sum[i] < 0 and (trend[i] == '空头趋势'):
|
||||
f_trend[i] = '强空头'
|
||||
else:
|
||||
f_trend[i] = '方向不明'
|
||||
return f_trend
|
||||
|
||||
|
||||
|
||||
def safe_literal_eval(x):
|
||||
"""带异常处理的安全转换"""
|
||||
try:
|
||||
return ast.literal_eval(x)
|
||||
except:
|
||||
return [] # 返回空列表作为占位符
|
||||
|
||||
def add_poc_column(df):
|
||||
# 安全转换列数据
|
||||
df['price'] = df['price'].apply(safe_literal_eval)
|
||||
df['Ask'] = df['Ask'].apply(lambda x: list(map(int, safe_literal_eval(x))))
|
||||
df['Bid'] = df['Bid'].apply(lambda x: list(map(int, safe_literal_eval(x))))
|
||||
|
||||
# 定义处理函数(带数据验证)
|
||||
def find_poc(row):
|
||||
# 验证三个列表长度一致且非空
|
||||
if not (len(row['price']) == len(row['Ask']) == len(row['Bid']) > 0):
|
||||
return '缺值' # 返回空值标记异常数据
|
||||
|
||||
sums = [a + b for a, b in zip(row['Ask'], row['Bid'])]
|
||||
try:
|
||||
max_index = sums.index(max(sums))
|
||||
return row['price'][max_index]
|
||||
except ValueError:
|
||||
return '缺值' # 处理空求和列表情况
|
||||
|
||||
# 应用处理函数
|
||||
df['POC'] = df.apply(find_poc, axis=1)
|
||||
|
||||
# 可选:统计异常数据
|
||||
error_count = df['POC'].isnull().sum()
|
||||
if error_count > 0:
|
||||
print(f"警告:发现 {error_count} 行异常数据(已标记为NaN)")
|
||||
|
||||
return df['POC']
|
||||
|
||||
|
||||
def ultimate_smoother(price,period):
|
||||
# 初始化变量(修正角度单位为弧度)
|
||||
a1 = np.exp(-1.414 * np.pi / period)
|
||||
b1 = 2 * a1 * np.cos(1.414 * np.pi / period) # 将180改为np.pi
|
||||
c2 = b1
|
||||
c3 = -a1 ** 2
|
||||
c1 = (1 + c2 - c3) / 4
|
||||
|
||||
# 准备输出序列
|
||||
us = np.zeros(len(price))
|
||||
us_new = np.zeros(len(price))
|
||||
trend = [None]*(len(price))
|
||||
ma_close = np.zeros(len(price))
|
||||
|
||||
# 前4个点用原始价格初始化
|
||||
for i in range(len(price)):
|
||||
if i < 4:
|
||||
us[i] = price.iloc[i]
|
||||
else:
|
||||
# 应用递归公式
|
||||
us[i] = (1 - c1) * price.iloc[i] + (2 * c1 - c2) * price.iloc[i-1] \
|
||||
- (c1 + c3) * price.iloc[i-2] + c2 * us[i-1] + c3 * us[i-2]
|
||||
|
||||
us_new = np.around(us, decimals=2)
|
||||
ma_close = price.rolling(window=4*period).mean()#5*
|
||||
|
||||
# if us_new[i]>price[i] and ma_close[i]>price[i]:
|
||||
# trend[i] = '空头趋势'
|
||||
# elif us_new[i]<price[i] and ma_close[i]<price[i]:
|
||||
# trend[i] = '多头趋势'
|
||||
# else:
|
||||
# trend[i] = '无趋势'
|
||||
|
||||
if us_new[i] < ma_close.iloc[i]:
|
||||
trend[i] = '空头趋势'
|
||||
elif us_new[i] > ma_close.iloc[i]:
|
||||
trend[i] = '多头趋势'
|
||||
else:
|
||||
trend[i] = '无趋势'
|
||||
|
||||
|
||||
return us_new,trend
|
||||
|
||||
|
||||
@app.route("/")
|
||||
def index():
|
||||
return render_template("index.html")
|
||||
|
||||
@app.route("/kline")
|
||||
def kline():
|
||||
return render_template("kline.html")
|
||||
|
||||
@app.route("/api/data")
|
||||
def get_data():
|
||||
try:
|
||||
files = get_csv_files()
|
||||
data = {}
|
||||
for symbol, filename in files.items():
|
||||
loaded_data = load_data(filename)
|
||||
if loaded_data:
|
||||
data[symbol] = loaded_data
|
||||
return jsonify(data)
|
||||
except Exception as e:
|
||||
return jsonify({"error": str(e)})
|
||||
|
||||
def should_update():
|
||||
"""检查是否应该在当前时间更新数据"""
|
||||
now = datetime.now()
|
||||
# 检查是否是整点5分钟
|
||||
if now.minute % 2 == 0:
|
||||
# 检查是否在5秒内
|
||||
if now.second < 2:
|
||||
return True
|
||||
return False
|
||||
|
||||
def background_thread():
|
||||
"""后台线程,在每整点5分钟的5秒内发送数据更新"""
|
||||
while True:
|
||||
if should_update():
|
||||
files = get_csv_files()
|
||||
data = {}
|
||||
for file_name, file_path in files.items():
|
||||
data[file_name] = load_data(file_path)
|
||||
socketio.emit('data_update', data)
|
||||
print(f"数据更新完成 - {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}")
|
||||
time.sleep(1) # 每秒检查一次
|
||||
|
||||
@socketio.on('connect')
|
||||
def handle_connect():
|
||||
print('Client connected')
|
||||
# 启动后台线程
|
||||
socketio.start_background_task(background_thread)
|
||||
|
||||
@socketio.on('disconnect')
|
||||
def handle_disconnect():
|
||||
print('Client disconnected')
|
||||
|
||||
if __name__ == "__main__":
|
||||
socketio.run(app, host='0.0.0.0', port=5000, debug=True) # 监听所有网络接口
|
||||
135
999.账户相关/simnow_trader/traderdata/0312/templates/index.html
Normal file
135
999.账户相关/simnow_trader/traderdata/0312/templates/index.html
Normal file
@@ -0,0 +1,135 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>订单流实时数据监控</title>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.11.5/css/dataTables.bootstrap5.min.css">
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.0.1/socket.io.js"></script>
|
||||
<style>
|
||||
table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
table, th, td {
|
||||
border: 1px solid black;
|
||||
}
|
||||
th, td {
|
||||
padding: 8px;
|
||||
text-align: center;
|
||||
}
|
||||
button {
|
||||
margin: 10px;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active-symbol {
|
||||
background-color: #e0e0e0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Real-Time CSV Data Viewer</h1>
|
||||
|
||||
<div id="symbol-buttons">
|
||||
<!-- 动态生成按钮 -->
|
||||
</div>
|
||||
|
||||
<h3>Data for <span id="current-symbol">Loading...</span></h3>
|
||||
<table id="data-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Symbol</th>
|
||||
<th>Datetime</th>
|
||||
<th>Delta</th>
|
||||
<th>Close</th>
|
||||
<th>Open</th>
|
||||
<th>High</th>
|
||||
<th>Low</th>
|
||||
<th>Volume</th>
|
||||
<th>DJ</th>
|
||||
<th>Delta累计</th>
|
||||
<th>POC</th>
|
||||
<th>终极平滑值</th>
|
||||
<th>趋势方向</th>
|
||||
<th>最终趋势</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<script>
|
||||
let currentSymbol = null;
|
||||
const socket = io();
|
||||
const symbolButtons = document.getElementById('symbol-buttons');
|
||||
const currentSymbolDisplay = document.getElementById('current-symbol');
|
||||
const tableBody = document.querySelector("#data-table tbody");
|
||||
|
||||
// 初始化数据
|
||||
fetch('/api/data')
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
updateSymbolButtons(data);
|
||||
if (Object.keys(data).length > 0) {
|
||||
currentSymbol = Object.keys(data)[0];
|
||||
updateTable(data[currentSymbol]);
|
||||
}
|
||||
});
|
||||
|
||||
// WebSocket事件处理
|
||||
socket.on('connect', () => {
|
||||
console.log('Connected to server');
|
||||
});
|
||||
|
||||
socket.on('data_update', (data) => {
|
||||
updateSymbolButtons(data);
|
||||
if (currentSymbol && data[currentSymbol]) {
|
||||
updateTable(data[currentSymbol]);
|
||||
}
|
||||
});
|
||||
|
||||
function updateSymbolButtons(data) {
|
||||
symbolButtons.innerHTML = '';
|
||||
Object.keys(data).forEach(symbol => {
|
||||
const button = document.createElement('button');
|
||||
button.textContent = symbol;
|
||||
button.onclick = () => {
|
||||
currentSymbol = symbol;
|
||||
updateTable(data[symbol]);
|
||||
};
|
||||
if (symbol === currentSymbol) {
|
||||
button.classList.add('active-symbol');
|
||||
}
|
||||
symbolButtons.appendChild(button);
|
||||
});
|
||||
}
|
||||
|
||||
function updateTable(data) {
|
||||
currentSymbolDisplay.textContent = currentSymbol;
|
||||
tableBody.innerHTML = '';
|
||||
data.forEach(row => {
|
||||
const rowElement = document.createElement('tr');
|
||||
rowElement.innerHTML = `
|
||||
<td>${row.symbol || ''}</td>
|
||||
<td>${row.datetime || ''}</td>
|
||||
<td>${row.delta || ''}</td>
|
||||
<td>${row.close || ''}</td>
|
||||
<td>${row.open || ''}</td>
|
||||
<td>${row.high || ''}</td>
|
||||
<td>${row.low || ''}</td>
|
||||
<td>${row.volume || ''}</td>
|
||||
<td>${row.dj !== undefined ? row.dj : ''}</td>
|
||||
<td>${row.delta累计 || ''}</td>
|
||||
<td>${row.POC || ''}</td>
|
||||
<td>${row.终极平滑值 || ''}</td>
|
||||
<td>${row.趋势方向 || ''}</td>
|
||||
<td>${row.最终趋势 || ''}</td>
|
||||
`;
|
||||
tableBody.appendChild(rowElement);
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
531
999.账户相关/simnow_trader/traderdata/0312/templates/kline.html
Normal file
531
999.账户相关/simnow_trader/traderdata/0312/templates/kline.html
Normal file
@@ -0,0 +1,531 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-Content-Type-Options" content="nosniff">
|
||||
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
|
||||
<meta http-equiv="Pragma" content="no-cache">
|
||||
<meta http-equiv="Expires" content="0">
|
||||
<title>实时K线图</title>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.0.1/socket.io.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/echarts@5.4.3/dist/echarts.min.js"></script>
|
||||
<style>
|
||||
#kline-chart {
|
||||
width: 100%;
|
||||
height: 800px;
|
||||
margin: 20px auto;
|
||||
}
|
||||
.symbol-selector {
|
||||
margin: 20px;
|
||||
text-align: center;
|
||||
}
|
||||
button {
|
||||
margin: 10px;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active-symbol {
|
||||
background-color: #e0e0e0;
|
||||
}
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="symbol-selector" id="symbol-buttons">
|
||||
<!-- 动态生成按钮 -->
|
||||
</div>
|
||||
<div id="kline-chart"></div>
|
||||
|
||||
<script>
|
||||
let currentSymbol = null;
|
||||
const socket = io();
|
||||
const symbolButtons = document.getElementById('symbol-buttons');
|
||||
let chart = null;
|
||||
|
||||
// 初始化图表
|
||||
function initChart() {
|
||||
if (!chart) {
|
||||
chart = echarts.init(document.getElementById('kline-chart'));
|
||||
}
|
||||
}
|
||||
|
||||
// 初始化数据
|
||||
fetch('/api/data')
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
updateSymbolButtons(data);
|
||||
if (Object.keys(data).length > 0) {
|
||||
currentSymbol = Object.keys(data)[0];
|
||||
updateChart(data[currentSymbol]);
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Error fetching data:', error);
|
||||
});
|
||||
|
||||
// WebSocket事件处理
|
||||
socket.on('connect', () => {
|
||||
console.log('Connected to server');
|
||||
});
|
||||
|
||||
socket.on('data_update', (data) => {
|
||||
updateSymbolButtons(data);
|
||||
if (currentSymbol && data[currentSymbol]) {
|
||||
updateChart(data[currentSymbol]);
|
||||
}
|
||||
});
|
||||
|
||||
function updateSymbolButtons(data) {
|
||||
symbolButtons.innerHTML = '';
|
||||
Object.keys(data).forEach(symbol => {
|
||||
const button = document.createElement('button');
|
||||
button.textContent = symbol;
|
||||
button.onclick = () => {
|
||||
currentSymbol = symbol;
|
||||
updateChart(data[symbol]);
|
||||
};
|
||||
if (symbol === currentSymbol) {
|
||||
button.classList.add('active-symbol');
|
||||
}
|
||||
symbolButtons.appendChild(button);
|
||||
});
|
||||
}
|
||||
|
||||
function updateChart(data) {
|
||||
initChart();
|
||||
|
||||
// 准备数据
|
||||
const dates = data.map(item => item.datetime);
|
||||
const klineData = data.map(item => [
|
||||
parseFloat(item.open),
|
||||
parseFloat(item.close),
|
||||
parseFloat(item.low),
|
||||
parseFloat(item.high)
|
||||
]);
|
||||
const volumes = data.map(item => parseFloat(item.volume));
|
||||
const ultimateValues = data.map(item => parseFloat(item.终极平滑值));
|
||||
const deltaSums = data.map(item => parseFloat(item.delta累计));
|
||||
const djValues = data.map(item => parseFloat(item.dj));
|
||||
const deltaValues = data.map(item => parseFloat(item.delta));
|
||||
|
||||
// 处理POC数据,将缺值替换为前一个有效值
|
||||
let pocValues = data.map(item => item.POC);
|
||||
let lastValidPoc = null;
|
||||
pocValues = pocValues.map(value => {
|
||||
if (value === '缺值') {
|
||||
return lastValidPoc;
|
||||
} else {
|
||||
lastValidPoc = parseFloat(value);
|
||||
return lastValidPoc;
|
||||
}
|
||||
});
|
||||
|
||||
// 计算120日均线
|
||||
const closes = data.map(item => parseFloat(item.close));
|
||||
const ma120 = calculateMA(closes, 120);
|
||||
|
||||
// 处理 delta 累计数据,用于标记箭头
|
||||
const arrowMarks = [];
|
||||
for (let i = 1; i < deltaSums.length; i++) {
|
||||
if (deltaSums[i - 1] < 0 && deltaSums[i] > 0 && ultimateValues[i] > ma120[i]) {
|
||||
// 前一个值小于0,后一个值大于0,标记向上箭头
|
||||
arrowMarks.push({
|
||||
coord: [dates[i], data[i].low - 0.1], // 标记在 K 线下方
|
||||
symbol: 'path://M0,10 L5,0 L10,10 Z',
|
||||
symbolSize: [10, 10],
|
||||
symbolOffset: [0, 5],
|
||||
itemStyle: {
|
||||
color: 'red'
|
||||
}
|
||||
});
|
||||
} else if (deltaSums[i - 1] > 0 && deltaSums[i] < 0 && ultimateValues[i] < ma120[i] ) {
|
||||
// 前一个值大于0,后一个值小于0,标记向下箭头
|
||||
arrowMarks.push({
|
||||
coord: [dates[i], data[i].high + 0.1], // 标记在 K 线上方
|
||||
symbol: 'path://M0,0 L5,10 L10,0 Z',
|
||||
symbolSize: [10, 10],
|
||||
symbolOffset: [0, -5],
|
||||
itemStyle: {
|
||||
color: 'green'
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// 处理 dj 数据,用于标记圆
|
||||
const circleMarks = [];
|
||||
for (let i = 0; i < djValues.length; i++) {
|
||||
let startIndex = Math.max(0, i - 119);
|
||||
let recentDJValues = djValues.slice(startIndex, i + 1);
|
||||
let maxDJ = Math.max(...recentDJValues);
|
||||
let minDJ = Math.min(...recentDJValues);
|
||||
if (djValues[i] >= maxDJ * 0.8 && ultimateValues[i] > ma120[i]) {
|
||||
// dj 大于等于最近120个dj值的最大值的80%,标记向上的红色圆
|
||||
circleMarks.push({
|
||||
coord: [dates[i], data[i].low - 5.1], // 标记在 K 线下方
|
||||
symbol: 'circle',
|
||||
symbolSize: 10,
|
||||
symbolOffset: [0, 5],
|
||||
itemStyle: {
|
||||
color: 'red'
|
||||
}
|
||||
});
|
||||
} else if (djValues[i] <= minDJ * 0.8 && ultimateValues[i] < ma120[i]) {
|
||||
// dj 小于等于最近120个dj值的最小值的80%,标记向下的绿色圆
|
||||
circleMarks.push({
|
||||
coord: [dates[i], data[i].high + 5.1], // 标记在 K 线上方
|
||||
symbol: 'circle',
|
||||
symbolSize: 10,
|
||||
symbolOffset: [0, -5],
|
||||
itemStyle: {
|
||||
color: 'green'
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// 处理 delta 值数据,用于标记方块
|
||||
const squareMarks = [];
|
||||
for (let i = 0; i < deltaValues.length; i++) {
|
||||
let startIndex = Math.max(0, i - 119);
|
||||
let recentDeltaValues = deltaValues.slice(startIndex, i + 1);
|
||||
let maxDelta = Math.max(...recentDeltaValues);
|
||||
let minDelta = Math.min(...recentDeltaValues);
|
||||
if (deltaValues[i] >= maxDelta * 0.8 && ultimateValues[i] > ma120[i]) {
|
||||
// delta 值大于等于最近120个delta值的最大值的80%,标记向上的红色方块
|
||||
squareMarks.push({
|
||||
coord: [dates[i], data[i].low - 10.1],
|
||||
symbol: 'rect',
|
||||
symbolSize: 10,
|
||||
symbolOffset: [0, 5],
|
||||
itemStyle: {
|
||||
color: 'red'
|
||||
}
|
||||
});
|
||||
} else if (deltaValues[i] <= minDelta * 0.8 && ultimateValues[i] < ma120[i]) {
|
||||
// delta 值小于等于最近120个delta值的最小值的80%,标记向上的绿色方块
|
||||
squareMarks.push({
|
||||
coord: [dates[i], data[i].high + 10.1],
|
||||
symbol: 'rect',
|
||||
symbolSize: 10,
|
||||
symbolOffset: [0, -5],
|
||||
itemStyle: {
|
||||
color: 'green'
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// 合并箭头标记、圆标记和方块标记
|
||||
const allMarks = arrowMarks.concat(circleMarks).concat(squareMarks);
|
||||
|
||||
// 配置图表选项
|
||||
const option = {
|
||||
title: {
|
||||
text: `${currentSymbol} K线图`,
|
||||
left: 'center'
|
||||
},
|
||||
tooltip: {
|
||||
trigger: 'axis',
|
||||
axisPointer: {
|
||||
type: 'cross'
|
||||
}
|
||||
},
|
||||
legend: {
|
||||
data: ['K线', '120日均线', '终极平滑值', 'POC', '成交量', 'Delta累计', 'DJ值', 'Delta值'],
|
||||
top: 30
|
||||
},
|
||||
grid: [
|
||||
{
|
||||
left: '10%',
|
||||
right: '8%',
|
||||
height: '40%'
|
||||
},
|
||||
{
|
||||
left: '10%',
|
||||
right: '8%',
|
||||
top: '50%',
|
||||
height: '10%'
|
||||
},
|
||||
{
|
||||
left: '10%',
|
||||
right: '8%',
|
||||
top: '60%',
|
||||
height: '10%'
|
||||
},
|
||||
{
|
||||
left: '10%',
|
||||
right: '8%',
|
||||
top: '70%',
|
||||
height: '10%'
|
||||
},
|
||||
{
|
||||
left: '10%',
|
||||
right: '8%',
|
||||
top: '80%',
|
||||
height: '10%'
|
||||
}
|
||||
],
|
||||
xAxis: [
|
||||
{
|
||||
type: 'category',
|
||||
data: dates,
|
||||
scale: true,
|
||||
boundaryGap: false,
|
||||
axisLine: {onZero: false},
|
||||
splitLine: {show: false},
|
||||
splitNumber: 20,
|
||||
gridIndex: 0
|
||||
},
|
||||
{
|
||||
type: 'category',
|
||||
gridIndex: 1,
|
||||
data: dates,
|
||||
axisLabel: {show: false}
|
||||
},
|
||||
{
|
||||
type: 'category',
|
||||
gridIndex: 2,
|
||||
data: dates,
|
||||
axisLabel: {show: false}
|
||||
},
|
||||
{
|
||||
type: 'category',
|
||||
gridIndex: 3,
|
||||
data: dates,
|
||||
axisLabel: {show: false}
|
||||
},
|
||||
{
|
||||
type: 'category',
|
||||
gridIndex: 4,
|
||||
data: dates,
|
||||
axisLabel: {show: true}
|
||||
}
|
||||
],
|
||||
yAxis: [
|
||||
{
|
||||
scale: true,
|
||||
splitArea: {
|
||||
show: true
|
||||
},
|
||||
gridIndex: 0
|
||||
},
|
||||
{
|
||||
scale: true,
|
||||
gridIndex: 1,
|
||||
splitNumber: 2,
|
||||
axisLabel: {show: true},
|
||||
axisLine: {show: true},
|
||||
splitLine: {show: false}
|
||||
},
|
||||
{
|
||||
scale: true,
|
||||
gridIndex: 2,
|
||||
splitNumber: 2,
|
||||
axisLabel: {show: true},
|
||||
axisLine: {show: true},
|
||||
splitLine: {show: false}
|
||||
},
|
||||
{
|
||||
scale: true,
|
||||
gridIndex: 3,
|
||||
splitNumber: 2,
|
||||
axisLabel: {show: true},
|
||||
axisLine: {show: true},
|
||||
splitLine: {show: false}
|
||||
},
|
||||
{
|
||||
scale: true,
|
||||
gridIndex: 4,
|
||||
splitNumber: 2,
|
||||
axisLabel: {show: true},
|
||||
axisLine: {show: true},
|
||||
splitLine: {show: false}
|
||||
}
|
||||
],
|
||||
dataZoom: [
|
||||
{
|
||||
type: 'inside',
|
||||
xAxisIndex: [0, 1, 2, 3, 4],
|
||||
start: 50,
|
||||
end: 100
|
||||
},
|
||||
{
|
||||
show: true,
|
||||
xAxisIndex: [0, 1, 2, 3, 4],
|
||||
type: 'slider',
|
||||
bottom: '2%',
|
||||
start: 50,
|
||||
end: 100
|
||||
}
|
||||
],
|
||||
series: [
|
||||
{
|
||||
name: 'K线',
|
||||
type: 'candlestick',
|
||||
data: klineData,
|
||||
itemStyle: {
|
||||
color: 'none', // 空心 K 线,填充颜色设为无
|
||||
color0: 'none',
|
||||
borderColor: '#ef232a',
|
||||
borderColor0: '#14b143',
|
||||
borderWidth: 1
|
||||
},
|
||||
// 添加标记点
|
||||
markPoint: {
|
||||
data: allMarks
|
||||
}
|
||||
},
|
||||
{
|
||||
name: '120日均线',
|
||||
type: 'line',
|
||||
data: ma120,
|
||||
smooth: true,
|
||||
lineStyle: {
|
||||
opacity: 0.5
|
||||
}
|
||||
},
|
||||
{
|
||||
name: '终极平滑值',
|
||||
type: 'line',
|
||||
data: ultimateValues,
|
||||
smooth: true,
|
||||
lineStyle: {
|
||||
opacity: 0.5
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'POC',
|
||||
type: 'line',
|
||||
data: pocValues,
|
||||
smooth: true,
|
||||
lineStyle: {
|
||||
color: '#FFD700',
|
||||
width: 2,
|
||||
opacity: 0.8
|
||||
},
|
||||
symbol: 'circle',
|
||||
symbolSize: 6
|
||||
},
|
||||
{
|
||||
name: '成交量',
|
||||
type: 'bar',
|
||||
xAxisIndex: 1,
|
||||
yAxisIndex: 1,
|
||||
data: volumes
|
||||
},
|
||||
{
|
||||
name: 'Delta累计',
|
||||
type: 'line',
|
||||
xAxisIndex: 2,
|
||||
yAxisIndex: 2,
|
||||
data: deltaSums,
|
||||
smooth: true,
|
||||
lineStyle: {
|
||||
color: '#4169E1',
|
||||
width: 2,
|
||||
opacity: 0.8
|
||||
},
|
||||
markLine: {
|
||||
silent: true,
|
||||
data: [
|
||||
{
|
||||
yAxis: 0,
|
||||
lineStyle: {
|
||||
color: '#999',
|
||||
type: 'dashed'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'DJ值',
|
||||
type: 'line',
|
||||
xAxisIndex: 3,
|
||||
yAxisIndex: 3,
|
||||
data: djValues,
|
||||
smooth: true,
|
||||
lineStyle: {
|
||||
color: '#9932CC',
|
||||
width: 2,
|
||||
opacity: 0.8
|
||||
},
|
||||
markLine: {
|
||||
silent: true,
|
||||
data: [
|
||||
{
|
||||
yAxis: 0,
|
||||
lineStyle: {
|
||||
color: '#999',
|
||||
type: 'dashed'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'Delta值',
|
||||
type: 'line',
|
||||
xAxisIndex: 4,
|
||||
yAxisIndex: 4,
|
||||
data: deltaValues,
|
||||
smooth: true,
|
||||
lineStyle: {
|
||||
color: '#FF8C00',
|
||||
width: 2,
|
||||
opacity: 0.8
|
||||
},
|
||||
markLine: {
|
||||
silent: true,
|
||||
data: [
|
||||
{
|
||||
yAxis: 0,
|
||||
lineStyle: {
|
||||
color: '#999',
|
||||
type: 'dashed'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
// 使用配置项显示图表
|
||||
chart.setOption(option);
|
||||
}
|
||||
|
||||
function calculateMA(data, dayCount) {
|
||||
const result = [];
|
||||
for (let i = 0, len = data.length; i < len; i++) {
|
||||
if (i < dayCount - 1) {
|
||||
result.push('-');
|
||||
continue;
|
||||
}
|
||||
let sum = 0;
|
||||
for (let j = 0; j < dayCount; j++) {
|
||||
sum += data[i - j];
|
||||
}
|
||||
result.push(+(sum / dayCount).toFixed(2));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
// 响应窗口大小变化
|
||||
window.addEventListener('resize', function() {
|
||||
if (chart) {
|
||||
chart.resize();
|
||||
}
|
||||
});
|
||||
|
||||
// 初始化图表
|
||||
initChart();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user