-
Global information
- Generated on Mon Dec 22 11:59:43 2025
- Log file: /home/postgres/pg_data/data/pg_log/postgresql-2025-12-22_130000.log
- Parsed 1,706,823 log entries in 41s
- Log start from 2025-12-22 13:00:00 to 2025-12-22 13:59:40
-
Overview
Global Stats
- 251 Number of unique normalized queries
- 190,330 Number of queries
- 1h53m28s Total query duration
- 2025-12-22 13:00:00 First query
- 2025-12-22 13:59:40 Last query
- 3,878 queries/s at 2025-12-22 13:00:04 Query peak
- 1h53m28s Total query duration
- 9s289ms Prepare/parse total duration
- 54s779ms Bind total duration
- 1h52m24s Execute total duration
- 0 Number of events
- 0 Number of unique normalized events
- 0 Max number of times the same event was reported
- 0 Number of cancellation
- 36 Total number of automatic vacuums
- 56 Total number of automatic analyzes
- 784 Number temporary file
- 157.52 MiB Max size of temporary file
- 6.88 MiB Average size of temporary file
- 4,177 Total number of sessions
- 19 sessions at 2025-12-22 13:40:03 Session peak
- 1d22h48m13s Total duration of sessions
- 40s338ms Average duration of sessions
- 45 Average queries per session
- 1s630ms Average queries duration per session
- 38s708ms Average idle time per session
- 4,177 Total number of connections
- 65 connections/s at 2025-12-22 13:41:34 Connection peak
- 3 Total number of databases
SQL Traffic
Key values
- 3,878 queries/s Query Peak
- 2025-12-22 13:00:04 Date
SELECT Traffic
Key values
- 1,895 queries/s Query Peak
- 2025-12-22 13:00:04 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 162 queries/s Query Peak
- 2025-12-22 13:00:57 Date
Queries duration
Key values
- 1h53m28s Total query duration
Prepared queries ratio
Key values
- 0.00 Ratio of bind vs prepare
- 0.00 % Ratio between prepared and "usual" statements
General Activity
↑ Back to the top of the General Activity tableDay Hour Count Min duration Max duration Avg duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Dec 22 13 190,330 0ms 20s144ms 35ms 3m59s 4m22s 5m3s Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Dec 22 13 50,740 26 0ms 0ms 0ms 0ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Dec 22 13 29,307 2,084 16 96 0ms 0ms 0ms 0ms Day Hour Prepare Bind Bind/Prepare Percentage of prepare Dec 22 13 26,136 67,047 2.57 29.57% Day Hour Count Average / Second Dec 22 13 4,177 1.16/s Day Hour Count Average Duration Average idle time Dec 22 13 4,177 40s338ms 38s723ms -
Connections
Established Connections
Key values
- 65 connections Connection Peak
- 2025-12-22 13:41:34 Date
Connections per database
Key values
- acaweb_fx Main Database
- 4,177 connections Total
Connections per user
Key values
- postgres Main User
- 4,177 connections Total
Connections per host
Key values
- 192.168.4.142 Main host with 1339 connections
- 4,177 Total connections
Host Count 127.0.0.1 114 192.168.0.114 3 192.168.0.216 102 192.168.0.74 743 192.168.1.145 28 192.168.1.15 843 192.168.1.20 56 192.168.1.239 3 192.168.1.90 52 192.168.2.126 62 192.168.2.182 12 192.168.2.82 48 192.168.3.199 36 192.168.4.135 1 192.168.4.142 1,339 192.168.4.150 10 192.168.4.227 4 192.168.4.236 4 192.168.4.238 16 192.168.4.33 93 192.168.4.89 4 192.168.4.98 330 [local] 274 -
Sessions
Simultaneous sessions
Key values
- 19 sessions Session Peak
- 2025-12-22 13:40:03 Date
Histogram of session times
Key values
- 3,410 0-500ms duration
Sessions per database
Key values
- acaweb_fx Main Database
- 4,177 sessions Total
Sessions per user
Key values
- postgres Main User
- 4,177 sessions Total
Sessions per host
Key values
- 192.168.4.142 Main Host
- 4,177 sessions Total
Host Count Total Duration Average Duration 127.0.0.1 114 9s583ms 84ms 192.168.0.114 3 19m39s 6m33s 192.168.0.216 102 1m43s 1s10ms 192.168.0.74 743 2h5m56s 10s170ms 192.168.1.145 28 6h17m10s 13m28s 192.168.1.15 843 5h14m17s 22s369ms 192.168.1.20 56 12h8m39s 13m 192.168.1.239 3 18ms 6ms 192.168.1.90 52 32s858ms 631ms 192.168.2.126 62 6s610ms 106ms 192.168.2.182 12 743ms 61ms 192.168.2.82 48 27s371ms 570ms 192.168.3.199 36 1s441ms 40ms 192.168.4.135 1 205ms 205ms 192.168.4.142 1,339 11m4s 496ms 192.168.4.150 10 20h17m7s 2h1m42s 192.168.4.227 4 37ms 9ms 192.168.4.236 4 34ms 8ms 192.168.4.238 16 20s458ms 1s278ms 192.168.4.33 93 5m6s 3s299ms 192.168.4.89 4 3m3s 45s973ms 192.168.4.98 330 14s715ms 44ms [local] 274 2m30s 548ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 14,798 buffers Checkpoint Peak
- 2025-12-22 13:06:15 Date
- 209.908 seconds Highest write time
- 0.072 seconds Sync time
Checkpoints Wal files
Key values
- 5 files Wal files usage Peak
- 2025-12-22 13:06:15 Date
Checkpoints distance
Key values
- 166.36 Mo Distance Peak
- 2025-12-22 13:06:15 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Dec 22 13 54,105 1,830.433s 0.116s 1,830.852s Day Hour Added Removed Recycled Synced files Longest sync Average sync Dec 22 13 0 0 23 2,004 0.071s 0s Day Hour Count Avg time (sec) Dec 22 13 0 0s Day Hour Mean distance Mean estimate Dec 22 13 30,853.00 kB 62,626.67 kB -
Temporary Files
Size of temporary files
Key values
- 183.88 MiB Temp Files size Peak
- 2025-12-22 13:50:07 Date
Number of temporary files
Key values
- 30 per second Temp Files Peak
- 2025-12-22 13:32:07 Date
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Dec 22 13 784 5.26 GiB 6.88 MiB Queries generating the most temporary files (N)
Rank Count Total size Min size Max size Avg size Query 1 86 328.57 MiB 3.75 MiB 3.94 MiB 3.82 MiB select resultuid from relevance_fibonacci_results order by resultuid desc limit ?), fr as ( select a.*, rr.age, rr.relevant from fibonacci_results a left outer join relevance_fibonacci_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) end), all_results as ( select fr.resultuid as resultuid, fr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, fr.pattern as pattern_name, fr.timed as timed, fr.patternendtime as identified, dtt.timezone as timezone, fr.patternlengthbars as length, g.basegroupname, newlevels.filtered, case when fr.age is not null then fr.age when fr.resultuid <= rm.resultuid then ? else ? end as age, case when fr.relevant is not null then fr.relevant when fr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from fr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = fr.symbolid inner join symbols s on fr.symbolid = s.symbolid and s.nonliquid = ? inner join symbolgroup sg on fr.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join downloadersymbolsettings dss on fr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left join lateral calc_fib_signal_filter (fr.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where fr.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (fr.simulation = ? or fr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or fr.pattern in (...)) and (? = ? or fr.patternlengthbars <= ?) and (? = ? or (? = ? and fr.timed > cast(? as timestamp)) or (? = ? and fr.timed < cast(? as timestamp)))), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc;-
SELECT resultuid FROM relevance_fibonacci_results ORDER BY resultuid DESC LIMIT 1), fr AS ( SELECT a.*, rr.age, rr.relevant from fibonacci_results a LEFT OUTER JOIN relevance_fibonacci_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = $1 THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_fibonacci_results) END), all_results AS ( SELECT fr.resultuid AS resultuid, fr.direction AS direction, s.exchange AS exchange, s.symbolid AS symbolid, coalesce(bim.code, s.symbol) AS symbol_code, s.longname AS symbol_name, s.timegranularity AS interval, fr.pattern AS pattern_name, fr.timed AS timed, fr.patternendtime AS identified, dtt.timezone AS timezone, fr.patternlengthbars AS length, g.basegroupname, newLevels.filtered, CASE WHEN fr.age IS NOT NULL THEN fr.age WHEN fr.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN fr.relevant IS NOT NULL THEN fr.relevant WHEN fr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM fr INNER JOIN brokersymbollist bsl ON bsl.brokerid = $2 AND bsl.symbolid = fr.symbolid INNER JOIN symbols s ON fr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN symbolgroup sg on fr.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN brokergroups bg on g.groupid = bg.groupid AND bsl.brokerid = bg.brokerid INNER JOIN downloadersymbolsettings dss ON fr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT JOIN LATERAL calc_fib_signal_filter (fr.resultuid) newLevels on true LEFT JOIN currencypips cps on cps.symbol = s.symbol LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE fr.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (fr.simulation = 0 OR fr.simulation IS NULL) AND ($3 = 0 OR s.timegranularity in ($4, $5, $6, $7, $8, $9, $10)) AND ($11 = 0 OR s.exchange in ($12)) AND ($13 = 0 OR coalesce(bim.code, s.symbol) in ($14, $15, $16, $17, $18, $19, $20, $21, $22, $23, $24, $25, $26, $27, $28, $29, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $40, $41, $42, $43, $44, $45, $46, $47, $48, $49, $50, $51, $52, $53, $54, $55, $56, $57, $58, $59, $60, $61, $62, $63, $64, $65, $66, $67, $68, $69, $70, $71, $72, $73, $74, $75, $76, $77, $78, $79, $80, $81, $82, $83, $84, $85, $86, $87, $88, $89, $90, $91, $92, $93, $94, $95, $96, $97, $98, $99, $100, $101, $102, $103, $104, $105, $106, $107, $108, $109, $110, $111, $112, $113, $114, $115, $116, $117, $118, $119, $120, $121, $122, $123, $124, $125, $126, $127, $128, $129, $130, $131, $132, $133, $134, $135, $136, $137, $138, $139, $140, $141, $142, $143, $144, $145, $146, $147, $148, $149, $150, $151, $152, $153, $154, $155, $156, $157, $158, $159, $160, $161, $162, $163, $164, $165, $166, $167, $168, $169, $170, $171, $172, $173, $174, $175, $176, $177, $178, $179, $180, $181, $182, $183, $184, $185, $186, $187, $188, $189, $190, $191, $192, $193, $194, $195, $196, $197, $198, $199, $200, $201, $202, $203, $204, $205, $206, $207, $208, $209, $210, $211, $212, $213, $214, $215, $216, $217, $218, $219, $220, $221, $222, $223, $224, $225, $226, $227, $228, $229, $230, $231, $232, $233, $234, $235, $236, $237, $238, $239, $240, $241, $242, $243, $244, $245, $246, $247, $248, $249, $250, $251, $252, $253, $254, $255, $256, $257, $258, $259, $260, $261, $262, $263, $264, $265, $266, $267, $268, $269, $270, $271, $272, $273, $274, $275, $276, $277, $278, $279, $280, $281, $282, $283, $284, $285, $286, $287, $288, $289, $290, $291, $292, $293, $294, $295, $296, $297, $298, $299, $300, $301, $302, $303, $304, $305, $306, $307, $308, $309, $310, $311, $312, $313, $314, $315, $316, $317, $318, $319, $320, $321, $322, $323)) AND ($324 = 0 OR fr.pattern in ($325)) AND ($326 = 0 OR fr.patternlengthbars <= $327) AND ($328 = 0 OR ($329 = 1 AND fr.timed > cast('1970-01-01' as timestamp)) OR ($330 = 2 AND fr.timed < cast('1970-01-01' as timestamp)))), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = $331 OR relevant = 1) AND ($332 = 0 OR age <= $333) ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-12-22 13:00:48 Duration: 0ms
2 68 222.00 MiB 3.02 MiB 3.55 MiB 3.26 MiB select resultuid from relevance_consecutivecandles_results order by resultuid desc limit ?), all_results as ( select ccr.resultuid as resultuid, ccr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, ccr.patternendtime as identified, dtt.timezone as timezone, ccr.qtyconsecutivecandles as length, g.basegroupname, case when rcr.age is not null then rcr.age when ccr.resultuid <= rm.resultuid then ? else ? end as age, case when rcr.relevant is not null then rcr.relevant when ccr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip, newlevels.filtered from consecutivecandles_results ccr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = ccr.symbolid inner join symbols s on ccr.symbolid = s.symbolid and s.nonliquid = ? inner join downloadersymbolsettings dss on ccr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join symbolgroup sg on ccr.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join rar_max rm on ? = ? left outer join relevance_consecutivecandles_results rcr on rcr.resultuid = ccr.resultuid left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? left join lateral calc_cc_signal_filter (ccr.resultuid) newlevels on true where ccr.gmttimefound > now() - interval ? and s.deleted = ? and (ccr.simulation = ? or ccr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or ccr.patternlengthbars <= ?)), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc;-
SELECT resultuid FROM relevance_consecutivecandles_results ORDER BY resultuid DESC LIMIT 1), all_results AS ( SELECT ccr.resultuid AS resultuid, ccr.direction AS direction, s.exchange AS exchange, s.symbolid AS symbolid, coalesce(bim.code, s.symbol) AS symbol_code, s.longname AS symbol_name, s.timegranularity AS interval, ccr.patternendtime AS identified, dtt.timezone AS timezone, ccr.qtyconsecutivecandles AS length, g.basegroupname, CASE WHEN rcr.age IS NOT NULL THEN rcr.age WHEN ccr.resultuid <= rm.resultuid THEN 1 ELSE 0 END as age, CASE WHEN rcr.relevant IS NOT NULL THEN rcr.relevant WHEN ccr.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip, newLevels.filtered FROM consecutivecandles_results ccr INNER JOIN brokersymbollist bsl ON bsl.brokerid = $1 AND bsl.symbolid = ccr.symbolid INNER JOIN symbols s ON ccr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN downloadersymbolsettings dss ON ccr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN symbolgroup sg on ccr.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN brokergroups bg on g.groupid = bg.groupid AND bsl.brokerid = bg.brokerid INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN relevance_consecutivecandles_results rcr ON rcr.resultuid = ccr.resultuid LEFT JOIN currencypips cps on cps.symbol = s.symbol LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' LEFT JOIN LATERAL calc_cc_signal_filter (ccr.resultuid) newLevels on true WHERE ccr.gmttimefound > now() - INTERVAL '7 DAYS' AND s.deleted = 0 AND (ccr.simulation = 0 OR ccr.simulation IS NULL) AND ($2 = 0 OR s.timegranularity in ($3, $4, $5, $6, $7, $8, $9)) AND ($10 = 0 OR s.exchange in ($11)) AND ($12 = 0 OR coalesce(bim.code, s.symbol) in ($13, $14, $15, $16, $17, $18, $19, $20, $21, $22, $23, $24, $25, $26, $27, $28, $29, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $40, $41, $42, $43, $44, $45, $46, $47, $48, $49, $50, $51, $52, $53, $54, $55, $56, $57, $58, $59, $60, $61, $62, $63, $64, $65, $66, $67, $68, $69, $70, $71, $72, $73, $74, $75, $76, $77, $78, $79, $80, $81, $82, $83, $84, $85, $86, $87, $88, $89, $90, $91, $92, $93, $94, $95, $96, $97, $98, $99, $100, $101, $102, $103, $104, $105, $106, $107, $108, $109, $110, $111, $112, $113, $114, $115, $116, $117, $118, $119, $120, $121, $122, $123, $124, $125, $126, $127, $128, $129, $130, $131, $132, $133, $134, $135, $136, $137, $138, $139, $140, $141, $142, $143, $144, $145, $146, $147, $148, $149, $150, $151, $152, $153, $154, $155, $156, $157, $158, $159, $160, $161, $162, $163, $164, $165, $166, $167, $168, $169, $170, $171, $172, $173, $174, $175, $176, $177, $178, $179, $180, $181, $182, $183, $184, $185, $186, $187, $188, $189, $190, $191, $192, $193, $194, $195, $196, $197, $198, $199, $200, $201, $202, $203, $204, $205, $206, $207, $208, $209, $210, $211, $212, $213, $214, $215, $216, $217, $218, $219, $220, $221, $222, $223, $224, $225, $226, $227, $228, $229, $230, $231, $232, $233, $234, $235, $236, $237, $238, $239, $240, $241, $242, $243, $244, $245, $246, $247, $248, $249, $250, $251, $252, $253, $254, $255, $256, $257, $258, $259, $260, $261, $262, $263, $264, $265, $266, $267, $268, $269, $270, $271, $272, $273, $274, $275, $276, $277, $278, $279, $280, $281, $282, $283, $284, $285, $286, $287, $288, $289, $290, $291, $292, $293, $294, $295, $296, $297, $298, $299, $300, $301, $302, $303, $304, $305, $306, $307, $308, $309, $310, $311, $312, $313, $314, $315, $316, $317, $318, $319, $320, $321, $322)) AND ($323 = 0 OR ccr.patternlengthbars <= $324)), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = $325 OR relevant = 1) AND ($326 = 0 OR age <= $327) ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-12-22 13:01:12 Duration: 0ms
3 30 1.65 GiB 11.80 MiB 157.52 MiB 56.30 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = ? ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = ? ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = ?) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, ?::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> ? ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = ?) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = ? where (ok.r is null or ok.r = ?) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = ?) and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > ? * ? and last.eventtimestamp > current_timestamp - interval ? and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval ?) and last.eventtimestamp > current_timestamp - interval ? and broker.r = ?;-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2025-12-22 13:00:05 Duration: 0ms
4 25 77.50 MiB 3.10 MiB 3.10 MiB 3.10 MiB jr.resultuid as resultuid, jr.direction as direction, jr.patternendtime as identified, jr.patternlengthbars as length, jr.patternstarttime as patternstarttime, case when jr.trendchangeid = ? then ? else ? end as trendchange, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, jp.patternname as pattern_name, dtt.timezone as timezone, ? as age, cps.pip, g.basegroupname from japsticks_results jr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = jr.symbolid inner join relevance_japsticks_results rar on rar.resultuid = jr.resultuid inner join symbols s on jr.symbolid = s.symbolid and s.nonliquid = ? inner join japsticks_patterns jp on jr.patternid = jp.id inner join downloadersymbolsettings dss on jr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where jr.gmttimefound > now() - interval ? and s.deleted = ? and (jr.simulation = ? or jr.simulation is null) and (rar.relevant = ?) --and (semicolon_age = ? or rar.age <= semicolon_age) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or jp.patternname in (...)) and (? = ? or jr.patternlengthbars <= ?) ), results as ( select distinct on (symbolid) * from all_results order by symbolid, resultuid ) select * from results order by identified desc, length desc ;-
jr.resultuid AS resultuid, jr.direction AS direction, jr.patternendtime AS identified, jr.patternlengthbars AS length, jr.patternstarttime AS patternstarttime, case when jr.trendchangeid = 1 then 'Continuation' else 'Reversal' end AS trendchange, s.exchange AS exchange, s.symbolid AS symbolid, coalesce(bim.code, s.symbol) AS symbol_code, s.longname AS symbol_name, s.timegranularity AS interval, jp.patternname AS pattern_name, dtt.timezone AS timezone, 0 AS age, cps.pip, g.basegroupname FROM japsticks_results jr INNER JOIN brokersymbollist bsl ON bsl.brokerid = $1 AND bsl.symbolid = jr.symbolid INNER JOIN relevance_japsticks_results rar ON rar.resultuid = jr.resultuid INNER JOIN symbols s ON jr.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN japsticks_patterns jp ON jr.patternid = jp.id INNER JOIN downloadersymbolsettings dss ON jr.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN symbolgroup sg on s.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN brokergroups bg on g.groupid = bg.groupid AND bsl.brokerid = bg.brokerid LEFT JOIN currencypips cps on cps.symbol = s.symbol LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE jr.gmttimefound > now() - INTERVAL '7 DAYS' AND s.deleted = 0 AND (jr.simulation = 0 OR jr.simulation IS NULL) AND (rar.relevant = 1) --AND (semicolon_age = 0 OR rar.age <= semicolon_age) AND ($2 = 0 OR s.timegranularity in ($3)) AND ($4 = 0 OR s.exchange in ($5)) AND ($6 = 0 OR coalesce(bim.code, s.symbol) in ($7)) AND ($8 = 0 OR jp.patternname in ($9)) AND ($10 = 0 OR jr.patternlengthbars <= $11)), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-12-22 13:00:48 Duration: 0ms
5 16 502.95 MiB 31.43 MiB 31.44 MiB 31.43 MiB update solr_relevance_old set new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total from ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total from whatshot_probability where type = ?) sub where result_uid = sub.resultuid;-
UPDATE solr_relevance_old SET new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total FROM ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total FROM whatshot_probability WHERE type = 'cp') sub WHERE result_uid = sub.resultuid;
Date: 2025-12-22 13:01:13 Duration: 0ms
6 16 1.10 GiB 70.60 MiB 70.60 MiB 70.60 MiB with max_ra as ( select resultuid from relevance_keylevels_results order by resultuid desc limit ?) update solr_relevance_old set newrelevant = sub.relevant, newage = sub.age from ( select so.uuid, case when ra.relevant is not null then ra.relevant when so.result_uid < max_ra.resultuid then ? else ? end as relevant, case when ra.age is not null then ra.age when so.result_uid < max_ra.resultuid then ? else ? end as age, so.result_uid from max_ra, solr_relevance_old so inner join keylevels_results k on so.result_uid = k.resultuid and so.uuid ilike ? inner join downloadersymbolsettings dss on k.symbolid = dss.symbolid left outer join relevance_keylevels_results ra on so.result_uid = ra.resultuid and so.uuid ilike ?) sub where solr_relevance_old.result_uid = sub.result_uid and solr_relevance_old.uuid ilike ?; update solr_relevance_old set newrelevant = ? where result_uid in ( select result_uid from solr_relevance_old s left outer join keylevels_results a on a.resultuid = s.result_uid where s.uuid ilike ? and a.resultuid is null); update solr_relevance_old set new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total from ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total from whatshot_probability where type in (...)) sub where result_uid = sub.resultuid;-
with max_ra as ( select resultuid from relevance_keylevels_results order by resultuid desc limit 1) update solr_relevance_old set newrelevant = sub.relevant, newage = sub.age from ( select so.uuid, case when ra.relevant is not null then ra.relevant when so.result_uid < max_ra.resultuid then 0 else 1 end as relevant, case when ra.age is not null then ra.age when so.result_uid < max_ra.resultuid then 11 else 0 end as age, so.result_uid from max_ra, solr_relevance_old so inner join keylevels_results k on so.result_uid = k.resultuid and so.uuid ilike 'kl_%' inner join downloadersymbolsettings dss on k.symbolid = dss.symbolid left outer join relevance_keylevels_results ra on so.result_uid = ra.resultuid and so.uuid ilike 'kl_%') sub where solr_relevance_old.result_uid = sub.result_uid and solr_relevance_old.uuid ilike 'kl_%'; update solr_relevance_old set newrelevant = 0 where result_uid in ( select result_uid from solr_relevance_old s left outer join keylevels_results a on a.resultuid = s.result_uid where s.uuid ilike 'kl_%' and a.resultuid is null); UPDATE solr_relevance_old SET new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total FROM ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total FROM whatshot_probability WHERE type in ('kl', 'ekl')) sub WHERE result_uid = sub.resultuid;
Date: 2025-12-22 13:01:16 Duration: 0ms
7 8 970.46 MiB 121.29 MiB 121.33 MiB 121.31 MiB select updateresultsmaterializedview ();-
select updateresultsmaterializedview ();
Date: 2025-12-22 13:02:11 Duration: 0ms
8 6 18.38 MiB 3.06 MiB 3.06 MiB 3.06 MiB select resultuid from relevance_keylevels_results order by resultuid desc limit ? ) select case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as ruid, s.symbolid as sid, s.symbol as sym, longname, shortname, exchange as e, timegranularity as tg, a.patternid as pid, a.direction as d, a.patternprice as pp, atbaridentified as pet, case when (x9 != ?) then x9 when (x8 != ?) then x8 when (x7 != ?) then x7 when (x6 != ?) then x6 when (x5 != ?) then x5 when (x4 != ?) then x4 when (x3 != ?) then x3 when (x2 != ?) then x2 end as pst, patternprice as patp, x0, x1, x2, case when (x3 != ?) then x3 else ? end as x3, case when (x4 != ?) then x4 else ? end as x4, case when (x5 != ?) then x5 else ? end as x5, case when (x6 != ?) then x6 else ? end as x6, case when (x7 != ?) then x7 else ? end as x7, case when (x8 != ?) then x8 else ? end as x8, errormargin as erm, breakoutprice as pe, breakoutbars as be, breakout, atbaridentified as atbar, atpriceidentified as atprice, patternlengthbars as l, bandwidth as bw, qtytp as qtp, p.patternname as patternname, dtt.absolutetimezoneoffset as tzos, dtt.timezone as timezone, approachingtimestamp as apt, approachingregion as apr, predictionpricefrom as ppf, predictionpriceto as ppt, predictiontimefrom as ptf, predictiontimebars as ptb, furthestprice as fp, newlevels.filtered, a.uniquepointsvalue as upv, case when rar.age is not null then rar.age when a.resultuid <= rm.resultuid then ? else ? end as age, case when rar.relevant is not null then rar.relevant when a.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from keylevels_results a inner join downloadersymbolsettings dss on a.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on a.symbolid = s.symbolid inner join hrspatterns p on a.patternid = p.patternid inner join rar_max rm on ? = ? left outer join relevance_keylevels_results rar on a.resultuid = rar.resultuid left join lateral calc_kl_signal_filter (a.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;-
SELECT resultuid FROM relevance_keylevels_results ORDER BY resultuid DESC LIMIT 1 ) SELECT CASE WHEN a.old_resultuid = $1 THEN a.old_resultuid ELSE a.resultuid END AS ruid, s.symbolid AS sid, s.symbol AS sym, longname, shortname, Exchange AS e, timegranularity AS tg, a.PatternID AS pid, a.direction AS d, a.patternprice AS pp, atbaridentified AS pet, CASE WHEN (x9 != '') THEN x9 WHEN (x8 != '') THEN x8 WHEN (x7 != '') THEN x7 WHEN (x6 != '') THEN x6 WHEN (x5 != '') THEN x5 WHEN (x4 != '') THEN x4 WHEN (x3 != '') THEN x3 WHEN (x2 != '') THEN x2 END AS pst, PatternPrice AS patp, x0, x1, x2, CASE WHEN (x3 != '') THEN x3 ELSE '0' END AS x3, CASE WHEN (x4 != '') THEN x4 ELSE '0' END AS x4, CASE WHEN (x5 != '') THEN x5 ELSE '0' END AS x5, CASE WHEN (x6 != '') THEN x6 ELSE '0' END AS x6, CASE WHEN (x7 != '') THEN x7 ELSE '0' END AS x7, CASE WHEN (x8 != '') THEN x8 ELSE '0' END AS x8, errorMargin AS erm, breakoutprice AS pE, breakoutbars AS be, breakout, atbaridentified AS atBar, atpriceidentified AS atPrice, PatternLengthBars AS l, Bandwidth AS bw, QtyTP AS qtp, p.patternname AS patternname, dtt.absolutetimezoneoffset AS tzOs, dtt.timezone AS timezone, approachingtimestamp AS apt, approachingregion AS apr, predictionpricefrom AS ppf, predictionpriceto AS ppt, predictiontimefrom AS ptf, predictiontimebars AS ptb, furthestprice AS fp, newLevels.filtered, a.uniquepointsvalue AS upv, CASE WHEN rar.age IS NOT NULL THEN rar.age WHEN a.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM keylevels_results a INNER JOIN downloadersymbolsettings dss ON a.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname INNER JOIN symbols s ON a.symbolid = s.symbolid INNER JOIN hrspatterns p ON a.patternid = p.patternid INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN relevance_keylevels_results rar ON a.resultuid = rar.resultuid LEFT JOIN LATERAL calc_kl_signal_filter (a.resultuid) newLevels on true LEFT JOIN currencypips cps on cps.symbol = s.symbol WHERE (a.old_resultuid = $2 OR a.resultuid = $3) AND dtt.dayofweek = 3;
Date: 2025-12-22 13:03:35 Duration: 0ms
9 4 12.26 MiB 3.06 MiB 3.06 MiB 3.06 MiB select resultuid from relevance_autochartist_results order by resultuid desc limit ?), ar as ( select a.*, rr.age, rr.relevant from autochartist_results a left outer join relevance_autochartist_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_autochartist_results) end), all_results as ( select ar.resultuid as resultuid, ar.direction as direction, ar.predictiontimeto as predictiontimeto, ar.predictionpricefrom as predictionpricefrom, ar.predictionpriceto as predictionpriceto, cp.pip as pip, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, ar.pattern as pattern_name, ar.breakout as breakout, ar.patternendtime as identified, dtt.timezone as timezone, ar.patternlengthbars as length, g.basegroupname, newlevels.profit, newlevels.stop, newlevels.filtered, case when ar.age is not null then ar.age when ar.resultuid <= rm.resultuid then ? else ? end as age, case when ar.relevant is not null then ar.relevant when ar.resultuid <= rm.resultuid then ? else ? end as relevant from ar inner join symbols s on ar.symbolid = s.symbolid and s.nonliquid = ? inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = s.symbolid inner join symbolgroup sg on bsl.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join downloadersymbolsettings dss on sg.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left outer join autochartist_symbolupdates au on dss.symbolid = au.symbolid left outer join currencypips cp on s.symbol = cp.symbol left join lateral calc_cp_signal (ar.resultuid) newlevels on true left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where ar.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (ar.simulation = ? or ar.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or ar.pattern in (...)) and (? = ? or (? = ? and ar.breakout >= ?) or (? = ? and ar.breakout < ?)) and (? = ? or ar.patternlengthbars <= ?) and newlevels.filtered = false and ar.patternstarttime >= coalesce(au.earliestpricedatetime, ?::timestamp without time zone) -- to make sure patternstarttime is in our t-tables ), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc ;-
SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1), ar AS ( SELECT a.*, rr.age, rr.relevant from autochartist_results a LEFT OUTER JOIN relevance_autochartist_results rr on a.resultuid = rr.resultuid WHERE CASE WHEN FALSE = $1 THEN true ELSE a.resultuid > ( select min(resultuid) from relevance_autochartist_results) END), all_results AS ( SELECT ar.resultuid AS resultuid, ar.direction AS direction, ar.predictiontimeto AS predictiontimeto, ar.predictionpricefrom AS predictionpricefrom, ar.predictionpriceto AS predictionpriceto, cp.pip AS pip, s.exchange AS exchange, s.symbolid AS symbolid, coalesce(bim.code, s.symbol) AS symbol_code, s.longname AS symbol_name, s.timegranularity AS interval, ar.pattern AS pattern_name, ar.breakout AS breakout, ar.patternendtime AS identified, dtt.timezone AS timezone, ar.patternlengthbars AS length, g.basegroupname, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN ar.age IS NOT NULL THEN ar.age WHEN ar.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN ar.relevant IS NOT NULL THEN ar.relevant WHEN ar.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant FROM ar INNER JOIN symbols s ON ar.symbolid = s.symbolid AND s.nonliquid = 0 INNER JOIN brokersymbollist bsl ON bsl.brokerid = $2 AND bsl.symbolid = s.symbolid INNER JOIN symbolgroup sg on bsl.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN brokergroups bg on g.groupid = bg.groupid AND bsl.brokerid = bg.brokerid INNER JOIN downloadersymbolsettings dss ON sg.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname AND dtt.dayofweek = 3 INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN autochartist_symbolupdates au on dss.symbolid = au.symbolid LEFT OUTER JOIN currencypips cp ON s.symbol = cp.symbol LEFT JOIN LATERAL calc_cp_signal (ar.resultuid) newLevels on true LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = bsl.brokerid AND bim.TYPE = 'OUTBOUND' WHERE ar.gmttimefound > now() - INTERVAL '7 DAYS' AND dss.enabled = 1 AND s.deleted = 0 AND (ar.simulation = 0 OR ar.simulation IS NULL) AND ($3 = 0 OR s.timegranularity in ($4)) AND ($5 = 0 OR s.exchange in ($6)) AND ($7 = 0 OR coalesce(bim.code, s.symbol) in ($8)) AND ($9 = 0 OR ar.pattern in ($10)) AND ($11 = 0 OR ($12 = 1 AND ar.breakout >= 0) OR ($13 = 2 AND ar.breakout < 0)) AND ($14 = 0 OR ar.patternlengthbars <= $15) and newLevels.filtered = false AND ar.patternstarttime >= coalesce(au.earliestpricedatetime, '1900-01-01'::timestamp without time zone) -- To make sure patternstarttime is in our t-tables ), results AS ( SELECT DISTINCT ON (symbolid) * FROM all_results WHERE (FALSE = $16 OR relevant = 1) AND ($17 = 0 OR age <= $18) ORDER BY symbolid, resultuid ) SELECT * from results ORDER BY identified DESC, length DESC;
Date: 2025-12-22 13:07:55 Duration: 0ms
10 4 238.24 MiB 59.51 MiB 59.62 MiB 59.56 MiB select updateageforrelevantresults ();-
select updateageforrelevantresults ();
Date: 2025-12-22 13:02:05 Duration: 0ms
11 1 3.06 MiB 3.06 MiB 3.06 MiB 3.06 MiB select resultuid from relevance_autochartist_results order by resultuid desc limit ? ) select a.symbolid, pattern, patternid, resy0, resy1, resx0, resx1, supporty0, supporty1, supportx0, supportx1, predictiontimeto, patternstarttime, timegranularity, patternendtime, direction, trendchange, patternlengthbars, patternquality, case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as uid, breakout, initialtrend, volumeincrease, symmetry as uniformity, predictionpricefrom, predictionpriceto, noise, s.exchange, s.symbol, s.longname, s.shortname, breakout, dtt.timezone, patternstartprice, patternendprice, qtytp, newlevels.profit, newlevels.stop, newlevels.filtered, case when rar.age is not null then rar.age when a.resultuid <= rm.resultuid then ? else ? end as age, case when rar.relevant is not null then rar.relevant when a.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from autochartist_results a inner join downloadersymbolsettings dss on a.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on a.symbolid = s.symbolid inner join patterns p on p.patternname = a.pattern inner join rar_max rm on ? = ? left outer join relevance_autochartist_results rar on rar.resultuid = a.resultuid left join lateral calc_cp_signal (a.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;-
SELECT resultuid FROM relevance_autochartist_results ORDER BY resultuid DESC LIMIT 1 ) SELECT a.symbolid, pattern, patternid, resy0, resy1, resx0, resx1, supporty0, supporty1, supportx0, supportx1, predictiontimeto, patternstarttime, timegranularity, patternendtime, direction, trendchange, patternlengthbars, patternquality, CASE WHEN a.old_resultuid = $1 THEN a.old_resultuid ELSE a.resultuid END AS uid, breakout, initialtrend, volumeincrease, symmetry AS uniformity, predictionpricefrom, predictionpriceto, noise, s.exchange, s.symbol, s.longname, s.shortname, breakout, dtt.timezone, patternStartPrice, patternEndPrice, qtytp, newLevels.profit, newLevels.stop, newLevels.filtered, CASE WHEN rar.age IS NOT NULL THEN rar.age WHEN a.resultuid <= rm.resultuid THEN 11 ELSE 0 END as age, CASE WHEN rar.relevant IS NOT NULL THEN rar.relevant WHEN a.resultuid <= rm.resultuid THEN 0 ELSE 1 END as relevant, cps.pip FROM autochartist_results a INNER JOIN downloadersymbolsettings dss ON a.symbolid = dss.symbolid INNER JOIN datafeedstimetable dtt ON dss.classname = dtt.classname INNER JOIN symbols s ON a.symbolid = s.symbolid INNER JOIN patterns p ON p.patternname = a.pattern INNER JOIN rar_max rm ON 1 = 1 LEFT OUTER JOIN relevance_autochartist_results rar ON rar.resultuid = a.resultuid LEFT JOIN LATERAL calc_cp_signal (a.resultuid) newLevels on true LEFT JOIN currencypips cps on cps.symbol = s.symbol WHERE (a.old_resultuid = $2 OR a.resultuid = $3) AND dtt.dayofweek = 3;
Date: 2025-12-22 13:44:54 Duration: 0ms
12 1 3.06 MiB 3.06 MiB 3.06 MiB 3.06 MiB distinct on (coalesce(bim.code, s.symbol) , s.exchange, s.timegranularity, df.timezone) s.symbolid as id, coalesce(bim.code, s.symbol) as name, s.symbol as symbol, dss.downloadersymbol as ticker, s.exchange as exchange, s.timegranularity as interval, df.timezone as timezone from symbols s inner join downloadersymbolsettings dss on dss.symbolid = s.symbolid inner join datafeedstimetable df on df.classname ilike dss.classname left join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = s.symbolid left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = ? and bim.type = ? where s.symbolid = ?;-
DISTINCT ON (coalesce(bim.code, s.symbol) , s.exchange, s.timegranularity, df.timezone) s.symbolid as id, coalesce(bim.code, s.symbol) as name, s.symbol as symbol, dss.downloadersymbol as ticker, s.exchange as exchange, s.timegranularity as interval, df.timezone as timezone FROM symbols s INNER JOIN downloadersymbolsettings dss ON dss.symbolid = s.symbolid INNER JOIN datafeedstimetable df ON df.classname ILIKE dss.classname LEFT JOIN brokersymbollist bsl ON bsl.brokerid = $1 AND bsl.symbolid = s.symbolid LEFT OUTER JOIN brokerinstrumentmap bim ON dss.datafeedinstrumentid = bim.datafeedinstrumentid AND bim.brokerid = $2 AND bim.TYPE = 'OUTBOUND' WHERE s.symbolid = $3;
Date: 2025-12-22 13:59:37 Duration: 0ms
Queries generating the largest temporary files
Rank Size Query 1 157.52 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:40:07 ]
2 121.33 MiB select updateresultsmaterializedview ();[ Date: 2025-12-22 13:02:11 ]
3 121.32 MiB select updateresultsmaterializedview ();[ Date: 2025-12-22 13:17:11 ]
4 121.32 MiB select updateresultsmaterializedview ();[ Date: 2025-12-22 13:32:10 ]
5 121.30 MiB select updateresultsmaterializedview ();[ Date: 2025-12-22 13:05:32 ]
6 121.30 MiB select updateresultsmaterializedview ();[ Date: 2025-12-22 13:47:10 ]
7 121.30 MiB select updateresultsmaterializedview ();[ Date: 2025-12-22 13:20:33 ]
8 121.29 MiB select updateresultsmaterializedview ();[ Date: 2025-12-22 13:35:32 ]
9 121.29 MiB select updateresultsmaterializedview ();[ Date: 2025-12-22 13:50:32 ]
10 120.58 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:00:05 ]
11 100.12 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:50:05 ]
12 93.76 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:20:04 ]
13 93.16 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:30:05 ]
14 89.88 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:10:04 ]
15 88.58 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:20:05 ]
16 86.41 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:50:04 ]
17 86.17 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:30:05 ]
18 85.30 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:10:08 ]
19 85.01 MiB with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;[ Date: 2025-12-22 13:00:05 ]
20 70.60 MiB with max_ra as ( select resultuid from relevance_keylevels_results order by resultuid desc limit 1) update solr_relevance_old set newrelevant = sub.relevant, newage = sub.age from ( select so.uuid, case when ra.relevant is not null then ra.relevant when so.result_uid < max_ra.resultuid then 0 else 1 end as relevant, case when ra.age is not null then ra.age when so.result_uid < max_ra.resultuid then 11 else 0 end as age, so.result_uid from max_ra, solr_relevance_old so inner join keylevels_results k on so.result_uid = k.resultuid and so.uuid ilike 'kl_%' inner join downloadersymbolsettings dss on k.symbolid = dss.symbolid left outer join relevance_keylevels_results ra on so.result_uid = ra.resultuid and so.uuid ilike 'kl_%') sub where solr_relevance_old.result_uid = sub.result_uid and solr_relevance_old.uuid ilike 'kl_%'; update solr_relevance_old set newrelevant = 0 where result_uid in ( select result_uid from solr_relevance_old s left outer join keylevels_results a on a.resultuid = s.result_uid where s.uuid ilike 'kl_%' and a.resultuid is null); UPDATE solr_relevance_old SET new_hod_correct = sub.hod_correct, new_hod_percent = sub.hod_percent, new_hod_total = sub.hod_total, new_pattern_correct = sub.pattern_correct, new_pattern_percent = sub.pattern_percent, new_pattern_total = sub.pattern_total, new_percent = sub.percent, new_symbol_correct = sub.symbol_correct, new_symbol_percent = sub.symbol_percent, new_symbol_total = sub.symbol_total FROM ( select distinct resultuid, hod_correct, hod_percent, hod_total, hod, pattern_correct, pattern_percent, pattern_total, percent, symbol_correct, symbol_percent, symbol_total FROM whatshot_probability WHERE type in ('kl', 'ekl')) sub WHERE result_uid = sub.resultuid;[ Date: 2025-12-22 13:01:16 ]
-
Vacuums
Vacuums / Analyzes Distribution
Key values
- 0 sec Highest CPU-cost vacuum
Table
Database - Date
- 0 sec Highest CPU-cost analyze
Table
Database - Date
Analyzes per table
Key values
- public.solr_relevance_old (16) Main table analyzed (database acaweb_fx)
- 56 analyzes Total
Table Number of analyzes acaweb_fx.public.solr_relevance_old 16 acaweb_fx.pg_catalog.pg_attribute 5 acaweb_fx.public.datafeeds_latestrun 4 acaweb_fx.public.relevance_keylevels_results 4 acaweb_fx.pg_catalog.pg_class 4 acaweb_fx.public.relevance_fibonacci_results 4 acaweb_fx.public.relevance_autochartist_results 4 acaweb_fx.public.latest_t15_candle_view 3 acaweb_fx.pg_catalog.pg_type 3 acaweb_fx.pg_catalog.pg_index 2 acaweb_fx.public.autochartist_symbolupdates 2 socialmedia.public.processes 1 acaweb_fx.pg_catalog.pg_depend 1 acaweb_fx.public.latest_candle_datetime_per_receng 1 socialmedia.public.processstatevariables 1 acaweb_fx.public.bigmovement_results_underlying 1 Total 56 Vacuums per table
Key values
- public.solr_relevance_old (16) Main table vacuumed on database acaweb_fx
- 36 vacuums Total
Index Buffer usage Skipped WAL usage Table Vacuums scans hits misses dirtied pins frozen records full page bytes acaweb_fx.public.solr_relevance_old 16 16 11,891 0 50 0 0 8,206 16 1,458,344 acaweb_fx.public.datafeeds_latestrun 4 0 450 0 7 0 0 60 8 62,892 acaweb_fx.public.relevance_autochartist_results 3 3 10,476 0 155 2 720 1,684 660 1,828,657 acaweb_fx.pg_toast.pg_toast_2619 2 2 300 0 60 0 0 239 56 238,154 acaweb_fx.public.relevance_keylevels_results 2 2 7,723 0 702 2 192 1,680 615 1,505,349 acaweb_fx.public.relevance_fibonacci_results 2 2 2,482 0 41 1 108 390 27 86,953 acaweb_fx.pg_catalog.pg_type 1 1 135 0 21 0 0 45 19 123,949 acaweb_fx.public.autochartist_symbolupdates 1 1 28,616 0 1,277 2 36,552 10,991 1,029 1,201,082 acaweb_fx.pg_catalog.pg_statistic 1 1 1,010 0 179 0 580 477 175 637,240 acaweb_fx.pg_catalog.pg_attribute 1 1 802 0 185 0 67 393 140 841,227 acaweb_fx.pg_catalog.pg_depend 1 1 371 0 76 0 59 157 61 337,093 acaweb_fx.public.latest_t15_candle_view 1 1 66 0 4 0 0 6 1 9,067 acaweb_fx.pg_catalog.pg_class 1 1 462 0 47 0 0 157 42 242,210 Total 36 32 64,784 48,018 2,804 7 38,278 24,485 2,849 8,572,217 Tuples removed per table
Key values
- public.solr_relevance_old (43850) Main table with removed tuples on database acaweb_fx
- 56701 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain acaweb_fx.public.solr_relevance_old 16 16 43,850 79,004 0 0 2,850 acaweb_fx.public.autochartist_symbolupdates 1 1 6,708 63,281 63 0 40,691 acaweb_fx.pg_catalog.pg_attribute 1 1 1,592 10,796 0 22 240 acaweb_fx.public.relevance_keylevels_results 2 2 1,339 22,519 0 0 558 acaweb_fx.public.relevance_autochartist_results 3 3 1,227 26,513 1,421 0 1,140 acaweb_fx.pg_catalog.pg_statistic 1 1 566 3,707 0 0 1,194 acaweb_fx.public.relevance_fibonacci_results 2 2 417 2,714 0 0 204 acaweb_fx.pg_catalog.pg_depend 1 1 338 14,658 0 0 132 acaweb_fx.public.datafeeds_latestrun 4 0 236 56 0 0 64 acaweb_fx.pg_catalog.pg_class 1 1 177 1,648 0 0 150 acaweb_fx.pg_toast.pg_toast_2619 2 2 152 343 5 3 103 acaweb_fx.public.latest_t15_candle_view 1 1 63 14 0 0 1 acaweb_fx.pg_catalog.pg_type 1 1 36 1,444 0 0 38 Total 36 32 56,701 226,697 1,489 25 47,365 Pages removed per table
Key values
- pg_catalog.pg_attribute (22) Main table with removed pages on database acaweb_fx
- 25 pages Total removed
Table Number of vacuums Index scans Tuples removed Pages removed acaweb_fx.pg_catalog.pg_attribute 1 1 1592 22 acaweb_fx.pg_toast.pg_toast_2619 2 2 152 3 acaweb_fx.pg_catalog.pg_type 1 1 36 0 acaweb_fx.public.autochartist_symbolupdates 1 1 6708 0 acaweb_fx.public.datafeeds_latestrun 4 0 236 0 acaweb_fx.pg_catalog.pg_statistic 1 1 566 0 acaweb_fx.pg_catalog.pg_depend 1 1 338 0 acaweb_fx.public.latest_t15_candle_view 1 1 63 0 acaweb_fx.public.relevance_keylevels_results 2 2 1339 0 acaweb_fx.pg_catalog.pg_class 1 1 177 0 acaweb_fx.public.solr_relevance_old 16 16 43850 0 acaweb_fx.public.relevance_autochartist_results 3 3 1227 0 acaweb_fx.public.relevance_fibonacci_results 2 2 417 0 Total 36 32 56,701 25 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Dec 22 13 36 56 - 0 sec Highest CPU-cost vacuum
-
Locks
Locks by types
Key values
- unknown Main Lock Type
- 0 locks Total
Most frequent waiting queries (N)
Rank Count Total time Min time Max time Avg duration Query NO DATASET
Queries that waited the most
Rank Wait time Query NO DATASET
-
Queries
Queries by type
Key values
- 50,740 Total read queries
- 37,633 Total write queries
Queries by database
Key values
- unknown Main database
- 189,315 Requests
- 1h52m24s (unknown)
- Main time consuming database
Database Request type Count Duration acaweb_fx Total 921 0ms copy from 80 0ms copy to 26 0ms cte 105 0ms ddl 16 0ms delete 16 0ms others 205 0ms select 102 0ms tcl 332 0ms update 39 0ms socialmedia Total 94 0ms select 93 0ms tcl 1 0ms unknown Total 189,315 1h52m24s copy from 16 0ms cte 5,295 0ms insert 29,307 0ms others 6,587 0ms select 50,545 0ms tcl 355 0ms update 2,045 0ms Queries by user
Key values
- unknown Main user
- 189,315 Requests
User Request type Count Duration postgres Total 1,015 0ms copy from 80 0ms copy to 26 0ms cte 105 0ms ddl 16 0ms delete 16 0ms others 205 0ms select 195 0ms tcl 333 0ms update 39 0ms unknown Total 189,315 1h52m24s copy from 16 0ms cte 5,295 0ms insert 29,307 0ms others 6,587 0ms select 50,545 0ms tcl 355 0ms update 2,045 0ms Duration by user
Key values
- 1h52m24s (unknown) Main time consuming user
User Request type Count Duration postgres Total 1,015 0ms copy from 80 0ms copy to 26 0ms cte 105 0ms ddl 16 0ms delete 16 0ms others 205 0ms select 195 0ms tcl 333 0ms update 39 0ms unknown Total 189,315 1h52m24s copy from 16 0ms cte 5,295 0ms insert 29,307 0ms others 6,587 0ms select 50,545 0ms tcl 355 0ms update 2,045 0ms Queries by host
Key values
- unknown Main host
- 190,330 Requests
- 1h52m24s (unknown)
- Main time consuming host
Queries by application
Key values
- unknown Main application
- 189,942 Requests
- 1h52m24s (unknown)
- Main time consuming application
Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2025-12-22 13:44:09 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 62,240 0-1ms duration
Slowest individual queries
Rank Duration Query NO DATASET
Time consuming queries
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 0ms 6 0ms 0ms 0ms insert into t30 (symbolid, pricedatetime, open, high, low, close, volume, bsf, sastdatetimereceived) values (?, ?::timestamp without time zone, ?.?, ?.?, ?.?, ?, ?, ?, ?::timestamp without time zone) on conflict (symbolid, pricedatetime) do nothing;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Dec 22 13 6 0ms 0ms 2 0ms 44 0ms 0ms 0ms select key, value from datasources ds inner join datasourceparams dsp on ds.id = dsp.datasourceid where ds.name = ?;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Dec 22 13 44 0ms 0ms 3 0ms 253 0ms 0ms 0ms with rar_max as ( select resultuid from relevance_consecutivecandles_results order by resultuid desc limit ? ), all_results as ( select ccr.resultuid as resultuid, ccr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, ccr.patternendtime as identified, dtt.timezone as timezone, ccr.qtyconsecutivecandles as length, g.basegroupname, case when rcr.age is not null then rcr.age when ccr.resultuid <= rm.resultuid then ? else ? end as age, case when rcr.relevant is not null then rcr.relevant when ccr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip, newlevels.filtered from consecutivecandles_results ccr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = ccr.symbolid inner join symbols s on ccr.symbolid = s.symbolid and s.nonliquid = ? inner join downloadersymbolsettings dss on ccr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join symbolgroup sg on ccr.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join rar_max rm on ? = ? left outer join relevance_consecutivecandles_results rcr on rcr.resultuid = ccr.resultuid left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? left join lateral calc_cc_signal_filter (ccr.resultuid) newlevels on true where ccr.gmttimefound > now() - interval ? and s.deleted = ? and (ccr.simulation = ? or ccr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or ccr.patternlengthbars <= ?) ), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Dec 22 13 253 0ms 0ms 4 0ms 49 0ms 0ms 0ms with rar_max as ( select resultuid from relevance_bigmovement_results order by resultuid desc limit ? ) select bmr.symbolid, patternstarttime, patternendtime, timegranularity, ? as direction, case when bmr.old_resultuid = ? then bmr.old_resultuid else bmr.resultuid end as uid, s.exchange, s.symbol, s.longname, s.shortname, dtt.timezone, bmr.patternmovement, bmr.statisticalmovement, bmr.fromprice, bmr.toprice, bmr.percentile, bmr.patternlengthbars, case when rbr.age is not null then rbr.age when bmr.resultuid <= rm.resultuid then ? else ? end as age, case when rbr.relevant is not null then rbr.relevant when bmr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from bigmovement_results bmr inner join downloadersymbolsettings dss on bmr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on bmr.symbolid = s.symbolid inner join rar_max rm on ? = ? left outer join relevance_bigmovement_results rbr on rbr.resultuid = bmr.resultuid left join currencypips cps on cps.symbol = s.symbol where (bmr.old_resultuid = ? or bmr.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Dec 22 13 49 0ms 0ms 5 0ms 2,194 0ms 0ms 0ms insert into t60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Dec 22 13 2,194 0ms 0ms 6 0ms 48 0ms 0ms 0ms select count(*) from datafeeds_latestrun where feedname ilike ? and ((latestrxtime > current_timestamp - interval ? and latestdbwritetime > current_timestamp - interval ?) or (latestdbwritetime > current_timestamp - interval ? and lateststartuptime > current_timestamp - interval ?));Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Dec 22 13 48 0ms 0ms 7 0ms 104 0ms 0ms 0ms select case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as resultuid, s.symbol, timegranularity as interval, direction as direction, patternendtime as patternendtime, patternstartprice as psp, patternendprice as pep, target03 as t03, target16 as t16, patternlengthbars as length, p.patternname as patternname, dtt.timezone, cps.pip from fibonacci_results a inner join downloadersymbolsettings dss on a.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on a.symbolid = s.symbolid inner join fibonaccipatterns p on a.pattern = p.patternname left join currencypips cps on cps.symbol = s.symbol where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Dec 22 13 104 0ms 0ms 8 0ms 4 0ms 0ms 0ms select updaterelevantforrelevantresults ();Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Dec 22 13 4 0ms 0ms 9 0ms 1,469 0ms 0ms 0ms update patternresultsrelevance set relevant = ?, saxo_relevant = ?, notrelevantpricedatetime = ?, reason = ? where uniqueindex = ? and relevant = ?;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Dec 22 13 1,469 0ms 0ms 10 0ms 7 0ms 0ms 0ms insert into resultmedia (processresultsid, type, name, filename) values (?, ?, ?, ?) returning id;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Dec 22 13 7 0ms 0ms 11 0ms 12 0ms 0ms 0ms select t.pricedatetime as pricedatetime, t.open as open, t.high as high, t.low as low, t.close "..." close, t.volume as volume, t.bsf as bsf from t1440 t where symbolid = ? and (bsf = ? or bsf is null) order by pricedatetime desc limit ?;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Dec 22 13 12 0ms 0ms 12 0ms 3 0ms 0ms 0ms insert into t15 (symbolid, pricedatetime, open, high, low, close, volume, bsf, sastdatetimereceived) values (?, ?::timestamp without time zone, ?.?, ?, ?.?, ?, ?, ?, ?::timestamp without time zone) on conflict (symbolid, pricedatetime) do nothing;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Dec 22 13 3 0ms 0ms 13 0ms 18 0ms 0ms 0ms select cast(count(*) / cast(setting as numeric) * ? as int) from pg_stat_activity, pg_settings where name = ? group by setting;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Dec 22 13 18 0ms 0ms 14 0ms 239 0ms 0ms 0ms select v.datname, c.relname, v.phase, v.heap_blks_total, v.heap_blks_scanned, v.heap_blks_vacuumed, v.index_vacuum_count, v.max_dead_tuples, v.num_dead_tuples from pg_stat_progress_vacuum as v join pg_class c on c.oid = v.relid;Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Dec 22 13 239 0ms 0ms 15 0ms 25 0ms 0ms 0ms select * from ( select pricedatetime, open, high, low, close, volume, bsf from t60 where symbolid = ? and (bsf = ? or bsf is null) order by pricedatetime desc limit ?) a order by pricedatetime asc;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Dec 22 13 25 0ms 0ms 16 0ms 24 0ms 0ms 0ms with pre_symbols as ( select s.symbolid, s.symbol, s.timegranularity, dss.downloadersymbol, dtt.timezone, s.exchange, s.longname from symbols s inner join downloadersymbolsettings dss on dss.symbolid = s.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join brokersymbollist bsl on bsl.symbolid = s.symbolid and brokerid = ? where dss.classname in (...) and (dss.downloadersymbol in (...) or s.symbol in (...)) and dss.enabled = ? and s.nonliquid = ? and s.deleted = ? ), report_symbols as ( select ps1.*, ps2.symbolid as price_symbol_id from pre_symbols ps1 inner join pre_symbols ps2 on ps1.symbol = ps2.symbol and ps1.downloadersymbol = ps2.downloadersymbol and ps2.timegranularity = ? ), rbr_max as ( select resultuid from relevance_bigmovement_results order by resultuid desc limit ? ) select bmr.resultuid as ruid, ? as direction, rs.symbol as sym, rs.downloadersymbol, rs.symbolid as sid, rs.timegranularity as tg, rs.timezone, rs.exchange as e, rs.longname, bmr.patternendtime as pet, lpi.latestpricedatetime as lpdt, bmr.patternlengthbars as l, bmr.breakout >= ? as complete, rbr.age as age from bigmovement_results bmr inner join report_symbols rs on rs.symbolid = bmr.symbolid inner join autochartist_symbolupdates lpi on lpi.symbolid = rs.price_symbol_id inner join rbr_max rm on ? = ? left outer join relevance_bigmovement_results rbr on rbr.resultuid = bmr.resultuid where patternendtime >= (now() - ? * interval ?) -- results can't be more than ? days old and (bmr.resultuid > rm.resultuid or rbr.relevant = ?) ;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Dec 22 13 24 0ms 0ms 17 0ms 344 0ms 0ms 0ms commit;Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Dec 22 13 344 0ms 0ms 18 0ms 362 0ms 0ms 0ms with rar_max as ( select resultuid from relevance_keylevels_results order by resultuid desc limit ? ), kr as ( select a.*, rr.age, rr.relevant from keylevels_results a left outer join relevance_keylevels_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_keylevels_results) end ), all_results as ( select kr.resultuid as resultuid, kr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, p.patternname as pattern_name, kr.breakout as breakout, kr.atbaridentified as identified, dtt.timezone as timezone, kr.patternlengthbars as length, g.basegroupname, newlevels.filtered, case when kr.age is not null then kr.age when kr.resultuid <= rm.resultuid then ? else ? end as age, case when kr.relevant is not null then kr.relevant when kr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from kr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = kr.symbolid inner join symbols s on bsl.symbolid = s.symbolid and s.nonliquid = ? inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join hrspatterns p on kr.patternid = p.patternid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left outer join autochartist_symbolupdates au on dss.symbolid = au.symbolid left outer join relevance_keylevels_results rar on rar.resultuid = kr.resultuid left join lateral calc_kl_signal_filter (kr.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where kr.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (kr.simulation = ? or kr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or p.patternname in (...)) and (? = ? or kr.patternclassid in (...)) and (? = ? or kr.patternlengthbars <= ?) and kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, ?::timestamp without time zone) -- to make sure patternstarttime is in our t-tables ), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc limit ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Dec 22 13 362 0ms 0ms 19 0ms 14 0ms 0ms 0ms select psd.symbolid, psd.hourlysymbolid as intervalsymbolid, s.symbol, dtt.timezone, dtt.absolutetimezoneoffset, psh.hour as index, psh.ave, psh.stddev, ((psh.ave - psh.stddev) / ?.?) as low, ((psh.ave + psh.stddev) / ?.?) as high, ee.timezone as exchangetimezone, ee.mon_t1start as exchangestart, ee.mon_t1end as exchangeend from powerstats_symboldata psd inner join powerstats_hourly psh on psd.hourlysymbolid = psh.symbolid inner join symbols s on psh.symbolid = s.symbolid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join mat_ps_hourly_symbolid_max_enddate e on psh.enddate = e.enddate and psh.symbolid = e.symbolid inner join exchanges ee on ee.exchange = s.exchange where psd.symbolid = ? and dtt.dayofweek = ? order by hour asc;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Dec 22 13 14 0ms 0ms 20 0ms 3 0ms 0ms 0ms select (cast(substring(tz.gmoffset from ? for ?) as float) * ? + cast(substring(tz.gmoffset from ? for ?) as float)) / ? as offset from timezones tz where tz.timezone = ?;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Dec 22 13 3 0ms 0ms Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 18,848 0ms 0ms 0ms 0ms select ?;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Dec 22 13 18,848 0ms 0ms 2 11,476 0ms 0ms 0ms 0ms select distinct on (coalesce(bim.code, s.symbol) , s.exchange, s.timegranularity, df.timezone) s.symbolid as id, coalesce(bim.code, s.symbol) as name, s.symbol as symbol, dss.downloadersymbol as ticker, s.exchange as exchange, s.timegranularity as interval, df.timezone as timezone from symbols s inner join downloadersymbolsettings dss on dss.symbolid = s.symbolid inner join datafeedstimetable df on df.classname ilike dss.classname left join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = s.symbolid left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = ? and bim.type = ? where s.symbolid = ?;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Dec 22 13 11,476 0ms 0ms 3 8,269 0ms 0ms 0ms 0ms insert into executionlogs (executionid, status, message, details, detailtype) values (null, ?, ?, null, null);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Dec 22 13 8,269 0ms 0ms 4 6,462 0ms 0ms 0ms 0ms select s.symbolid as id, s.symbol as name, s.exchange as exchange, s.timegranularity as interval, dtt.timezone as timezone from symbols s inner join downloadersymbolsettings dss on dss.symbolid = s.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join brokersymbollist bsl on bsl.symbolid = s.symbolid where bsl.brokerid = ? and (? = ? or s.timegranularity = ?) and (s.symbol = ? or dss.downloadersymbol = ?) and dss.enabled = ?;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Dec 22 13 6,462 0ms 0ms 5 6,107 0ms 0ms 0ms 0ms insert into t15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Dec 22 13 6,107 0ms 0ms 6 4,728 0ms 0ms 0ms 0ms insert into autochartist_results (resultid, symbolid, bandwidth, pattern, qtytp, gmttimefound, direction, initialtrend, breakout, volumeincrease, noise, symmetry, predictionpricefrom, predictionpriceto, predictiontimefrom, predictiontimeto, patternstarttime, patternendtime, patternstartprice, patternendprice, resx0, resx1, supportx0, supportx1, resy0, resy1, supporty0, supporty1, supportgradient, resgradient, riskreward, patternquality, trendchange, maxmovementafterbreakout, latestbaratbreakouttime, latestbaratbreakoutprice, patternlengthbars, temporarypattern, relevancestartdistance, simulation, writtendatetime) values (?, ?, ?.?, ?, ?, ?::timestamp without time zone, ?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?::timestamp without time zone, ?::timestamp without time zone, ?::timestamp without time zone, ?::timestamp without time zone, ?.?, ?.?, ?::timestamp without time zone, ?::timestamp without time zone, ?::timestamp without time zone, ?::timestamp without time zone, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?, ?.?, ?::timestamp without time zone, ?.?, ?, ?, ?.?, ?, current_timestamp::timestamp without time zone) on conflict do nothing;Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Dec 22 13 4,728 0ms 0ms 7 3,409 0ms 0ms 0ms 0ms insert into t30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Dec 22 13 3,409 0ms 0ms 8 3,074 0ms 0ms 0ms 0ms set extra_float_digits = ?;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Dec 22 13 3,074 0ms 0ms 9 3,048 0ms 0ms 0ms 0ms set application_name = ?;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Dec 22 13 3,048 0ms 0ms 10 2,194 0ms 0ms 0ms 0ms insert into t60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Dec 22 13 2,194 0ms 0ms 11 2,071 0ms 0ms 0ms 0ms insert into fibonacci_results (bandwidth, pattern, gmttimefound, direction, patternstarttime, patternendtime, patternstartprice, patternendprice, qtytp, pricex, timex, pricea, timea, priceb, timeb, pricec, timec, priced, timed, averagequality, timequality, errormargin, patternlengthbars, target10, target06, target16, target07, target12, target05, target03, symbolid, noise, ratiosfound, temporarypattern, uniqueindex, completed, simulation, writtendatetime) values (?.?, ?, ?::timestamp without time zone, ?, ?::timestamp without time zone, ?::timestamp without time zone, ?.?, ?.?, ?, ?.?, ?::timestamp without time zone, ?.?, ?::timestamp without time zone, ?.?, ?::timestamp without time zone, ?.?, ?::timestamp without time zone, ?.?, ?::timestamp without time zone, ?.?, ?.?, ?.?, ?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?.?, ?, ?.?, ?, ?, ?, ?, ?, current_timestamp::timestamp without time zone) on conflict do nothing;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Dec 22 13 2,071 0ms 0ms 12 1,836 0ms 0ms 0ms 0ms with rar_max as ( select resultuid from relevance_autochartist_results order by resultuid desc limit ? ) select a.symbolid, pattern, patternid, resy0, resy1, resx0, resx1, supporty0, supporty1, supportx0, supportx1, predictiontimeto, patternstarttime, timegranularity, patternendtime, direction, trendchange, patternlengthbars, patternquality, case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as uid, breakout, initialtrend, volumeincrease, symmetry as uniformity, predictionpricefrom, predictionpriceto, noise, s.exchange, s.symbol, s.longname, s.shortname, breakout, dtt.timezone, patternstartprice, patternendprice, qtytp, newlevels.profit, newlevels.stop, newlevels.filtered, case when rar.age is not null then rar.age when a.resultuid <= rm.resultuid then ? else ? end as age, case when rar.relevant is not null then rar.relevant when a.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from autochartist_results a inner join downloadersymbolsettings dss on a.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on a.symbolid = s.symbolid inner join patterns p on p.patternname = a.pattern inner join rar_max rm on ? = ? left outer join relevance_autochartist_results rar on rar.resultuid = a.resultuid left join lateral calc_cp_signal (a.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Dec 22 13 1,836 0ms 0ms 13 1,469 0ms 0ms 0ms 0ms update patternresultsrelevance set relevant = ?, saxo_relevant = ?, notrelevantpricedatetime = ?, reason = ? where uniqueindex = ? and relevant = ?;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Dec 22 13 1,469 0ms 0ms 14 1,206 0ms 0ms 0ms 0ms select symbolid, pricedatetime, classname, downloadfrequency, downloadersymbol, open, high, low, close, volume, bsf, sastdatetimereceived from ( select pricedatetime, dss.classname, dss.downloadfrequency, dss.symbolid, dss.downloadersymbol, t.open, t.high, t.low, t.close, t.volume, t.bsf, t.sastdatetimereceived, row_number() over (partition by t.symbolid order by t.pricedatetime desc) as rn from t15 t, downloadersymbolsettings dss, symbols s where dss.classname = ? and dss.downloadfrequency = ? and dss.symbolid = t.symbolid and s.symbolid = dss.symbolid and dss.enabled = ? and s.deleted = ? and dss.downloadersymbol in (...) and t.pricedatetime > now() - interval ?) as ranked_candles_table where rn = ?;Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Dec 22 13 1,206 0ms 0ms 15 1,093 0ms 0ms 0ms 0ms insert into keylevels_results (bandwidth, breakout, patternid, gmttimefound, approachingtimestamp, approachingregion, qtytp, patternlengthbars, patternprice, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, breakoutbars, breakoutprice, patternendtime, atbaridentified, atpriceidentified, errormargin, direction, symbolid, predictionpricefrom, predictionpriceto, predictiontimefrom, predictiontimebars, uniquepointsvalue, furthestprice, relevancestartdistance, patternclassid, patternstarttime, stoplosslevel, simulation, writtendatetime) values (?.?, ?, ?, ?::timestamp without time zone, ?, ?.?, ?, ?, ?.?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?.?, ?::timestamp without time zone, ?, ?.?, ?.?, ?, ?, ?.?, ?.?, ?::timestamp without time zone, ?, ?, ?.?, ?.?, ?, ?, ?.?, ?, current_timestamp::timestamp without time zone) on conflict do nothing;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Dec 22 13 1,093 0ms 0ms 16 611 0ms 0ms 0ms 0ms with rar_max as ( select resultuid from relevance_keylevels_results order by resultuid desc limit ? ) select case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as ruid, s.symbolid as sid, s.symbol as sym, longname, shortname, exchange as e, timegranularity as tg, a.patternid as pid, a.direction as d, a.patternprice as pp, atbaridentified as pet, case when (x9 != ?) then x9 when (x8 != ?) then x8 when (x7 != ?) then x7 when (x6 != ?) then x6 when (x5 != ?) then x5 when (x4 != ?) then x4 when (x3 != ?) then x3 when (x2 != ?) then x2 end as pst, patternprice as patp, x0, x1, x2, case when (x3 != ?) then x3 else ? end as x3, case when (x4 != ?) then x4 else ? end as x4, case when (x5 != ?) then x5 else ? end as x5, case when (x6 != ?) then x6 else ? end as x6, case when (x7 != ?) then x7 else ? end as x7, case when (x8 != ?) then x8 else ? end as x8, errormargin as erm, breakoutprice as pe, breakoutbars as be, breakout, atbaridentified as atbar, atpriceidentified as atprice, patternlengthbars as l, bandwidth as bw, qtytp as qtp, p.patternname as patternname, dtt.absolutetimezoneoffset as tzos, dtt.timezone as timezone, approachingtimestamp as apt, approachingregion as apr, predictionpricefrom as ppf, predictionpriceto as ppt, predictiontimefrom as ptf, predictiontimebars as ptb, furthestprice as fp, newlevels.filtered, a.uniquepointsvalue as upv, case when rar.age is not null then rar.age when a.resultuid <= rm.resultuid then ? else ? end as age, case when rar.relevant is not null then rar.relevant when a.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from keylevels_results a inner join downloadersymbolsettings dss on a.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on a.symbolid = s.symbolid inner join hrspatterns p on a.patternid = p.patternid inner join rar_max rm on ? = ? left outer join relevance_keylevels_results rar on a.resultuid = rar.resultuid left join lateral calc_kl_signal_filter (a.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Dec 22 13 611 0ms 0ms 17 585 0ms 0ms 0ms 0ms select downloadersymbol, spike_threshold from price_datafeed_spike_threshold where classname = ?;Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Dec 22 13 585 0ms 0ms 18 585 0ms 0ms 0ms 0ms select s.symbolid, dss.downloadfrequency, dss.downloadersymbol from downloadersymbolsettings dss inner join symbols s on dss.symbolid = s.symbolid where dss.classname = ? and s.deleted = ? and dss.enabled = ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Dec 22 13 585 0ms 0ms 19 574 0ms 0ms 0ms 0ms select case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as resultuid, s.symbol, pattern as patternname, timegranularity as interval, patternlengthbars as length, patternendtime, direction, breakout, predictiontimeto, predictionpricefrom, predictionpriceto, patternstartprice, resy1, supporty1, dtt.timezone, cps.pip, newlevels.profit from autochartist_results a inner join downloadersymbolsettings dss on a.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on a.symbolid = s.symbolid inner join patterns p on p.patternname = a.pattern left join currencypips cps on cps.symbol = s.symbol left join lateral calc_cp_signal (a.resultuid) newlevels on true where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Dec 22 13 574 0ms 0ms 20 522 0ms 0ms 0ms 0ms select null as table_cat, n.nspname as table_schem, c.relname as table_name, case n.nspname ~ ? or n.nspname = ? when true then case when n.nspname = ? or n.nspname = ? then case c.relkind when ? then ? when ? then ? when ? then ? else null end when n.nspname = ? then case c.relkind when ? then ? when ? then ? else null end else case c.relkind when ? then ? when ? then ? when ? then ? when ? then ? when ? then ? else null end end when false then case c.relkind when ? then ? when ? then ? when ? then ? when ? then ? when ? then ? when ? then ? when ? then ? when ? then ? else null end else null end as table_type, d.description as remarks, ? as type_cat, ? as type_schem, ? as type_name, ? as self_referencing_col_name, ? as ref_generation from pg_catalog.pg_namespace n, pg_catalog.pg_class c left join pg_catalog.pg_description d on (c.oid = d.objoid and d.objsubid = ?) left join pg_catalog.pg_class dc on (d.classoid = dc.oid and dc.relname = ?) left join pg_catalog.pg_namespace dn on (dn.oid = dc.relnamespace and dn.nspname = ?) where c.relnamespace = n.oid and c.relname like ? and (false or (c.relkind = ? and n.nspname !~ ? and n.nspname <> ?)) order by table_type, table_schem, table_name;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Dec 22 13 522 0ms 0ms Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 0ms 0ms 0ms 6 0ms insert into t30 (symbolid, pricedatetime, open, high, low, close, volume, bsf, sastdatetimereceived) values (?, ?::timestamp without time zone, ?.?, ?.?, ?.?, ?, ?, ?, ?::timestamp without time zone) on conflict (symbolid, pricedatetime) do nothing;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Dec 22 13 6 0ms 0ms 2 0ms 0ms 0ms 44 0ms select key, value from datasources ds inner join datasourceparams dsp on ds.id = dsp.datasourceid where ds.name = ?;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Dec 22 13 44 0ms 0ms 3 0ms 0ms 0ms 253 0ms with rar_max as ( select resultuid from relevance_consecutivecandles_results order by resultuid desc limit ? ), all_results as ( select ccr.resultuid as resultuid, ccr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, ccr.patternendtime as identified, dtt.timezone as timezone, ccr.qtyconsecutivecandles as length, g.basegroupname, case when rcr.age is not null then rcr.age when ccr.resultuid <= rm.resultuid then ? else ? end as age, case when rcr.relevant is not null then rcr.relevant when ccr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip, newlevels.filtered from consecutivecandles_results ccr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = ccr.symbolid inner join symbols s on ccr.symbolid = s.symbolid and s.nonliquid = ? inner join downloadersymbolsettings dss on ccr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join symbolgroup sg on ccr.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join rar_max rm on ? = ? left outer join relevance_consecutivecandles_results rcr on rcr.resultuid = ccr.resultuid left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? left join lateral calc_cc_signal_filter (ccr.resultuid) newlevels on true where ccr.gmttimefound > now() - interval ? and s.deleted = ? and (ccr.simulation = ? or ccr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or ccr.patternlengthbars <= ?) ), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Dec 22 13 253 0ms 0ms 4 0ms 0ms 0ms 49 0ms with rar_max as ( select resultuid from relevance_bigmovement_results order by resultuid desc limit ? ) select bmr.symbolid, patternstarttime, patternendtime, timegranularity, ? as direction, case when bmr.old_resultuid = ? then bmr.old_resultuid else bmr.resultuid end as uid, s.exchange, s.symbol, s.longname, s.shortname, dtt.timezone, bmr.patternmovement, bmr.statisticalmovement, bmr.fromprice, bmr.toprice, bmr.percentile, bmr.patternlengthbars, case when rbr.age is not null then rbr.age when bmr.resultuid <= rm.resultuid then ? else ? end as age, case when rbr.relevant is not null then rbr.relevant when bmr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from bigmovement_results bmr inner join downloadersymbolsettings dss on bmr.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on bmr.symbolid = s.symbolid inner join rar_max rm on ? = ? left outer join relevance_bigmovement_results rbr on rbr.resultuid = bmr.resultuid left join currencypips cps on cps.symbol = s.symbol where (bmr.old_resultuid = ? or bmr.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Dec 22 13 49 0ms 0ms 5 0ms 0ms 0ms 2,194 0ms insert into t60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) on conflict (pricedatetime, symbolid) do update set open = ?, high = ?, low = ?, close = ?, volume = ?, bsf = ?, sastdatetimewritten = ?, sastdatetimereceived = ?;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Dec 22 13 2,194 0ms 0ms 6 0ms 0ms 0ms 48 0ms select count(*) from datafeeds_latestrun where feedname ilike ? and ((latestrxtime > current_timestamp - interval ? and latestdbwritetime > current_timestamp - interval ?) or (latestdbwritetime > current_timestamp - interval ? and lateststartuptime > current_timestamp - interval ?));Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Dec 22 13 48 0ms 0ms 7 0ms 0ms 0ms 104 0ms select case when a.old_resultuid = ? then a.old_resultuid else a.resultuid end as resultuid, s.symbol, timegranularity as interval, direction as direction, patternendtime as patternendtime, patternstartprice as psp, patternendprice as pep, target03 as t03, target16 as t16, patternlengthbars as length, p.patternname as patternname, dtt.timezone, cps.pip from fibonacci_results a inner join downloadersymbolsettings dss on a.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join symbols s on a.symbolid = s.symbolid inner join fibonaccipatterns p on a.pattern = p.patternname left join currencypips cps on cps.symbol = s.symbol where (a.old_resultuid = ? or a.resultuid = ?) and dtt.dayofweek = ?;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Dec 22 13 104 0ms 0ms 8 0ms 0ms 0ms 4 0ms select updaterelevantforrelevantresults ();Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Dec 22 13 4 0ms 0ms 9 0ms 0ms 0ms 1,469 0ms update patternresultsrelevance set relevant = ?, saxo_relevant = ?, notrelevantpricedatetime = ?, reason = ? where uniqueindex = ? and relevant = ?;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Dec 22 13 1,469 0ms 0ms 10 0ms 0ms 0ms 7 0ms insert into resultmedia (processresultsid, type, name, filename) values (?, ?, ?, ?) returning id;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Dec 22 13 7 0ms 0ms 11 0ms 0ms 0ms 12 0ms select t.pricedatetime as pricedatetime, t.open as open, t.high as high, t.low as low, t.close "..." close, t.volume as volume, t.bsf as bsf from t1440 t where symbolid = ? and (bsf = ? or bsf is null) order by pricedatetime desc limit ?;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Dec 22 13 12 0ms 0ms 12 0ms 0ms 0ms 3 0ms insert into t15 (symbolid, pricedatetime, open, high, low, close, volume, bsf, sastdatetimereceived) values (?, ?::timestamp without time zone, ?.?, ?, ?.?, ?, ?, ?, ?::timestamp without time zone) on conflict (symbolid, pricedatetime) do nothing;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Dec 22 13 3 0ms 0ms 13 0ms 0ms 0ms 18 0ms select cast(count(*) / cast(setting as numeric) * ? as int) from pg_stat_activity, pg_settings where name = ? group by setting;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Dec 22 13 18 0ms 0ms 14 0ms 0ms 0ms 239 0ms select v.datname, c.relname, v.phase, v.heap_blks_total, v.heap_blks_scanned, v.heap_blks_vacuumed, v.index_vacuum_count, v.max_dead_tuples, v.num_dead_tuples from pg_stat_progress_vacuum as v join pg_class c on c.oid = v.relid;Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Dec 22 13 239 0ms 0ms 15 0ms 0ms 0ms 25 0ms select * from ( select pricedatetime, open, high, low, close, volume, bsf from t60 where symbolid = ? and (bsf = ? or bsf is null) order by pricedatetime desc limit ?) a order by pricedatetime asc;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Dec 22 13 25 0ms 0ms 16 0ms 0ms 0ms 24 0ms with pre_symbols as ( select s.symbolid, s.symbol, s.timegranularity, dss.downloadersymbol, dtt.timezone, s.exchange, s.longname from symbols s inner join downloadersymbolsettings dss on dss.symbolid = s.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join brokersymbollist bsl on bsl.symbolid = s.symbolid and brokerid = ? where dss.classname in (...) and (dss.downloadersymbol in (...) or s.symbol in (...)) and dss.enabled = ? and s.nonliquid = ? and s.deleted = ? ), report_symbols as ( select ps1.*, ps2.symbolid as price_symbol_id from pre_symbols ps1 inner join pre_symbols ps2 on ps1.symbol = ps2.symbol and ps1.downloadersymbol = ps2.downloadersymbol and ps2.timegranularity = ? ), rbr_max as ( select resultuid from relevance_bigmovement_results order by resultuid desc limit ? ) select bmr.resultuid as ruid, ? as direction, rs.symbol as sym, rs.downloadersymbol, rs.symbolid as sid, rs.timegranularity as tg, rs.timezone, rs.exchange as e, rs.longname, bmr.patternendtime as pet, lpi.latestpricedatetime as lpdt, bmr.patternlengthbars as l, bmr.breakout >= ? as complete, rbr.age as age from bigmovement_results bmr inner join report_symbols rs on rs.symbolid = bmr.symbolid inner join autochartist_symbolupdates lpi on lpi.symbolid = rs.price_symbol_id inner join rbr_max rm on ? = ? left outer join relevance_bigmovement_results rbr on rbr.resultuid = bmr.resultuid where patternendtime >= (now() - ? * interval ?) -- results can't be more than ? days old and (bmr.resultuid > rm.resultuid or rbr.relevant = ?) ;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Dec 22 13 24 0ms 0ms 17 0ms 0ms 0ms 344 0ms commit;Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Dec 22 13 344 0ms 0ms 18 0ms 0ms 0ms 362 0ms with rar_max as ( select resultuid from relevance_keylevels_results order by resultuid desc limit ? ), kr as ( select a.*, rr.age, rr.relevant from keylevels_results a left outer join relevance_keylevels_results rr on a.resultuid = rr.resultuid where case when false = ? then true else a.resultuid > ( select min(resultuid) from relevance_keylevels_results) end ), all_results as ( select kr.resultuid as resultuid, kr.direction as direction, s.exchange as exchange, s.symbolid as symbolid, coalesce(bim.code, s.symbol) as symbol_code, s.longname as symbol_name, s.timegranularity as interval, p.patternname as pattern_name, kr.breakout as breakout, kr.atbaridentified as identified, dtt.timezone as timezone, kr.patternlengthbars as length, g.basegroupname, newlevels.filtered, case when kr.age is not null then kr.age when kr.resultuid <= rm.resultuid then ? else ? end as age, case when kr.relevant is not null then kr.relevant when kr.resultuid <= rm.resultuid then ? else ? end as relevant, cps.pip from kr inner join brokersymbollist bsl on bsl.brokerid = ? and bsl.symbolid = kr.symbolid inner join symbols s on bsl.symbolid = s.symbolid and s.nonliquid = ? inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join brokergroups bg on g.groupid = bg.groupid and bsl.brokerid = bg.brokerid inner join hrspatterns p on kr.patternid = p.patternid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname and dtt.dayofweek = ? inner join rar_max rm on ? = ? left outer join autochartist_symbolupdates au on dss.symbolid = au.symbolid left outer join relevance_keylevels_results rar on rar.resultuid = kr.resultuid left join lateral calc_kl_signal_filter (kr.resultuid) newlevels on true left join currencypips cps on cps.symbol = s.symbol left outer join brokerinstrumentmap bim on dss.datafeedinstrumentid = bim.datafeedinstrumentid and bim.brokerid = bsl.brokerid and bim.type = ? where kr.gmttimefound > now() - interval ? and dss.enabled = ? and s.deleted = ? and (kr.simulation = ? or kr.simulation is null) and (? = ? or s.timegranularity in (...)) and (? = ? or s.exchange in (...)) and (? = ? or coalesce(bim.code, s.symbol) in (...)) and (? = ? or p.patternname in (...)) and (? = ? or kr.patternclassid in (...)) and (? = ? or kr.patternlengthbars <= ?) and kr.patternstarttime::timestamp without time zone >= coalesce(au.earliestpricedatetime, ?::timestamp without time zone) -- to make sure patternstarttime is in our t-tables ), results as ( select distinct on (symbolid) * from all_results where (false = ? or relevant = ?) and (? = ? or age <= ?) order by symbolid, resultuid ) select * from results order by identified desc, length desc limit ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Dec 22 13 362 0ms 0ms 19 0ms 0ms 0ms 14 0ms select psd.symbolid, psd.hourlysymbolid as intervalsymbolid, s.symbol, dtt.timezone, dtt.absolutetimezoneoffset, psh.hour as index, psh.ave, psh.stddev, ((psh.ave - psh.stddev) / ?.?) as low, ((psh.ave + psh.stddev) / ?.?) as high, ee.timezone as exchangetimezone, ee.mon_t1start as exchangestart, ee.mon_t1end as exchangeend from powerstats_symboldata psd inner join powerstats_hourly psh on psd.hourlysymbolid = psh.symbolid inner join symbols s on psh.symbolid = s.symbolid inner join downloadersymbolsettings dss on s.symbolid = dss.symbolid inner join datafeedstimetable dtt on dss.classname = dtt.classname inner join mat_ps_hourly_symbolid_max_enddate e on psh.enddate = e.enddate and psh.symbolid = e.symbolid inner join exchanges ee on ee.exchange = s.exchange where psd.symbolid = ? and dtt.dayofweek = ? order by hour asc;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Dec 22 13 14 0ms 0ms 20 0ms 0ms 0ms 3 0ms select (cast(substring(tz.gmoffset from ? for ?) as float) * ? + cast(substring(tz.gmoffset from ? for ?) as float)) / ? as offset from timezones tz where tz.timezone = ?;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Dec 22 13 3 0ms 0ms Time consuming prepare
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 2s984ms 2,707 0ms 13ms 1ms WITH rar_max as ( ;Times Reported Time consuming prepare #1
Day Hour Count Duration Avg duration Dec 22 13 2,707 2s984ms 1ms -
WITH rar_max as ( ;
Date: 2025-12-22 13:24:39 Duration: 13ms Database: postgres
-
WITH rar_max as ( ;
Date: 2025-12-22 13:06:40 Duration: 12ms Database: postgres
-
WITH rar_max as ( ;
Date: 2025-12-22 13:40:34 Duration: 10ms Database: postgres
2 2s532ms 4,457 0ms 13ms 0ms SELECT ;Times Reported Time consuming prepare #2
Day Hour Count Duration Avg duration 13 4,457 2s532ms 0ms -
SELECT ;
Date: 2025-12-22 13:21:09 Duration: 13ms Database: postgres
-
SELECT ;
Date: 2025-12-22 13:41:34 Duration: 11ms Database: postgres
-
SELECT ;
Date: 2025-12-22 13:19:17 Duration: 11ms Database: postgres
3 1s484ms 1,324 0ms 2ms 1ms SELECT symbolid, ;Times Reported Time consuming prepare #3
Day Hour Count Duration Avg duration 13 1,324 1s484ms 1ms -
SELECT symbolid, ;
Date: 2025-12-22 13:11:16 Duration: 2ms Database: postgres
-
SELECT symbolid, ;
Date: 2025-12-22 13:00:54 Duration: 2ms Database: postgres
-
SELECT symbolid, ;
Date: 2025-12-22 13:11:16 Duration: 2ms Database: postgres
4 545ms 585 0ms 1ms 0ms SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;Times Reported Time consuming prepare #4
Day Hour Count Duration Avg duration 13 585 545ms 0ms -
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-12-22 13:00:59 Duration: 1ms Database: postgres
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-12-22 13:30:57 Duration: 1ms Database: postgres
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-12-22 13:00:54 Duration: 1ms Database: postgres
5 413ms 3,074 0ms 5ms 0ms SET extra_float_digits = 3;Times Reported Time consuming prepare #5
Day Hour Count Duration Avg duration 13 3,074 413ms 0ms -
SET extra_float_digits = 3;
Date: 2025-12-22 13:00:00 Duration: 5ms Database: postgres
-
SET extra_float_digits = 3;
Date: 2025-12-22 13:41:34 Duration: 5ms Database: postgres
-
SET extra_float_digits = 3;
Date: 2025-12-22 13:05:54 Duration: 3ms Database: postgres
6 281ms 3,234 0ms 0ms 0ms INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming prepare #6
Day Hour Count Duration Avg duration 13 3,234 281ms 0ms -
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:11:16 Duration: 0ms Database: postgres
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:11:58 Duration: 0ms Database: postgres
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:00:57 Duration: 0ms Database: postgres
7 210ms 2,025 0ms 0ms 0ms INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming prepare #7
Day Hour Count Duration Avg duration 13 2,025 210ms 0ms -
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:01:53 Duration: 0ms Database: postgres
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:02:06 Duration: 0ms Database: postgres
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:17:01 Duration: 0ms Database: postgres
8 185ms 1,223 0ms 0ms 0ms INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming prepare #8
Day Hour Count Duration Avg duration 13 1,223 185ms 0ms -
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:02:06 Duration: 0ms Database: postgres
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:26:16 Duration: 0ms Database: postgres
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:32:02 Duration: 0ms Database: postgres
9 179ms 3,512 0ms 5ms 0ms select 1;Times Reported Time consuming prepare #9
Day Hour Count Duration Avg duration 13 3,512 179ms 0ms -
select 1;
Date: 2025-12-22 13:46:05 Duration: 5ms Database: postgres
-
select 1;
Date: 2025-12-22 13:21:40 Duration: 2ms Database: postgres
-
select 1;
Date: 2025-12-22 13:37:59 Duration: 2ms Database: postgres
10 98ms 16 4ms 7ms 6ms with sym_info as ( ;Times Reported Time consuming prepare #10
Day Hour Count Duration Avg duration 13 16 98ms 6ms -
with sym_info as ( ;
Date: 2025-12-22 13:21:45 Duration: 7ms Database: postgres
-
with sym_info as ( ;
Date: 2025-12-22 13:06:44 Duration: 6ms Database: postgres
-
with sym_info as ( ;
Date: 2025-12-22 13:51:49 Duration: 6ms Database: postgres
11 81ms 522 0ms 0ms 0ms SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;Times Reported Time consuming prepare #11
Day Hour Count Duration Avg duration 13 522 81ms 0ms -
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2025-12-22 13:13:48 Duration: 0ms Database: postgres
-
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2025-12-22 13:13:44 Duration: 0ms Database: postgres
-
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2025-12-22 13:13:18 Duration: 0ms Database: postgres
12 44ms 18 1ms 4ms 2ms select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;Times Reported Time consuming prepare #12
Day Hour Count Duration Avg duration 13 18 44ms 2ms -
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-12-22 13:21:01 Duration: 4ms Database: postgres
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-12-22 13:31:01 Duration: 2ms Database: postgres
-
select cast(count(*) / cast(setting as numeric) * 100 as int) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by setting;
Date: 2025-12-22 13:41:06 Duration: 2ms Database: postgres
13 43ms 3,048 0ms 3ms 0ms SET application_name = 'PostgreSQL JDBC Driver';Times Reported Time consuming prepare #13
Day Hour Count Duration Avg duration 13 3,048 43ms 0ms -
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-12-22 13:40:34 Duration: 3ms Database: postgres
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-12-22 13:38:43 Duration: 1ms Database: postgres
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2025-12-22 13:40:04 Duration: 0ms Database: postgres
14 42ms 100 0ms 2ms 0ms WITH pre_symbols AS ( /* find relevant symbols */ ;Times Reported Time consuming prepare #14
Day Hour Count Duration Avg duration 13 100 42ms 0ms -
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2025-12-22 13:13:18 Duration: 2ms Database: postgres
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2025-12-22 13:13:18 Duration: 2ms Database: postgres
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2025-12-22 13:13:43 Duration: 1ms Database: postgres
15 31ms 28 0ms 2ms 1ms WITH last_candle AS ( ;Times Reported Time consuming prepare #15
Day Hour Count Duration Avg duration 13 28 31ms 1ms -
WITH last_candle AS ( ;
Date: 2025-12-22 13:32:01 Duration: 2ms Database: postgres
-
WITH last_candle AS ( ;
Date: 2025-12-22 13:04:01 Duration: 2ms Database: postgres
-
WITH last_candle AS ( ;
Date: 2025-12-22 13:16:00 Duration: 2ms Database: postgres
16 13ms 6 2ms 3ms 2ms select client_addr, count(1) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by client_addr, setting having (client_addr is not null OR (client_addr is null and count(1) > (cast(setting as numeric) / 3 * 2))) order by count desc;Times Reported Time consuming prepare #16
Day Hour Count Duration Avg duration 13 6 13ms 2ms -
select client_addr, count(1) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by client_addr, setting having (client_addr is not null OR (client_addr is null and count(1) > (cast(setting as numeric) / 3 * 2))) order by count desc;
Date: 2025-12-22 13:40:05 Duration: 3ms Database: postgres
-
select client_addr, count(1) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by client_addr, setting having (client_addr is not null OR (client_addr is null and count(1) > (cast(setting as numeric) / 3 * 2))) order by count desc;
Date: 2025-12-22 13:00:05 Duration: 2ms Database: postgres
-
select client_addr, count(1) from pg_stat_activity, pg_settings WHERE name = 'max_connections' group by client_addr, setting having (client_addr is not null OR (client_addr is null and count(1) > (cast(setting as numeric) / 3 * 2))) order by count desc;
Date: 2025-12-22 13:50:04 Duration: 2ms Database: postgres
17 13ms 24 0ms 0ms 0ms select count(*) from datafeed_restarter_events where is_current_entry = 1;Times Reported Time consuming prepare #17
Day Hour Count Duration Avg duration 13 24 13ms 0ms -
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2025-12-22 13:00:03 Duration: 0ms Database: postgres
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2025-12-22 13:40:02 Duration: 0ms Database: postgres
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2025-12-22 13:50:06 Duration: 0ms Database: postgres
18 12ms 6 2ms 2ms 2ms with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;Times Reported Time consuming prepare #18
Day Hour Count Duration Avg duration 13 6 12ms 2ms -
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2025-12-22 13:40:02 Duration: 2ms Database: postgres
-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2025-12-22 13:20:02 Duration: 2ms Database: postgres
-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2025-12-22 13:50:02 Duration: 2ms Database: postgres
19 11ms 19 0ms 2ms 0ms WITH rcr_max as ( ;Times Reported Time consuming prepare #19
Day Hour Count Duration Avg duration 13 19 11ms 0ms -
WITH rcr_max as ( ;
Date: 2025-12-22 13:01:57 Duration: 2ms Database: postgres
-
WITH rcr_max as ( ;
Date: 2025-12-22 13:05:53 Duration: 2ms Database: postgres
-
WITH rcr_max as ( ;
Date: 2025-12-22 13:04:57 Duration: 1ms Database: postgres
20 7ms 8 0ms 1ms 0ms select *, ;Times Reported Time consuming prepare #20
Day Hour Count Duration Avg duration 13 8 7ms 0ms -
select *, ;
Date: 2025-12-22 13:41:10 Duration: 1ms Database: postgres
-
select *, ;
Date: 2025-12-22 13:41:10 Duration: 1ms Database: postgres
-
select *, ;
Date: 2025-12-22 13:56:11 Duration: 1ms Database: postgres
Time consuming bind
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 36s138ms 4,254 0ms 54ms 8ms WITH rar_max as ( ;Times Reported Time consuming bind #1
Day Hour Count Duration Avg duration Dec 22 13 4,254 36s138ms 8ms -
WITH rar_max as ( ;
Date: 2025-12-22 13:00:59 Duration: 54ms Database: postgres parameters: $1 = '667', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '0', $10 = 't', $11 = '0', $12 = '0'
-
WITH rar_max as ( ;
Date: 2025-12-22 13:40:34 Duration: 48ms Database: postgres parameters: $1 = '607370268259274301', $2 = '607370268259274301', $3 = '607370268259274301'
-
WITH rar_max as ( ;
Date: 2025-12-22 13:40:34 Duration: 45ms Database: postgres parameters: $1 = '607357063332409301', $2 = '607357063332409301', $3 = '607357063332409301'
2 11s68ms 21,655 0ms 28ms 0ms SELECT ;Times Reported Time consuming bind #2
Day Hour Count Duration Avg duration 13 21,655 11s68ms 0ms -
SELECT ;
Date: 2025-12-22 13:41:04 Duration: 28ms Database: postgres parameters: $1 = '958', $2 = '958', $3 = '515840233377539300'
-
SELECT ;
Date: 2025-12-22 13:39:05 Duration: 26ms Database: postgres parameters: $1 = '958', $2 = '958', $3 = '515840233377539300'
-
SELECT ;
Date: 2025-12-22 13:41:04 Duration: 26ms Database: postgres parameters: $1 = '958', $2 = '958', $3 = '515840243160827300'
3 2s776ms 1,324 0ms 5ms 2ms SELECT symbolid, ;Times Reported Time consuming bind #3
Day Hour Count Duration Avg duration 13 1,324 2s776ms 2ms -
SELECT symbolid, ;
Date: 2025-12-22 13:15:42 Duration: 5ms Database: postgres parameters: $1 = 'ICMARKETS', $2 = '15', $3 = 'XTIUSD'
-
SELECT symbolid, ;
Date: 2025-12-22 13:01:12 Duration: 3ms Database: postgres parameters: $1 = 'BDSWISS', $2 = '15', $3 = 'LTCUSD', $4 = 'NAS100'
-
SELECT symbolid, ;
Date: 2025-12-22 13:11:16 Duration: 3ms Database: postgres parameters: $1 = 'BDSWISS', $2 = '60', $3 = 'SPX500', $4 = 'US30'
4 913ms 585 1ms 2ms 1ms SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;Times Reported Time consuming bind #4
Day Hour Count Duration Avg duration 13 585 913ms 1ms -
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-12-22 13:45:51 Duration: 2ms Database: postgres parameters: $1 = 'GLOBALGTMT5'
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-12-22 13:16:04 Duration: 2ms Database: postgres parameters: $1 = 'AXIORY'
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2025-12-22 13:32:55 Duration: 2ms Database: postgres parameters: $1 = 'PEPPERSTONEMT5'
5 660ms 16 28ms 44ms 41ms with sym_info as ( ;Times Reported Time consuming bind #5
Day Hour Count Duration Avg duration 13 16 660ms 41ms -
with sym_info as ( ;
Date: 2025-12-22 13:21:45 Duration: 44ms Database: postgres parameters: $1 = '620', $2 = 'Forex', $3 = 'Forex', $4 = '620', $5 = 'Forex', $6 = '620', $7 = '620', $8 = 'Forex', $9 = '620'
-
with sym_info as ( ;
Date: 2025-12-22 13:06:56 Duration: 44ms Database: postgres parameters: $1 = '692', $2 = 'Forex', $3 = 'Forex', $4 = '692', $5 = 'Forex', $6 = '692', $7 = '692', $8 = 'Forex', $9 = '692'
-
with sym_info as ( ;
Date: 2025-12-22 13:36:57 Duration: 44ms Database: postgres parameters: $1 = '692', $2 = 'Forex', $3 = 'Forex', $4 = '692', $5 = 'Forex', $6 = '692', $7 = '692', $8 = 'Forex', $9 = '692'
6 426ms 20 0ms 39ms 21ms with wh_patitioned as ( ;Times Reported Time consuming bind #6
Day Hour Count Duration Avg duration 13 20 426ms 21ms -
with wh_patitioned as ( ;
Date: 2025-12-22 13:41:56 Duration: 39ms Database: postgres parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
-
with wh_patitioned as ( ;
Date: 2025-12-22 13:59:05 Duration: 30ms Database: postgres parameters: $1 = '627', $2 = '627', $3 = '627', $4 = '627', $5 = '627', $6 = '627', $7 = '627', $8 = '627', $9 = '627'
-
with wh_patitioned as ( ;
Date: 2025-12-22 13:40:02 Duration: 28ms Database: postgres parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
7 423ms 18,720 0ms 11ms 0ms select 1;Times Reported Time consuming bind #7
Day Hour Count Duration Avg duration 13 18,720 423ms 0ms -
select 1;
Date: 2025-12-22 13:46:32 Duration: 11ms Database: postgres
-
select 1;
Date: 2025-12-22 13:05:54 Duration: 2ms Database: postgres
-
select 1;
Date: 2025-12-22 13:24:39 Duration: 2ms Database: postgres
8 335ms 100 0ms 32ms 3ms WITH pre_symbols AS ( /* find relevant symbols */ ;Times Reported Time consuming bind #8
Day Hour Count Duration Avg duration 13 100 335ms 3ms -
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2025-12-22 13:14:01 Duration: 32ms Database: postgres parameters: $1 = '974', $2 = 'ICMARKETS-AU-MT5', $3 = 'AUDCAD', $4 = 'AUDCHF', $5 = 'AUDJPY', $6 = 'AUDNZD', $7 = 'AUDSGD', $8 = 'AUDUSD', $9 = 'AUS200', $10 = 'BRENT_F0', $11 = 'BRENT_F1', $12 = 'BRENT_F2', $13 = 'BRENT_F3', $14 = 'BRENT_F4', $15 = 'BRENT_F5', $16 = 'BRENT_F6', $17 = 'BRENT_F7', $18 = 'BRENT_F8', $19 = 'BRENT_F9', $20 = 'BRENT_G0', $21 = 'BRENT_G1', $22 = 'BRENT_G2', $23 = 'BRENT_G3', $24 = 'BRENT_G4', $25 = 'BRENT_G5', $26 = 'BRENT_G6', $27 = 'BRENT_G7', $28 = 'BRENT_G8', $29 = 'BRENT_G9', $30 = 'BRENT_H0', $31 = 'BRENT_H1', $32 = 'BRENT_H2', $33 = 'BRENT_H3', $34 = 'BRENT_H4', $35 = 'BRENT_H5', $36 = 'BRENT_H6', $37 = 'BRENT_H7', $38 = 'BRENT_H8', $39 = 'BRENT_H9', $40 = 'BRENT_J0', $41 = 'BRENT_J1', $42 = 'BRENT_J2', $43 = 'BRENT_J3', $44 = 'BRENT_J4', $45 = 'BRENT_J5', $46 = 'BRENT_J6', $47 = 'BRENT_J7', $48 = 'BRENT_J8', $49 = 'BRENT_J9', $50 = 'BRENT_K0', $51 = 'BRENT_K1', $52 = 'BRENT_K2', $53 = 'BRENT_K3', $54 = 'BRENT_K4', $55 = 'BRENT_K5', $56 = 'BRENT_K6', $57 = 'BRENT_K7', $58 = 'BRENT_K8', $59 = 'BRENT_K9', $60 = 'BRENT_M0', $61 = 'BRENT_M1', $62 = 'BRENT_M2', $63 = 'BRENT_M3', $64 = 'BRENT_M4', $65 = 'BRENT_M5', $66 = 'BRENT_M6', $67 = 'BRENT_M7', $68 = 'BRENT_M8', $69 = 'BRENT_M9', $70 = 'BRENT_N0', $71 = 'BRENT_N1', $72 = 'BRENT_N2', $73 = 'BRENT_N3', $74 = 'BRENT_N4', $75 = 'BRENT_N5', $76 = 'BRENT_N6', $77 = 'BRENT_N7', $78 = 'BRENT_N8', $79 = 'BRENT_N9', $80 = 'BRENT_Q0', $81 = 'BRENT_Q1', $82 = 'BRENT_Q2', $83 = 'BRENT_Q3', $84 = 'BRENT_Q4', $85 = 'BRENT_Q5', $86 = 'BRENT_Q6', $87 = 'BRENT_Q7', $88 = 'BRENT_Q8', $89 = 'BRENT_Q9', $90 = 'BRENT_U0', $91 = 'BRENT_U1', $92 = 'BRENT_U2', $93 = 'BRENT_U3', $94 = 'BRENT_U4', $95 = 'BRENT_U5', $96 = 'BRENT_U6', $97 = 'BRENT_U7', $98 = 'BRENT_U8', $99 = 'BRENT_U9', $100 = 'BRENT_V0', $101 = 'BRENT_V1', $102 = 'BRENT_V2', $103 = 'BRENT_V3', $104 = 'BRENT_V4', $105 = 'BRENT_V5', $106 = 'BRENT_V6', $107 = 'BRENT_V7', $108 = 'BRENT_V8', $109 = 'BRENT_V9', $110 = 'BRENT_X0', $111 = 'BRENT_X1', $112 = 'BRENT_X2', $113 = 'BRENT_X3', $114 = 'BRENT_X4', $115 = 'BRENT_X5', $116 = 'BRENT_X6', $117 = 'BRENT_X7', $118 = 'BRENT_X8', $119 = 'BRENT_X9', $120 = 'BRENT_Z0', $121 = 'BRENT_Z1', $122 = 'BRENT_Z2', $123 = 'BRENT_Z3', $124 = 'BRENT_Z4', $125 = 'BRENT_Z5', $126 = 'BRENT_Z6', $127 = 'BRENT_Z7', $128 = 'BRENT_Z8', $129 = 'BRENT_Z9', $130 = 'BTCUSD', $131 = 'CADCHF', $132 = 'CADJPY', $133 = 'CHFJPY', $134 = 'CHFSGD', $135 = 'CHINA50', $136 = 'Coffee_F0', $137 = 'Coffee_F1', $138 = 'Coffee_F2', $139 = 'Coffee_F3', $140 = 'Coffee_F4', $141 = 'Coffee_F5', $142 = 'Coffee_F6', $143 = 'Coffee_F7', $144 = 'Coffee_F8', $145 = 'Coffee_F9', $146 = 'Coffee_G0', $147 = 'Coffee_G1', $148 = 'Coffee_G2', $149 = 'Coffee_G3', $150 = 'Coffee_G4', $151 = 'Coffee_G5', $152 = 'Coffee_G6', $153 = 'Coffee_G7', $154 = 'Coffee_G8', $155 = 'Coffee_G9', $156 = 'Coffee_H0', $157 = 'Coffee_H1', $158 = 'Coffee_H2', $159 = 'Coffee_H3', $160 = 'Coffee_H4', $161 = 'Coffee_H5', $162 = 'Coffee_H6', $163 = 'Coffee_H7', $164 = 'Coffee_H8', $165 = 'Coffee_H9', $166 = 'Coffee_J0', $167 = 'Coffee_J1', $168 = 'Coffee_J2', $169 = 'Coffee_J3', $170 = 'Coffee_J4', $171 = 'Coffee_J5', $172 = 'Coffee_J6', $173 = 'Coffee_J7', $174 = 'Coffee_J8', $175 = 'Coffee_J9', $176 = 'Coffee_K0', $177 = 'Coffee_K1', $178 = 'Coffee_K2', $179 = 'Coffee_K3', $180 = 'Coffee_K4', $181 = 'Coffee_K5', $182 = 'Coffee_K6', $183 = 'Coffee_K7', $184 = 'Coffee_K8', $185 = 'Coffee_K9', $186 = 'Coffee_M0', $187 = 'Coffee_M1', $188 = 'Coffee_M2', $189 = 'Coffee_M3', $190 = 'Coffee_M4', $191 = 'Coffee_M5', $192 = 'Coffee_M6', $193 = 'Coffee_M7', $194 = 'Coffee_M8', $195 = 'Coffee_M9', $196 = 'Coffee_N0', $197 = 'Coffee_N1', $198 = 'Coffee_N2', $199 = 'Coffee_N3', $200 = 'Coffee_N4', $201 = 'Coffee_N5', $202 = 'Coffee_N6', $203 = 'Coffee_N7', $204 = 'Coffee_N8', $205 = 'Coffee_N9', $206 = 'Coffee_Q0', $207 = 'Coffee_Q1', $208 = 'Coffee_Q2', $209 = 'Coffee_Q3', $210 = 'Coffee_Q4', $211 = 'Coffee_Q5', $212 = 'Coffee_Q6', $213 = 'Coffee_Q7', $214 = 'Coffee_Q8', $215 = 'Coffee_Q9', $216 = 'Coffee_U0', $217 = 'Coffee_U1', $218 = 'Coffee_U2', $219 = 'Coffee_U3', $220 = 'Coffee_U4', $221 = 'Coffee_U5', $222 = 'Coffee_U6', $223 = 'Coffee_U7', $224 = 'Coffee_U8', $225 = 'Coffee_U9', $226 = 'Coffee_V0', $227 = 'Coffee_V1', $228 = 'Coffee_V2', $229 = 'Coffee_V3', $230 = 'Coffee_V4', $231 = 'Coffee_V5', $232 = 'Coffee_V6', $233 = 'Coffee_V7', $234 = 'Coffee_V8', $235 = 'Coffee_V9', $236 = 'Coffee_X0', $237 = 'Coffee_X1', $238 = 'Coffee_X2', $239 = 'Coffee_X3', $240 = 'Coffee_X4', $241 = 'Coffee_X5', $242 = 'Coffee_X6', $243 = 'Coffee_X7', $244 = 'Coffee_X8', $245 = 'Coffee_X9', $246 = 'Coffee_Z0', $247 = 'Coffee_Z1', $248 = 'Coffee_Z2', $249 = 'Coffee_Z3', $250 = 'Coffee_Z4', $251 = 'Coffee_Z5', $252 = 'Coffee_Z6', $253 = 'Coffee_Z7', $254 = 'Coffee_Z8', $255 = 'Coffee_Z9', $256 = 'Corn_F0', $257 = 'Corn_F1', $258 = 'Corn_F2', $259 = 'Corn_F3', $260 = 'Corn_F4', $261 = 'Corn_F5', $262 = 'Corn_F6', $263 = 'Corn_F7', $264 = 'Corn_F8', $265 = 'Corn_F9', $266 = 'Corn_G0', $267 = 'Corn_G1', $268 = 'Corn_G2', $269 = 'Corn_G3', $270 = 'Corn_G4', $271 = 'Corn_G5', $272 = 'Corn_G6', $273 = 'Corn_G7', $274 = 'Corn_G8', $275 = 'Corn_G9', $276 = 'Corn_H0', $277 = 'Corn_H1', $278 = 'Corn_H2', $279 = 'Corn_H3', $280 = 'Corn_H4', $281 = 'Corn_H5', $282 = 'Corn_H6', $283 = 'Corn_H7', $284 = 'Corn_H8', $285 = 'Corn_H9', $286 = 'Corn_J0', $287 = 'Corn_J1', $288 = 'Corn_J2', $289 = 'Corn_J3', $290 = 'Corn_J4', $291 = 'Corn_J5', $292 = 'Corn_J6', $293 = 'Corn_J7', $294 = 'Corn_J8', $295 = 'Corn_J9', $296 = 'Corn_K0', $297 = 'Corn_K1', $298 = 'Corn_K2', $299 = 'Corn_K3', $300 = 'Corn_K4', $301 = 'Corn_K5', $302 = 'Corn_K6', $303 = 'Corn_K7', $304 = 'Corn_K8', $305 = 'Corn_K9', $306 = 'Corn_M0', $307 = 'Corn_M1', $308 = 'Corn_M2', $309 = 'Corn_M3', $310 = 'Corn_M4', $311 = 'Corn_M5', $312 = 'Corn_M6', $313 = 'Corn_M7', $314 = 'Corn_M8', $315 = 'Corn_M9', $316 = 'Corn_N0', $317 = 'Corn_N1', $318 = 'Corn_N2', $319 = 'Corn_N3', $320 = 'Corn_N4', $321 = 'Corn_N5', $322 = 'Corn_N6', $323 = 'Corn_N7', $324 = 'Corn_N8', $325 = 'Corn_N9', $326 = 'Corn_Q0', $327 = 'Corn_Q1', $328 = 'Corn_Q2', $329 = 'Corn_Q3', $330 = 'Corn_Q4', $331 = 'Corn_Q5', $332 = 'Corn_Q6', $333 = 'Corn_Q7', $334 = 'Corn_Q8', $335 = 'Corn_Q9', $336 = 'Corn_U0', $337 = 'Corn_U1', $338 = 'Corn_U2', $339 = 'Corn_U3', $340 = 'Corn_U4', $341 = 'Corn_U5', $342 = 'Corn_U6', $343 = 'Corn_U7', $344 = 'Corn_U8', $345 = 'Corn_U9', $346 = 'Corn_V0', $347 = 'Corn_V1', $348 = 'Corn_V2', $349 = 'Corn_V3', $350 = 'Corn_V4', $351 = 'Corn_V5', $352 = 'Corn_V6', $353 = 'Corn_V7', $354 = 'Corn_V8', $355 = 'Corn_V9', $356 = 'Corn_X0', $357 = 'Corn_X1', $358 = 'Corn_X2', $359 = 'Corn_X3', $360 = 'Corn_X4', $361 = 'Corn_X5', $362 = 'Corn_X6', $363 = 'Corn_X7', $364 = 'Corn_X8', $365 = 'Corn_X9', $366 = 'Corn_Z0', $367 = 'Corn_Z1', $368 = 'Corn_Z2', $369 = 'Corn_Z3', $370 = 'Corn_Z4', $371 = 'Corn_Z5', $372 = 'Corn_Z6', $373 = 'Corn_Z7', $374 = 'Corn_Z8', $375 = 'Corn_Z9', $376 = 'DE30', $377 = 'ES35', $378 = 'EURAUD', $379 = 'EURCAD', $380 = 'EURCHF', $381 = 'EURDKK', $382 = 'EURGBP', $383 = 'EURHKD', $384 = 'EURJPY', $385 = 'EURNOK', $386 = 'EURNZD', $387 = 'EURPLN', $388 = 'EURSEK', $389 = 'EURSGD', $390 = 'EURTRY', $391 = 'EURUSD', $392 = 'EURZAR', $393 = 'F40', $394 = 'GBPAUD', $395 = 'GBPCAD', $396 = 'GBPCHF', $397 = 'GBPDKK', $398 = 'GBPJPY', $399 = 'GBPNOK', $400 = 'GBPNZD', $401 = 'GBPSEK', $402 = 'GBPSGD', $403 = 'GBPUSD', $404 = 'HK50', $405 = 'IT40', $406 = 'JP225', $407 = 'NOKJPY', $408 = 'NOKSEK', $409 = 'NZDCAD', $410 = 'NZDCHF', $411 = 'NZDJPY', $412 = 'NZDUSD', $413 = 'SEKJPY', $414 = 'SGDJPY', $415 = 'STOXX50', $416 = 'Soybean_F0', $417 = 'Soybean_F1', $418 = 'Soybean_F2', $419 = 'Soybean_F3', $420 = 'Soybean_F4', $421 = 'Soybean_F5', $422 = 'Soybean_F6', $423 = 'Soybean_F7', $424 = 'Soybean_F8', $425 = 'Soybean_F9', $426 = 'Soybean_G0', $427 = 'Soybean_G1', $428 = 'Soybean_G2', $429 = 'Soybean_G3', $430 = 'Soybean_G4', $431 = 'Soybean_G5', $432 = 'Soybean_G6', $433 = 'Soybean_G7', $434 = 'Soybean_G8', $435 = 'Soybean_G9', $436 = 'Soybean_H0', $437 = 'Soybean_H1', $438 = 'Soybean_H2', $439 = 'Soybean_H3', $440 = 'Soybean_H4', $441 = 'Soybean_H5', $442 = 'Soybean_H6', $443 = 'Soybean_H7', $444 = 'Soybean_H8', $445 = 'Soybean_H9', $446 = 'Soybean_J0', $447 = 'Soybean_J1', $448 = 'Soybean_J2', $449 = 'Soybean_J3', $450 = 'Soybean_J4', $451 = 'Soybean_J5', $452 = 'Soybean_J6', $453 = 'Soybean_J7', $454 = 'Soybean_J8', $455 = 'Soybean_J9', $456 = 'Soybean_K0', $457 = 'Soybean_K1', $458 = 'Soybean_K2', $459 = 'Soybean_K3', $460 = 'Soybean_K4', $461 = 'Soybean_K5', $462 = 'Soybean_K6', $463 = 'Soybean_K7', $464 = 'Soybean_K8', $465 = 'Soybean_K9', $466 = 'Soybean_M0', $467 = 'Soybean_M1', $468 = 'Soybean_M2', $469 = 'Soybean_M3', $470 = 'Soybean_M4', $471 = 'Soybean_M5', $472 = 'Soybean_M6', $473 = 'Soybean_M7', $474 = 'Soybean_M8', $475 = 'Soybean_M9', $476 = 'Soybean_N0', $477 = 'Soybean_N1', $478 = 'Soybean_N2', $479 = 'Soybean_N3', $480 = 'Soybean_N4', $481 = 'Soybean_N5', $482 = 'Soybean_N6', $483 = 'Soybean_N7', $484 = 'Soybean_N8', $485 = 'Soybean_N9', $486 = 'Soybean_Q0', $487 = 'Soybean_Q1', $488 = 'Soybean_Q2', $489 = 'Soybean_Q3', $490 = 'Soybean_Q4', $491 = 'Soybean_Q5', $492 = 'Soybean_Q6', $493 = 'Soybean_Q7', $494 = 'Soybean_Q8', $495 = 'Soybean_Q9', $496 = 'Soybean_U0', $497 = 'Soybean_U1', $498 = 'Soybean_U2', $499 = 'Soybean_U3', $500 = 'Soybean_U4', $501 = 'Soybean_U5', $502 = 'Soybean_U6', $503 = 'Soybean_U7', $504 = 'Soybean_U8', $505 = 'Soybean_U9', $506 = 'Soybean_V0', $507 = 'Soybean_V1', $508 = 'Soybean_V2', $509 = 'Soybean_V3', $510 = 'Soybean_V4', $511 = 'Soybean_V5', $512 = 'Soybean_V6', $513 = 'Soybean_V7', $514 = 'Soybean_V8', $515 = 'Soybean_V9', $516 = 'Soybean_X0', $517 = 'Soybean_X1', $518 = 'Soybean_X2', $519 = 'Soybean_X3', $520 = 'Soybean_X4', $521 = 'Soybean_X5', $522 = 'Soybean_X6', $523 = 'Soybean_X7', $524 = 'Soybean_X8', $525 = 'Soybean_X9', $526 = 'Soybean_Z0', $527 = 'Soybean_Z1', $528 = 'Soybean_Z2', $529 = 'Soybean_Z3', $530 = 'Soybean_Z4', $531 = 'Soybean_Z5', $532 = 'Soybean_Z6', $533 = 'Soybean_Z7', $534 = 'Soybean_Z8', $535 = 'Soybean_Z9', $536 = 'Sugar_F0', $537 = 'Sugar_F1', $538 = 'Sugar_F2', $539 = 'Sugar_F3', $540 = 'Sugar_F4', $541 = 'Sugar_F5', $542 = 'Sugar_F6', $543 = 'Sugar_F7', $544 = 'Sugar_F8', $545 = 'Sugar_F9', $546 = 'Sugar_G0', $547 = 'Sugar_G1', $548 = 'Sugar_G2', $549 = 'Sugar_G3', $550 = 'Sugar_G4', $551 = 'Sugar_G5', $552 = 'Sugar_G6', $553 = 'Sugar_G7', $554 = 'Sugar_G8', $555 = 'Sugar_G9', $556 = 'Sugar_H0', $557 = 'Sugar_H1', $558 = 'Sugar_H2', $559 = 'Sugar_H3', $560 = 'Sugar_H4', $561 = 'Sugar_H5', $562 = 'Sugar_H6', $563 = 'Sugar_H7', $564 = 'Sugar_H8', $565 = 'Sugar_H9', $566 = 'Sugar_J0', $567 = 'Sugar_J1', $568 = 'Sugar_J2', $569 = 'Sugar_J3', $570 = 'Sugar_J4', $571 = 'Sugar_J5', $572 = 'Sugar_J6', $573 = 'Sugar_J7', $574 = 'Sugar_J8', $575 = 'Sugar_J9', $576 = 'Sugar_K0', $577 = 'Sugar_K1', $578 = 'Sugar_K2', $579 = 'Sugar_K3', $580 = 'Sugar_K4', $581 = 'Sugar_K5', $582 = 'Sugar_K6', $583 = 'Sugar_K7', $584 = 'Sugar_K8', $585 = 'Sugar_K9', $586 = 'Sugar_M0', $587 = 'Sugar_M1', $588 = 'Sugar_M2', $589 = 'Sugar_M3', $590 = 'Sugar_M4', $591 = 'Sugar_M5', $592 = 'Sugar_M6', $593 = 'Sugar_M7', $594 = 'Sugar_M8', $595 = 'Sugar_M9', $596 = 'Sugar_N0', $597 = 'Sugar_N1', $598 = 'Sugar_N2', $599 = 'Sugar_N3', $600 = 'Sugar_N4', $601 = 'Sugar_N5', $602 = 'Sugar_N6', $603 = 'Sugar_N7', $604 = 'Sugar_N8', $605 = 'Sugar_N9', $606 = 'Sugar_Q0', $607 = 'Sugar_Q1', $608 = 'Sugar_Q2', $609 = 'Sugar_Q3', $610 = 'Sugar_Q4', $611 = 'Sugar_Q5', $612 = 'Sugar_Q6', $613 = 'Sugar_Q7', $614 = 'Sugar_Q8', $615 = 'Sugar_Q9', $616 = 'Sugar_U0', $617 = 'Sugar_U1', $618 = 'Sugar_U2', $619 = 'Sugar_U3', $620 = 'Sugar_U4', $621 = 'Sugar_U5', $622 = 'Sugar_U6', $623 = 'Sugar_U7', $624 = 'Sugar_U8', $625 = 'Sugar_U9', $626 = 'Sugar_V0', $627 = 'Sugar_V1', $628 = 'Sugar_V2', $629 = 'Sugar_V3', $630 = 'Sugar_V4', $631 = 'Sugar_V5', $632 = 'Sugar_V6', $633 = 'Sugar_V7', $634 = 'Sugar_V8', $635 = 'Sugar_V9', $636 = 'Sugar_X0', $637 = 'Sugar_X1', $638 = 'Sugar_X2', $639 = 'Sugar_X3', $640 = 'Sugar_X4', $641 = 'Sugar_X5', $642 = 'Sugar_X6', $643 = 'Sugar_X7', $644 = 'Sugar_X8', $645 = 'Sugar_X9', $646 = 'Sugar_Z0', $647 = 'Sugar_Z1', $648 = 'Sugar_Z2', $649 = 'Sugar_Z3', $650 = 'Sugar_Z4', $651 = 'Sugar_Z5', $652 = 'Sugar_Z6', $653 = 'Sugar_Z7', $654 = 'Sugar_Z8', $655 = 'Sugar_Z9', $656 = 'UK100', $657 = 'US2000', $658 = 'US30', $659 = 'US500', $660 = 'USDCAD', $661 = 'USDCHF', $662 = 'USDCNH', $663 = 'USDCZK', $664 = 'USDDKK', $665 = 'USDHKD', $666 = 'USDHUF', $667 = 'USDJPY', $668 = 'USDMXN', $669 = 'USDNOK', $670 = 'USDPLN', $671 = 'USDRUB', $672 = 'USDSEK', $673 = 'USDSGD', $674 = 'USDTHB', $675 = 'USDTRY', $676 = 'USDZAR', $677 = 'USTEC', $678 = 'WTI_F0', $679 = 'WTI_F1', $680 = 'WTI_F2', $681 = 'WTI_F3', $682 = 'WTI_F4', $683 = 'WTI_F5', $684 = 'WTI_F6', $685 = 'WTI_F7', $686 = 'WTI_F8', $687 = 'WTI_F9', $688 = 'WTI_G0', $689 = 'WTI_G1', $690 = 'WTI_G2', $691 = 'WTI_G3', $692 = 'WTI_G4', $693 = 'WTI_G5', $694 = 'WTI_G6', $695 = 'WTI_G7', $696 = 'WTI_G8', $697 = 'WTI_G9', $698 = 'WTI_H0', $699 = 'WTI_H1', $700 = 'WTI_H2', $701 = 'WTI_H3', $702 = 'WTI_H4', $703 = 'WTI_H5', $704 = 'WTI_H6', $705 = 'WTI_H7', $706 = 'WTI_H8', $707 = 'WTI_H9', $708 = 'WTI_J0', $709 = 'WTI_J1', $710 = 'WTI_J2', $711 = 'WTI_J3', $712 = 'WTI_J4', $713 = 'WTI_J5', $714 = 'WTI_J6', $715 = 'WTI_J7', $716 = 'WTI_J8', $717 = 'WTI_J9', $718 = 'WTI_K0', $719 = 'WTI_K1', $720 = 'WTI_K2', $721 = 'WTI_K3', $722 = 'WTI_K4', $723 = 'WTI_K5', $724 = 'WTI_K6', $725 = 'WTI_K7', $726 = 'WTI_K8', $727 = 'WTI_K9', $728 = 'WTI_M0', $729 = 'WTI_M1', $730 = 'WTI_M2', $731 = 'WTI_M3', $732 = 'WTI_M4', $733 = 'WTI_M5', $734 = 'WTI_M6', $735 = 'WTI_M7', $736 = 'WTI_M8', $737 = 'WTI_M9', $738 = 'WTI_N0', $739 = 'WTI_N1', $740 = 'WTI_N2', $741 = 'WTI_N3', $742 = 'WTI_N4', $743 = 'WTI_N5', $744 = 'WTI_N6', $745 = 'WTI_N7', $746 = 'WTI_N8', $747 = 'WTI_N9', $748 = 'WTI_Q0', $749 = 'WTI_Q1', $750 = 'WTI_Q2', $751 = 'WTI_Q3', $752 = 'WTI_Q4', $753 = 'WTI_Q5', $754 = 'WTI_Q6', $755 = 'WTI_Q7', $756 = 'WTI_Q8', $757 = 'WTI_Q9', $758 = 'WTI_U0', $759 = 'WTI_U1', $760 = 'WTI_U2', $761 = 'WTI_U3', $762 = 'WTI_U4', $763 = 'WTI_U5', $764 = 'WTI_U6', $765 = 'WTI_U7', $766 = 'WTI_U8', $767 = 'WTI_U9', $768 = 'WTI_V0', $769 = 'WTI_V1', $770 = 'WTI_V2', $771 = 'WTI_V3', $772 = 'WTI_V4', $773 = 'WTI_V5', $774 = 'WTI_V6', $775 = 'WTI_V7', $776 = 'WTI_V8', $777 = 'WTI_V9', $778 = 'WTI_X0', $779 = 'WTI_X1', $780 = 'WTI_X2', $781 = 'WTI_X3', $782 = 'WTI_X4', $783 = 'WTI_X5', $784 = 'WTI_X6', $785 = 'WTI_X7', $786 = 'WTI_X8', $787 = 'WTI_X9', $788 = 'WTI_Z0', $789 = 'WTI_Z1', $790 = 'WTI_Z2', $791 = 'WTI_Z3', $792 = 'WTI_Z4', $793 = 'WTI_Z5', $794 = 'WTI_Z6', $795 = 'WTI_Z7', $796 = 'WTI_Z8', $797 = 'WTI_Z9', $798 = 'Wheat_F0', $799 = 'Wheat_F1', $800 = 'Wheat_F2', $801 = 'Wheat_F3', $802 = 'Wheat_F4', $803 = 'Wheat_F5', $804 = 'Wheat_F6', $805 = 'Wheat_F7', $806 = 'Wheat_F8', $807 = 'Wheat_F9', $808 = 'Wheat_G0', $809 = 'Wheat_G1', $810 = 'Wheat_G2', $811 = 'Wheat_G3', $812 = 'Wheat_G4', $813 = 'Wheat_G5', $814 = 'Wheat_G6', $815 = 'Wheat_G7', $816 = 'Wheat_G8', $817 = 'Wheat_G9', $818 = 'Wheat_H0', $819 = 'Wheat_H1', $820 = 'Wheat_H2', $821 = 'Wheat_H3', $822 = 'Wheat_H4', $823 = 'Wheat_H5', $824 = 'Wheat_H6', $825 = 'Wheat_H7', $826 = 'Wheat_H8', $827 = 'Wheat_H9', $828 = 'Wheat_J0', $829 = 'Wheat_J1', $830 = 'Wheat_J2', $831 = 'Wheat_J3', $832 = 'Wheat_J4', $833 = 'Wheat_J5', $834 = 'Wheat_J6', $835 = 'Wheat_J7', $836 = 'Wheat_J8', $837 = 'Wheat_J9', $838 = 'Wheat_K0', $839 = 'Wheat_K1', $840 = 'Wheat_K2', $841 = 'Wheat_K3', $842 = 'Wheat_K4', $843 = 'Wheat_K5', $844 = 'Wheat_K6', $845 = 'Wheat_K7', $846 = 'Wheat_K8', $847 = 'Wheat_K9', $848 = 'Wheat_M0', $849 = 'Wheat_M1', $850 = 'Wheat_M2', $851 = 'Wheat_M3', $852 = 'Wheat_M4', $853 = 'Wheat_M5', $854 = 'Wheat_M6', $855 = 'Wheat_M7', $856 = 'Wheat_M8', $857 = 'Wheat_M9', $858 = 'Wheat_N0', $859 = 'Wheat_N1', $860 = 'Wheat_N2', $861 = 'Wheat_N3', $862 = 'Wheat_N4', $863 = 'Wheat_N5', $864 = 'Wheat_N6', $865 = 'Wheat_N7', $866 = 'Wheat_N8', $867 = 'Wheat_N9', $868 = 'Wheat_Q0', $869 = 'Wheat_Q1', $870 = 'Wheat_Q2', $871 = 'Wheat_Q3', $872 = 'Wheat_Q4', $873 = 'Wheat_Q5', $874 = 'Wheat_Q6', $875 = 'Wheat_Q7', $876 = 'Wheat_Q8', $877 = 'Wheat_Q9', $878 = 'Wheat_U0', $879 = 'Wheat_U1', $880 = 'Wheat_U2', $881 = 'Wheat_U3', $882 = 'Wheat_U4', $883 = 'Wheat_U5', $884 = 'Wheat_U6', $885 = 'Wheat_U7', $886 = 'Wheat_U8', $887 = 'Wheat_U9', $888 = 'Wheat_V0', $889 = 'Wheat_V1', $890 = 'Wheat_V2', $891 = 'Wheat_V3', $892 = 'Wheat_V4', $893 = 'Wheat_V5', $894 = 'Wheat_V6', $895 = 'Wheat_V7', $896 = 'Wheat_V8', $897 = 'Wheat_V9', $898 = 'Wheat_X0', $899 = 'Wheat_X1', $900 = 'Wheat_X2', $901 = 'Wheat_X3', $902 = 'Wheat_X4', $903 = 'Wheat_X5', $904 = 'Wheat_X6', $905 = 'Wheat_X7', $906 = 'Wheat_X8', $907 = 'Wheat_X9', $908 = 'Wheat_Z0', $909 = 'Wheat_Z1', $910 = 'Wheat_Z2', $911 = 'Wheat_Z3', $912 = 'Wheat_Z4', $913 = 'Wheat_Z5', $914 = 'Wheat_Z6', $915 = 'Wheat_Z7', $916 = 'Wheat_Z8', $917 = 'Wheat_Z9', $918 = 'XAGEUR', $919 = 'XAGUSD', $920 = 'XAUEUR', $921 = 'XAUUSD', $922 = 'XBRUSD', $923 = 'XNGUSD', $924 = 'XPDUSD', $925 = 'XPTUSD', $926 = 'XTIUSD', $927 = 'AUDCAD', $928 = 'AUDCHF', $929 = 'AUDJPY', $930 = 'AUDNZD', $931 = 'AUDSGD', $932 = 'AUDUSD', $933 = 'AUS200', $934 = 'BRENT_F0', $935 = 'BRENT_F1', $936 = 'BRENT_F2', $937 = 'BRENT_F3', $938 = 'BRENT_F4', $939 = 'BRENT_F5', $940 = 'BRENT_F6', $941 = 'BRENT_F7', $942 = 'BRENT_F8', $943 = 'BRENT_F9', $944 = 'BRENT_G0', $945 = 'BRENT_G1', $946 = 'BRENT_G2', $947 = 'BRENT_G3', $948 = 'BRENT_G4', $949 = 'BRENT_G5', $950 = 'BRENT_G6', $951 = 'BRENT_G7', $952 = 'BRENT_G8', $953 = 'BRENT_G9', $954 = 'BRENT_H0', $955 = 'BRENT_H1', $956 = 'BRENT_H2', $957 = 'BRENT_H3', $958 = 'BRENT_H4', $959 = 'BRENT_H5', $960 = 'BRENT_H6', $961 = 'BRENT_H7', $962 = 'BRENT_H8', $963 = 'BRENT_H9', $964 = 'BRENT_J0', $965 = 'BRENT_J1', $966 = 'BRENT_J2', $967 = 'BRENT_J3', $968 = 'BRENT_J4', $969 = 'BRENT_J5', $970 = 'BRENT_J6', $971 = 'BRENT_J7', $972 = 'BRENT_J8', $973 = 'BRENT_J9', $974 = 'BRENT_K0', $975 = 'BRENT_K1', $976 = 'BRENT_K2', $977 = 'BRENT_K3', $978 = 'BRENT_K4', $979 = 'BRENT_K5', $980 = 'BRENT_K6', $981 = 'BRENT_K7', $982 = 'BRENT_K8', $983 = 'BRENT_K9', $984 = 'BRENT_M0', $985 = 'BRENT_M1', $986 = 'BRENT_M2', $987 = 'BRENT_M3', $988 = 'BRENT_M4', $989 = 'BRENT_M5', $990 = 'BRENT_M6', $991 = 'BRENT_M7', $992 = 'BRENT_M8', $993 = 'BRENT_M9', $994 = 'BRENT_N0', $995 = 'BRENT_N1', $996 = 'BRENT_N2', $997 = 'BRENT_N3', $998 = 'BRENT_N4', $999 = 'BRENT_N5', $1000 = 'BRENT_N6', $1001 = 'BRENT_N7', $1002 = 'BRENT_N8', $1003 = 'BRENT_N9', $1004 = 'BRENT_Q0', $1005 = 'BRENT_Q1', $1006 = 'BRENT_Q2', $1007 = 'BRENT_Q3', $1008 = 'BRENT_Q4', $1009 = 'BRENT_Q5', $1010 = 'BRENT_Q6', $1011 = 'BRENT_Q7', $1012 = 'BRENT_Q8', $1013 = 'BRENT_Q9', $1014 = 'BRENT_U0', $1015 = 'BRENT_U1', $1016 = 'BRENT_U2', $1017 = 'BRENT_U3', $1018 = 'BRENT_U4', $1019 = 'BRENT_U5', $1020 = 'BRENT_U6', $1021 = 'BRENT_U7', $1022 = 'BRENT_U8', $1023 = 'BRENT_U9', $1024 = 'BRENT_V0', $1025 = 'BRENT_V1', $1026 = 'BRENT_V2', $1027 = 'BRENT_V3', $1028 = 'BRENT_V4', $1029 = 'BRENT_V5', $1030 = 'BRENT_V6', $1031 = 'BRENT_V7', $1032 = 'BRENT_V8', $1033 = 'BRENT_V9', $1034 = 'BRENT_X0', $1035 = 'BRENT_X1', $1036 = 'BRENT_X2', $1037 = 'BRENT_X3', $1038 = 'BRENT_X4', $1039 = 'BRENT_X5', $1040 = 'BRENT_X6', $1041 = 'BRENT_X7', $1042 = 'BRENT_X8', $1043 = 'BRENT_X9', $1044 = 'BRENT_Z0', $1045 = 'BRENT_Z1', $1046 = 'BRENT_Z2', $1047 = 'BRENT_Z3', $1048 = 'BRENT_Z4', $1049 = 'BRENT_Z5', $1050 = 'BRENT_Z6', $1051 = 'BRENT_Z7', $1052 = 'BRENT_Z8', $1053 = 'BRENT_Z9', $1054 = 'BTCUSD', $1055 = 'CADCHF', $1056 = 'CADJPY', $1057 = 'CHFJPY', $1058 = 'CHFSGD', $1059 = 'CHINA50', $1060 = 'Coffee_F0', $1061 = 'Coffee_F1', $1062 = 'Coffee_F2', $1063 = 'Coffee_F3', $1064 = 'Coffee_F4', $1065 = 'Coffee_F5', $1066 = 'Coffee_F6', $1067 = 'Coffee_F7', $1068 = 'Coffee_F8', $1069 = 'Coffee_F9', $1070 = 'Coffee_G0', $1071 = 'Coffee_G1', $1072 = 'Coffee_G2', $1073 = 'Coffee_G3', $1074 = 'Coffee_G4', $1075 = 'Coffee_G5', $1076 = 'Coffee_G6', $1077 = 'Coffee_G7', $1078 = 'Coffee_G8', $1079 = 'Coffee_G9', $1080 = 'Coffee_H0', $1081 = 'Coffee_H1', $1082 = 'Coffee_H2', $1083 = 'Coffee_H3', $1084 = 'Coffee_H4', $1085 = 'Coffee_H5', $1086 = 'Coffee_H6', $1087 = 'Coffee_H7', $1088 = 'Coffee_H8', $1089 = 'Coffee_H9', $1090 = 'Coffee_J0', $1091 = 'Coffee_J1', $1092 = 'Coffee_J2', $1093 = 'Coffee_J3', $1094 = 'Coffee_J4', $1095 = 'Coffee_J5', $1096 = 'Coffee_J6', $1097 = 'Coffee_J7', $1098 = 'Coffee_J8', $1099 = 'Coffee_J9', $1100 = 'Coffee_K0', $1101 = 'Coffee_K1', $1102 = 'Coffee_K2', $1103 = 'Coffee_K3', $1104 = 'Coffee_K4', $1105 = 'Coffee_K5', $1106 = 'Coffee_K6', $1107 = 'Coffee_K7', $1108 = 'Coffee_K8', $1109 = 'Coffee_K9', $1110 = 'Coffee_M0', $1111 = 'Coffee_M1', $1112 = 'Coffee_M2', $1113 = 'Coffee_M3', $1114 = 'Coffee_M4', $1115 = 'Coffee_M5', $1116 = 'Coffee_M6', $1117 = 'Coffee_M7', $1118 = 'Coffee_M8', $1119 = 'Coffee_M9', $1120 = 'Coffee_N0', $1121 = 'Coffee_N1', $1122 = 'Coffee_N2', $1123 = 'Coffee_N3', $1124 = 'Coffee_N4', $1125 = 'Coffee_N5', $1126 = 'Coffee_N6', $1127 = 'Coffee_N7', $1128 = 'Coffee_N8', $1129 = 'Coffee_N9', $1130 = 'Coffee_Q0', $1131 = 'Coffee_Q1', $1132 = 'Coffee_Q2', $1133 = 'Coffee_Q3', $1134 = 'Coffee_Q4', $1135 = 'Coffee_Q5', $1136 = 'Coffee_Q6', $1137 = 'Coffee_Q7', $1138 = 'Coffee_Q8', $1139 = 'Coffee_Q9', $1140 = 'Coffee_U0', $1141 = 'Coffee_U1', $1142 = 'Coffee_U2', $1143 = 'Coffee_U3', $1144 = 'Coffee_U4', $1145 = 'Coffee_U5', $1146 = 'Coffee_U6', $1147 = 'Coffee_U7', $1148 = 'Coffee_U8', $1149 = 'Coffee_U9', $1150 = 'Coffee_V0', $1151 = 'Coffee_V1', $1152 = 'Coffee_V2', $1153 = 'Coffee_V3', $1154 = 'Coffee_V4', $1155 = 'Coffee_V5', $1156 = 'Coffee_V6', $1157 = 'Coffee_V7', $1158 = 'Coffee_V8', $1159 = 'Coffee_V9', $1160 = 'Coffee_X0', $1161 = 'Coffee_X1', $1162 = 'Coffee_X2', $1163 = 'Coffee_X3', $1164 = 'Coffee_X4', $1165 = 'Coffee_X5', $1166 = 'Coffee_X6', $1167 = 'Coffee_X7', $1168 = 'Coffee_X8', $1169 = 'Coffee_X9', $1170 = 'Coffee_Z0', $1171 = 'Coffee_Z1', $1172 = 'Coffee_Z2', $1173 = 'Coffee_Z3', $1174 = 'Coffee_Z4', $1175 = 'Coffee_Z5', $1176 = 'Coffee_Z6', $1177 = 'Coffee_Z7', $1178 = 'Coffee_Z8', $1179 = 'Coffee_Z9', $1180 = 'Corn_F0', $1181 = 'Corn_F1', $1182 = 'Corn_F2', $1183 = 'Corn_F3', $1184 = 'Corn_F4', $1185 = 'Corn_F5', $1186 = 'Corn_F6', $1187 = 'Corn_F7', $1188 = 'Corn_F8', $1189 = 'Corn_F9', $1190 = 'Corn_G0', $1191 = 'Corn_G1', $1192 = 'Corn_G2', $1193 = 'Corn_G3', $1194 = 'Corn_G4', $1195 = 'Corn_G5', $1196 = 'Corn_G6', $1197 = 'Corn_G7', $1198 = 'Corn_G8', $1199 = 'Corn_G9', $1200 = 'Corn_H0', $1201 = 'Corn_H1', $1202 = 'Corn_H2', $1203 = 'Corn_H3', $1204 = 'Corn_H4', $1205 = 'Corn_H5', $1206 = 'Corn_H6', $1207 = 'Corn_H7', $1208 = 'Corn_H8', $1209 = 'Corn_H9', $1210 = 'Corn_J0', $1211 = 'Corn_J1', $1212 = 'Corn_J2', $1213 = 'Corn_J3', $1214 = 'Corn_J4', $1215 = 'Corn_J5', $1216 = 'Corn_J6', $1217 = 'Corn_J7', $1218 = 'Corn_J8', $1219 = 'Corn_J9', $1220 = 'Corn_K0', $1221 = 'Corn_K1', $1222 = 'Corn_K2', $1223 = 'Corn_K3', $1224 = 'Corn_K4', $1225 = 'Corn_K5', $1226 = 'Corn_K6', $1227 = 'Corn_K7', $1228 = 'Corn_K8', $1229 = 'Corn_K9', $1230 = 'Corn_M0', $1231 = 'Corn_M1', $1232 = 'Corn_M2', $1233 = 'Corn_M3', $1234 = 'Corn_M4', $1235 = 'Corn_M5', $1236 = 'Corn_M6', $1237 = 'Corn_M7', $1238 = 'Corn_M8', $1239 = 'Corn_M9', $1240 = 'Corn_N0', $1241 = 'Corn_N1', $1242 = 'Corn_N2', $1243 = 'Corn_N3', $1244 = 'Corn_N4', $1245 = 'Corn_N5', $1246 = 'Corn_N6', $1247 = 'Corn_N7', $1248 = 'Corn_N8', $1249 = 'Corn_N9', $1250 = 'Corn_Q0', $1251 = 'Corn_Q1', $1252 = 'Corn_Q2', $1253 = 'Corn_Q3', $1254 = 'Corn_Q4', $1255 = 'Corn_Q5', $1256 = 'Corn_Q6', $1257 = 'Corn_Q7', $1258 = 'Corn_Q8', $1259 = 'Corn_Q9', $1260 = 'Corn_U0', $1261 = 'Corn_U1', $1262 = 'Corn_U2', $1263 = 'Corn_U3', $1264 = 'Corn_U4', $1265 = 'Corn_U5', $1266 = 'Corn_U6', $1267 = 'Corn_U7', $1268 = 'Corn_U8', $1269 = 'Corn_U9', $1270 = 'Corn_V0', $1271 = 'Corn_V1', $1272 = 'Corn_V2', $1273 = 'Corn_V3', $1274 = 'Corn_V4', $1275 = 'Corn_V5', $1276 = 'Corn_V6', $1277 = 'Corn_V7', $1278 = 'Corn_V8', $1279 = 'Corn_V9', $1280 = 'Corn_X0', $1281 = 'Corn_X1', $1282 = 'Corn_X2', $1283 = 'Corn_X3', $1284 = 'Corn_X4', $1285 = 'Corn_X5', $1286 = 'Corn_X6', $1287 = 'Corn_X7', $1288 = 'Corn_X8', $1289 = 'Corn_X9', $1290 = 'Corn_Z0', $1291 = 'Corn_Z1', $1292 = 'Corn_Z2', $1293 = 'Corn_Z3', $1294 = 'Corn_Z4', $1295 = 'Corn_Z5', $1296 = 'Corn_Z6', $1297 = 'Corn_Z7', $1298 = 'Corn_Z8', $1299 = 'Corn_Z9', $1300 = 'DE30', $1301 = 'ES35', $1302 = 'EURAUD', $1303 = 'EURCAD', $1304 = 'EURCHF', $1305 = 'EURDKK', $1306 = 'EURGBP', $1307 = 'EURHKD', $1308 = 'EURJPY', $1309 = 'EURNOK', $1310 = 'EURNZD', $1311 = 'EURPLN', $1312 = 'EURSEK', $1313 = 'EURSGD', $1314 = 'EURTRY', $1315 = 'EURUSD', $1316 = 'EURZAR', $1317 = 'F40', $1318 = 'GBPAUD', $1319 = 'GBPCAD', $1320 = 'GBPCHF', $1321 = 'GBPDKK', $1322 = 'GBPJPY', $1323 = 'GBPNOK', $1324 = 'GBPNZD', $1325 = 'GBPSEK', $1326 = 'GBPSGD', $1327 = 'GBPUSD', $1328 = 'HK50', $1329 = 'IT40', $1330 = 'JP225', $1331 = 'NOKJPY', $1332 = 'NOKSEK', $1333 = 'NZDCAD', $1334 = 'NZDCHF', $1335 = 'NZDJPY', $1336 = 'NZDUSD', $1337 = 'SEKJPY', $1338 = 'SGDJPY', $1339 = 'STOXX50', $1340 = 'Soybean_F0', $1341 = 'Soybean_F1', $1342 = 'Soybean_F2', $1343 = 'Soybean_F3', $1344 = 'Soybean_F4', $1345 = 'Soybean_F5', $1346 = 'Soybean_F6', $1347 = 'Soybean_F7', $1348 = 'Soybean_F8', $1349 = 'Soybean_F9', $1350 = 'Soybean_G0', $1351 = 'Soybean_G1', $1352 = 'Soybean_G2', $1353 = 'Soybean_G3', $1354 = 'Soybean_G4', $1355 = 'Soybean_G5', $1356 = 'Soybean_G6', $1357 = 'Soybean_G7', $1358 = 'Soybean_G8', $1359 = 'Soybean_G9', $1360 = 'Soybean_H0', $1361 = 'Soybean_H1', $1362 = 'Soybean_H2', $1363 = 'Soybean_H3', $1364 = 'Soybean_H4', $1365 = 'Soybean_H5', $1366 = 'Soybean_H6', $1367 = 'Soybean_H7', $1368 = 'Soybean_H8', $1369 = 'Soybean_H9', $1370 = 'Soybean_J0', $1371 = 'Soybean_J1', $1372 = 'Soybean_J2', $1373 = 'Soybean_J3', $1374 = 'Soybean_J4', $1375 = 'Soybean_J5', $1376 = 'Soybean_J6', $1377 = 'Soybean_J7', $1378 = 'Soybean_J8', $1379 = 'Soybean_J9', $1380 = 'Soybean_K0', $1381 = 'Soybean_K1', $1382 = 'Soybean_K2', $1383 = 'Soybean_K3', $1384 = 'Soybean_K4', $1385 = 'Soybean_K5', $1386 = 'Soybean_K6', $1387 = 'Soybean_K7', $1388 = 'Soybean_K8', $1389 = 'Soybean_K9', $1390 = 'Soybean_M0', $1391 = 'Soybean_M1', $1392 = 'Soybean_M2', $1393 = 'Soybean_M3', $1394 = 'Soybean_M4', $1395 = 'Soybean_M5', $1396 = 'Soybean_M6', $1397 = 'Soybean_M7', $1398 = 'Soybean_M8', $1399 = 'Soybean_M9', $1400 = 'Soybean_N0', $1401 = 'Soybean_N1', $1402 = 'Soybean_N2', $1403 = 'Soybean_N3', $1404 = 'Soybean_N4', $1405 = 'Soybean_N5', $1406 = 'Soybean_N6', $1407 = 'Soybean_N7', $1408 = 'Soybean_N8', $1409 = 'Soybean_N9', $1410 = 'Soybean_Q0', $1411 = 'Soybean_Q1', $1412 = 'Soybean_Q2', $1413 = 'Soybean_Q3', $1414 = 'Soybean_Q4', $1415 = 'Soybean_Q5', $1416 = 'Soybean_Q6', $1417 = 'Soybean_Q7', $1418 = 'Soybean_Q8', $1419 = 'Soybean_Q9', $1420 = 'Soybean_U0', $1421 = 'Soybean_U1', $1422 = 'Soybean_U2', $1423 = 'Soybean_U3', $1424 = 'Soybean_U4', $1425 = 'Soybean_U5', $1426 = 'Soybean_U6', $1427 = 'Soybean_U7', $1428 = 'Soybean_U8', $1429 = 'Soybean_U9', $1430 = 'Soybean_V0', $1431 = 'Soybean_V1', $1432 = 'Soybean_V2', $1433 = 'Soybean_V3', $1434 = 'Soybean_V4', $1435 = 'Soybean_V5', $1436 = 'Soybean_V6', $1437 = 'Soybean_V7', $1438 = 'Soybean_V8', $1439 = 'Soybean_V9', $1440 = 'Soybean_X0', $1441 = 'Soybean_X1', $1442 = 'Soybean_X2', $1443 = 'Soybean_X3', $1444 = 'Soybean_X4', $1445 = 'Soybean_X5', $1446 = 'Soybean_X6', $1447 = 'Soybean_X7', $1448 = 'Soybean_X8', $1449 = 'Soybean_X9', $1450 = 'Soybean_Z0', $1451 = 'Soybean_Z1', $1452 = 'Soybean_Z2', $1453 = 'Soybean_Z3', $1454 = 'Soybean_Z4', $1455 = 'Soybean_Z5', $1456 = 'Soybean_Z6', $1457 = 'Soybean_Z7', $1458 = 'Soybean_Z8', $1459 = 'Soybean_Z9', $1460 = 'Sugar_F0', $1461 = 'Sugar_F1', $1462 = 'Sugar_F2', $1463 = 'Sugar_F3', $1464 = 'Sugar_F4', $1465 = 'Sugar_F5', $1466 = 'Sugar_F6', $1467 = 'Sugar_F7', $1468 = 'Sugar_F8', $1469 = 'Sugar_F9', $1470 = 'Sugar_G0', $1471 = 'Sugar_G1', $1472 = 'Sugar_G2', $1473 = 'Sugar_G3', $1474 = 'Sugar_G4', $1475 = 'Sugar_G5', $1476 = 'Sugar_G6', $1477 = 'Sugar_G7', $1478 = 'Sugar_G8', $1479 = 'Sugar_G9', $1480 = 'Sugar_H0', $1481 = 'Sugar_H1', $1482 = 'Sugar_H2', $1483 = 'Sugar_H3', $1484 = 'Sugar_H4', $1485 = 'Sugar_H5', $1486 = 'Sugar_H6', $1487 = 'Sugar_H7', $1488 = 'Sugar_H8', $1489 = 'Sugar_H9', $1490 = 'Sugar_J0', $1491 = 'Sugar_J1', $1492 = 'Sugar_J2', $1493 = 'Sugar_J3', $1494 = 'Sugar_J4', $1495 = 'Sugar_J5', $1496 = 'Sugar_J6', $1497 = 'Sugar_J7', $1498 = 'Sugar_J8', $1499 = 'Sugar_J9', $1500 = 'Sugar_K0', $1501 = 'Sugar_K1', $1502 = 'Sugar_K2', $1503 = 'Sugar_K3', $1504 = 'Sugar_K4', $1505 = 'Sugar_K5', $1506 = 'Sugar_K6', $1507 = 'Sugar_K7', $1508 = 'Sugar_K8', $1509 = 'Sugar_K9', $1510 = 'Sugar_M0', $1511 = 'Sugar_M1', $1512 = 'Sugar_M2', $1513 = 'Sugar_M3', $1514 = 'Sugar_M4', $1515 = 'Sugar_M5', $1516 = 'Sugar_M6', $1517 = 'Sugar_M7', $1518 = 'Sugar_M8', $1519 = 'Sugar_M9', $1520 = 'Sugar_N0', $1521 = 'Sugar_N1', $1522 = 'Sugar_N2', $1523 = 'Sugar_N3', $1524 = 'Sugar_N4', $1525 = 'Sugar_N5', $1526 = 'Sugar_N6', $1527 = 'Sugar_N7', $1528 = 'Sugar_N8', $1529 = 'Sugar_N9', $1530 = 'Sugar_Q0', $1531 = 'Sugar_Q1', $1532 = 'Sugar_Q2', $1533 = 'Sugar_Q3', $1534 = 'Sugar_Q4', $1535 = 'Sugar_Q5', $1536 = 'Sugar_Q6', $1537 = 'Sugar_Q7', $1538 = 'Sugar_Q8', $1539 = 'Sugar_Q9', $1540 = 'Sugar_U0', $1541 = 'Sugar_U1', $1542 = 'Sugar_U2', $1543 = 'Sugar_U3', $1544 = 'Sugar_U4', $1545 = 'Sugar_U5', $1546 = 'Sugar_U6', $1547 = 'Sugar_U7', $1548 = 'Sugar_U8', $1549 = 'Sugar_U9', $1550 = 'Sugar_V0', $1551 = 'Sugar_V1', $1552 = 'Sugar_V2', $1553 = 'Sugar_V3', $1554 = 'Sugar_V4', $1555 = 'Sugar_V5', $1556 = 'Sugar_V6', $1557 = 'Sugar_V7', $1558 = 'Sugar_V8', $1559 = 'Sugar_V9', $1560 = 'Sugar_X0', $1561 = 'Sugar_X1', $1562 = 'Sugar_X2', $1563 = 'Sugar_X3', $1564 = 'Sugar_X4', $1565 = 'Sugar_X5', $1566 = 'Sugar_X6', $1567 = 'Sugar_X7', $1568 = 'Sugar_X8', $1569 = 'Sugar_X9', $1570 = 'Sugar_Z0', $1571 = 'Sugar_Z1', $1572 = 'Sugar_Z2', $1573 = 'Sugar_Z3', $1574 = 'Sugar_Z4', $1575 = 'Sugar_Z5', $1576 = 'Sugar_Z6', $1577 = 'Sugar_Z7', $1578 = 'Sugar_Z8', $1579 = 'Sugar_Z9', $1580 = 'UK100', $1581 = 'US2000', $1582 = 'US30', $1583 = 'US500', $1584 = 'USDCAD', $1585 = 'USDCHF', $1586 = 'USDCNH', $1587 = 'USDCZK', $1588 = 'USDDKK', $1589 = 'USDHKD', $1590 = 'USDHUF', $1591 = 'USDJPY', $1592 = 'USDMXN', $1593 = 'USDNOK', $1594 = 'USDPLN', $1595 = 'USDRUB', $1596 = 'USDSEK', $1597 = 'USDSGD', $1598 = 'USDTHB', $1599 = 'USDTRY', $1600 = 'USDZAR', $1601 = 'USTEC', $1602 = 'WTI_F0', $1603 = 'WTI_F1', $1604 = 'WTI_F2', $1605 = 'WTI_F3', $1606 = 'WTI_F4', $1607 = 'WTI_F5', $1608 = 'WTI_F6', $1609 = 'WTI_F7', $1610 = 'WTI_F8', $1611 = 'WTI_F9', $1612 = 'WTI_G0', $1613 = 'WTI_G1', $1614 = 'WTI_G2', $1615 = 'WTI_G3', $1616 = 'WTI_G4', $1617 = 'WTI_G5', $1618 = 'WTI_G6', $1619 = 'WTI_G7', $1620 = 'WTI_G8', $1621 = 'WTI_G9', $1622 = 'WTI_H0', $1623 = 'WTI_H1', $1624 = 'WTI_H2', $1625 = 'WTI_H3', $1626 = 'WTI_H4', $1627 = 'WTI_H5', $1628 = 'WTI_H6', $1629 = 'WTI_H7', $1630 = 'WTI_H8', $1631 = 'WTI_H9', $1632 = 'WTI_J0', $1633 = 'WTI_J1', $1634 = 'WTI_J2', $1635 = 'WTI_J3', $1636 = 'WTI_J4', $1637 = 'WTI_J5', $1638 = 'WTI_J6', $1639 = 'WTI_J7', $1640 = 'WTI_J8', $1641 = 'WTI_J9', $1642 = 'WTI_K0', $1643 = 'WTI_K1', $1644 = 'WTI_K2', $1645 = 'WTI_K3', $1646 = 'WTI_K4', $1647 = 'WTI_K5', $1648 = 'WTI_K6', $1649 = 'WTI_K7', $1650 = 'WTI_K8', $1651 = 'WTI_K9', $1652 = 'WTI_M0', $1653 = 'WTI_M1', $1654 = 'WTI_M2', $1655 = 'WTI_M3', $1656 = 'WTI_M4', $1657 = 'WTI_M5', $1658 = 'WTI_M6', $1659 = 'WTI_M7', $1660 = 'WTI_M8', $1661 = 'WTI_M9', $1662 = 'WTI_N0', $1663 = 'WTI_N1', $1664 = 'WTI_N2', $1665 = 'WTI_N3', $1666 = 'WTI_N4', $1667 = 'WTI_N5', $1668 = 'WTI_N6', $1669 = 'WTI_N7', $1670 = 'WTI_N8', $1671 = 'WTI_N9', $1672 = 'WTI_Q0', $1673 = 'WTI_Q1', $1674 = 'WTI_Q2', $1675 = 'WTI_Q3', $1676 = 'WTI_Q4', $1677 = 'WTI_Q5', $1678 = 'WTI_Q6', $1679 = 'WTI_Q7', $1680 = 'WTI_Q8', $1681 = 'WTI_Q9', $1682 = 'WTI_U0', $1683 = 'WTI_U1', $1684 = 'WTI_U2', $1685 = 'WTI_U3', $1686 = 'WTI_U4', $1687 = 'WTI_U5', $1688 = 'WTI_U6', $1689 = 'WTI_U7', $1690 = 'WTI_U8', $1691 = 'WTI_U9', $1692 = 'WTI_V0', $1693 = 'WTI_V1', $1694 = 'WTI_V2', $1695 = 'WTI_V3', $1696 = 'WTI_V4', $1697 = 'WTI_V5', $1698 = 'WTI_V6', $1699 = 'WTI_V7', $1700 = 'WTI_V8', $1701 = 'WTI_V9', $1702 = 'WTI_X0', $1703 = 'WTI_X1', $1704 = 'WTI_X2', $1705 = 'WTI_X3', $1706 = 'WTI_X4', $1707 = 'WTI_X5', $1708 = 'WTI_X6', $1709 = 'WTI_X7', $1710 = 'WTI_X8', $1711 = 'WTI_X9', $1712 = 'WTI_Z0', $1713 = 'WTI_Z1', $1714 = 'WTI_Z2', $1715 = 'WTI_Z3', $1716 = 'WTI_Z4', $1717 = 'WTI_Z5', $1718 = 'WTI_Z6', $1719 = 'WTI_Z7', $1720 = 'WTI_Z8', $1721 = 'WTI_Z9', $1722 = 'Wheat_F0', $1723 = 'Wheat_F1', $1724 = 'Wheat_F2', $1725 = 'Wheat_F3', $1726 = 'Wheat_F4', $1727 = 'Wheat_F5', $1728 = 'Wheat_F6', $1729 = 'Wheat_F7', $1730 = 'Wheat_F8', $1731 = 'Wheat_F9', $1732 = 'Wheat_G0', $1733 = 'Wheat_G1', $1734 = 'Wheat_G2', $1735 = 'Wheat_G3', $1736 = 'Wheat_G4', $1737 = 'Wheat_G5', $1738 = 'Wheat_G6', $1739 = 'Wheat_G7', $1740 = 'Wheat_G8', $1741 = 'Wheat_G9', $1742 = 'Wheat_H0', $1743 = 'Wheat_H1', $1744 = 'Wheat_H2', $1745 = 'Wheat_H3', $1746 = 'Wheat_H4', $1747 = 'Wheat_H5', $1748 = 'Wheat_H6', $1749 = 'Wheat_H7', $1750 = 'Wheat_H8', $1751 = 'Wheat_H9', $1752 = 'Wheat_J0', $1753 = 'Wheat_J1', $1754 = 'Wheat_J2', $1755 = 'Wheat_J3', $1756 = 'Wheat_J4', $1757 = 'Wheat_J5', $1758 = 'Wheat_J6', $1759 = 'Wheat_J7', $1760 = 'Wheat_J8', $1761 = 'Wheat_J9', $1762 = 'Wheat_K0', $1763 = 'Wheat_K1', $1764 = 'Wheat_K2', $1765 = 'Wheat_K3', $1766 = 'Wheat_K4', $1767 = 'Wheat_K5', $1768 = 'Wheat_K6', $1769 = 'Wheat_K7', $1770 = 'Wheat_K8', $1771 = 'Wheat_K9', $1772 = 'Wheat_M0', $1773 = 'Wheat_M1', $1774 = 'Wheat_M2', $1775 = 'Wheat_M3', $1776 = 'Wheat_M4', $1777 = 'Wheat_M5', $1778 = 'Wheat_M6', $1779 = 'Wheat_M7', $1780 = 'Wheat_M8', $1781 = 'Wheat_M9', $1782 = 'Wheat_N0', $1783 = 'Wheat_N1', $1784 = 'Wheat_N2', $1785 = 'Wheat_N3', $1786 = 'Wheat_N4', $1787 = 'Wheat_N5', $1788 = 'Wheat_N6', $1789 = 'Wheat_N7', $1790 = 'Wheat_N8', $1791 = 'Wheat_N9', $1792 = 'Wheat_Q0', $1793 = 'Wheat_Q1', $1794 = 'Wheat_Q2', $1795 = 'Wheat_Q3', $1796 = 'Wheat_Q4', $1797 = 'Wheat_Q5', $1798 = 'Wheat_Q6', $1799 = 'Wheat_Q7', $1800 = 'Wheat_Q8', $1801 = 'Wheat_Q9', $1802 = 'Wheat_U0', $1803 = 'Wheat_U1', $1804 = 'Wheat_U2', $1805 = 'Wheat_U3', $1806 = 'Wheat_U4', $1807 = 'Wheat_U5', $1808 = 'Wheat_U6', $1809 = 'Wheat_U7', $1810 = 'Wheat_U8', $1811 = 'Wheat_U9', $1812 = 'Wheat_V0', $1813 = 'Wheat_V1', $1814 = 'Wheat_V2', $1815 = 'Wheat_V3', $1816 = 'Wheat_V4', $1817 = 'Wheat_V5', $1818 = 'Wheat_V6', $1819 = 'Wheat_V7', $1820 = 'Wheat_V8', $1821 = 'Wheat_V9', $1822 = 'Wheat_X0', $1823 = 'Wheat_X1', $1824 = 'Wheat_X2', $1825 = 'Wheat_X3', $1826 = 'Wheat_X4', $1827 = 'Wheat_X5', $1828 = 'Wheat_X6', $1829 = 'Wheat_X7', $1830 = 'Wheat_X8', $1831 = 'Wheat_X9', $1832 = 'Wheat_Z0', $1833 = 'Wheat_Z1', $1834 = 'Wheat_Z2', $1835 = 'Wheat_Z3', $1836 = 'Wheat_Z4', $1837 = 'Wheat_Z5', $1838 = 'Wheat_Z6', $1839 = 'Wheat_Z7', $1840 = 'Wheat_Z8', $1841 = 'Wheat_Z9', $1842 = 'XAGEUR', $1843 = 'XAGUSD', $1844 = 'XAUEUR', $1845 = 'XAUUSD', $1846 = 'XBRUSD', $1847 = 'XNGUSD', $1848 = 'XPDUSD', $1849 = 'XPTUSD', $1850 = 'XTIUSD', $1851 = '5'
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2025-12-22 13:14:01 Duration: 29ms Database: postgres parameters: $1 = '974', $2 = 'ICMARKETS-AU-MT5', $3 = 'AUDCAD', $4 = 'AUDCHF', $5 = 'AUDJPY', $6 = 'AUDNZD', $7 = 'AUDSGD', $8 = 'AUDUSD', $9 = 'AUS200', $10 = 'BRENT_F0', $11 = 'BRENT_F1', $12 = 'BRENT_F2', $13 = 'BRENT_F3', $14 = 'BRENT_F4', $15 = 'BRENT_F5', $16 = 'BRENT_F6', $17 = 'BRENT_F7', $18 = 'BRENT_F8', $19 = 'BRENT_F9', $20 = 'BRENT_G0', $21 = 'BRENT_G1', $22 = 'BRENT_G2', $23 = 'BRENT_G3', $24 = 'BRENT_G4', $25 = 'BRENT_G5', $26 = 'BRENT_G6', $27 = 'BRENT_G7', $28 = 'BRENT_G8', $29 = 'BRENT_G9', $30 = 'BRENT_H0', $31 = 'BRENT_H1', $32 = 'BRENT_H2', $33 = 'BRENT_H3', $34 = 'BRENT_H4', $35 = 'BRENT_H5', $36 = 'BRENT_H6', $37 = 'BRENT_H7', $38 = 'BRENT_H8', $39 = 'BRENT_H9', $40 = 'BRENT_J0', $41 = 'BRENT_J1', $42 = 'BRENT_J2', $43 = 'BRENT_J3', $44 = 'BRENT_J4', $45 = 'BRENT_J5', $46 = 'BRENT_J6', $47 = 'BRENT_J7', $48 = 'BRENT_J8', $49 = 'BRENT_J9', $50 = 'BRENT_K0', $51 = 'BRENT_K1', $52 = 'BRENT_K2', $53 = 'BRENT_K3', $54 = 'BRENT_K4', $55 = 'BRENT_K5', $56 = 'BRENT_K6', $57 = 'BRENT_K7', $58 = 'BRENT_K8', $59 = 'BRENT_K9', $60 = 'BRENT_M0', $61 = 'BRENT_M1', $62 = 'BRENT_M2', $63 = 'BRENT_M3', $64 = 'BRENT_M4', $65 = 'BRENT_M5', $66 = 'BRENT_M6', $67 = 'BRENT_M7', $68 = 'BRENT_M8', $69 = 'BRENT_M9', $70 = 'BRENT_N0', $71 = 'BRENT_N1', $72 = 'BRENT_N2', $73 = 'BRENT_N3', $74 = 'BRENT_N4', $75 = 'BRENT_N5', $76 = 'BRENT_N6', $77 = 'BRENT_N7', $78 = 'BRENT_N8', $79 = 'BRENT_N9', $80 = 'BRENT_Q0', $81 = 'BRENT_Q1', $82 = 'BRENT_Q2', $83 = 'BRENT_Q3', $84 = 'BRENT_Q4', $85 = 'BRENT_Q5', $86 = 'BRENT_Q6', $87 = 'BRENT_Q7', $88 = 'BRENT_Q8', $89 = 'BRENT_Q9', $90 = 'BRENT_U0', $91 = 'BRENT_U1', $92 = 'BRENT_U2', $93 = 'BRENT_U3', $94 = 'BRENT_U4', $95 = 'BRENT_U5', $96 = 'BRENT_U6', $97 = 'BRENT_U7', $98 = 'BRENT_U8', $99 = 'BRENT_U9', $100 = 'BRENT_V0', $101 = 'BRENT_V1', $102 = 'BRENT_V2', $103 = 'BRENT_V3', $104 = 'BRENT_V4', $105 = 'BRENT_V5', $106 = 'BRENT_V6', $107 = 'BRENT_V7', $108 = 'BRENT_V8', $109 = 'BRENT_V9', $110 = 'BRENT_X0', $111 = 'BRENT_X1', $112 = 'BRENT_X2', $113 = 'BRENT_X3', $114 = 'BRENT_X4', $115 = 'BRENT_X5', $116 = 'BRENT_X6', $117 = 'BRENT_X7', $118 = 'BRENT_X8', $119 = 'BRENT_X9', $120 = 'BRENT_Z0', $121 = 'BRENT_Z1', $122 = 'BRENT_Z2', $123 = 'BRENT_Z3', $124 = 'BRENT_Z4', $125 = 'BRENT_Z5', $126 = 'BRENT_Z6', $127 = 'BRENT_Z7', $128 = 'BRENT_Z8', $129 = 'BRENT_Z9', $130 = 'BTCUSD', $131 = 'CADCHF', $132 = 'CADJPY', $133 = 'CHFJPY', $134 = 'CHFSGD', $135 = 'CHINA50', $136 = 'Coffee_F0', $137 = 'Coffee_F1', $138 = 'Coffee_F2', $139 = 'Coffee_F3', $140 = 'Coffee_F4', $141 = 'Coffee_F5', $142 = 'Coffee_F6', $143 = 'Coffee_F7', $144 = 'Coffee_F8', $145 = 'Coffee_F9', $146 = 'Coffee_G0', $147 = 'Coffee_G1', $148 = 'Coffee_G2', $149 = 'Coffee_G3', $150 = 'Coffee_G4', $151 = 'Coffee_G5', $152 = 'Coffee_G6', $153 = 'Coffee_G7', $154 = 'Coffee_G8', $155 = 'Coffee_G9', $156 = 'Coffee_H0', $157 = 'Coffee_H1', $158 = 'Coffee_H2', $159 = 'Coffee_H3', $160 = 'Coffee_H4', $161 = 'Coffee_H5', $162 = 'Coffee_H6', $163 = 'Coffee_H7', $164 = 'Coffee_H8', $165 = 'Coffee_H9', $166 = 'Coffee_J0', $167 = 'Coffee_J1', $168 = 'Coffee_J2', $169 = 'Coffee_J3', $170 = 'Coffee_J4', $171 = 'Coffee_J5', $172 = 'Coffee_J6', $173 = 'Coffee_J7', $174 = 'Coffee_J8', $175 = 'Coffee_J9', $176 = 'Coffee_K0', $177 = 'Coffee_K1', $178 = 'Coffee_K2', $179 = 'Coffee_K3', $180 = 'Coffee_K4', $181 = 'Coffee_K5', $182 = 'Coffee_K6', $183 = 'Coffee_K7', $184 = 'Coffee_K8', $185 = 'Coffee_K9', $186 = 'Coffee_M0', $187 = 'Coffee_M1', $188 = 'Coffee_M2', $189 = 'Coffee_M3', $190 = 'Coffee_M4', $191 = 'Coffee_M5', $192 = 'Coffee_M6', $193 = 'Coffee_M7', $194 = 'Coffee_M8', $195 = 'Coffee_M9', $196 = 'Coffee_N0', $197 = 'Coffee_N1', $198 = 'Coffee_N2', $199 = 'Coffee_N3', $200 = 'Coffee_N4', $201 = 'Coffee_N5', $202 = 'Coffee_N6', $203 = 'Coffee_N7', $204 = 'Coffee_N8', $205 = 'Coffee_N9', $206 = 'Coffee_Q0', $207 = 'Coffee_Q1', $208 = 'Coffee_Q2', $209 = 'Coffee_Q3', $210 = 'Coffee_Q4', $211 = 'Coffee_Q5', $212 = 'Coffee_Q6', $213 = 'Coffee_Q7', $214 = 'Coffee_Q8', $215 = 'Coffee_Q9', $216 = 'Coffee_U0', $217 = 'Coffee_U1', $218 = 'Coffee_U2', $219 = 'Coffee_U3', $220 = 'Coffee_U4', $221 = 'Coffee_U5', $222 = 'Coffee_U6', $223 = 'Coffee_U7', $224 = 'Coffee_U8', $225 = 'Coffee_U9', $226 = 'Coffee_V0', $227 = 'Coffee_V1', $228 = 'Coffee_V2', $229 = 'Coffee_V3', $230 = 'Coffee_V4', $231 = 'Coffee_V5', $232 = 'Coffee_V6', $233 = 'Coffee_V7', $234 = 'Coffee_V8', $235 = 'Coffee_V9', $236 = 'Coffee_X0', $237 = 'Coffee_X1', $238 = 'Coffee_X2', $239 = 'Coffee_X3', $240 = 'Coffee_X4', $241 = 'Coffee_X5', $242 = 'Coffee_X6', $243 = 'Coffee_X7', $244 = 'Coffee_X8', $245 = 'Coffee_X9', $246 = 'Coffee_Z0', $247 = 'Coffee_Z1', $248 = 'Coffee_Z2', $249 = 'Coffee_Z3', $250 = 'Coffee_Z4', $251 = 'Coffee_Z5', $252 = 'Coffee_Z6', $253 = 'Coffee_Z7', $254 = 'Coffee_Z8', $255 = 'Coffee_Z9', $256 = 'Corn_F0', $257 = 'Corn_F1', $258 = 'Corn_F2', $259 = 'Corn_F3', $260 = 'Corn_F4', $261 = 'Corn_F5', $262 = 'Corn_F6', $263 = 'Corn_F7', $264 = 'Corn_F8', $265 = 'Corn_F9', $266 = 'Corn_G0', $267 = 'Corn_G1', $268 = 'Corn_G2', $269 = 'Corn_G3', $270 = 'Corn_G4', $271 = 'Corn_G5', $272 = 'Corn_G6', $273 = 'Corn_G7', $274 = 'Corn_G8', $275 = 'Corn_G9', $276 = 'Corn_H0', $277 = 'Corn_H1', $278 = 'Corn_H2', $279 = 'Corn_H3', $280 = 'Corn_H4', $281 = 'Corn_H5', $282 = 'Corn_H6', $283 = 'Corn_H7', $284 = 'Corn_H8', $285 = 'Corn_H9', $286 = 'Corn_J0', $287 = 'Corn_J1', $288 = 'Corn_J2', $289 = 'Corn_J3', $290 = 'Corn_J4', $291 = 'Corn_J5', $292 = 'Corn_J6', $293 = 'Corn_J7', $294 = 'Corn_J8', $295 = 'Corn_J9', $296 = 'Corn_K0', $297 = 'Corn_K1', $298 = 'Corn_K2', $299 = 'Corn_K3', $300 = 'Corn_K4', $301 = 'Corn_K5', $302 = 'Corn_K6', $303 = 'Corn_K7', $304 = 'Corn_K8', $305 = 'Corn_K9', $306 = 'Corn_M0', $307 = 'Corn_M1', $308 = 'Corn_M2', $309 = 'Corn_M3', $310 = 'Corn_M4', $311 = 'Corn_M5', $312 = 'Corn_M6', $313 = 'Corn_M7', $314 = 'Corn_M8', $315 = 'Corn_M9', $316 = 'Corn_N0', $317 = 'Corn_N1', $318 = 'Corn_N2', $319 = 'Corn_N3', $320 = 'Corn_N4', $321 = 'Corn_N5', $322 = 'Corn_N6', $323 = 'Corn_N7', $324 = 'Corn_N8', $325 = 'Corn_N9', $326 = 'Corn_Q0', $327 = 'Corn_Q1', $328 = 'Corn_Q2', $329 = 'Corn_Q3', $330 = 'Corn_Q4', $331 = 'Corn_Q5', $332 = 'Corn_Q6', $333 = 'Corn_Q7', $334 = 'Corn_Q8', $335 = 'Corn_Q9', $336 = 'Corn_U0', $337 = 'Corn_U1', $338 = 'Corn_U2', $339 = 'Corn_U3', $340 = 'Corn_U4', $341 = 'Corn_U5', $342 = 'Corn_U6', $343 = 'Corn_U7', $344 = 'Corn_U8', $345 = 'Corn_U9', $346 = 'Corn_V0', $347 = 'Corn_V1', $348 = 'Corn_V2', $349 = 'Corn_V3', $350 = 'Corn_V4', $351 = 'Corn_V5', $352 = 'Corn_V6', $353 = 'Corn_V7', $354 = 'Corn_V8', $355 = 'Corn_V9', $356 = 'Corn_X0', $357 = 'Corn_X1', $358 = 'Corn_X2', $359 = 'Corn_X3', $360 = 'Corn_X4', $361 = 'Corn_X5', $362 = 'Corn_X6', $363 = 'Corn_X7', $364 = 'Corn_X8', $365 = 'Corn_X9', $366 = 'Corn_Z0', $367 = 'Corn_Z1', $368 = 'Corn_Z2', $369 = 'Corn_Z3', $370 = 'Corn_Z4', $371 = 'Corn_Z5', $372 = 'Corn_Z6', $373 = 'Corn_Z7', $374 = 'Corn_Z8', $375 = 'Corn_Z9', $376 = 'DE30', $377 = 'ES35', $378 = 'EURAUD', $379 = 'EURCAD', $380 = 'EURCHF', $381 = 'EURDKK', $382 = 'EURGBP', $383 = 'EURHKD', $384 = 'EURJPY', $385 = 'EURNOK', $386 = 'EURNZD', $387 = 'EURPLN', $388 = 'EURSEK', $389 = 'EURSGD', $390 = 'EURTRY', $391 = 'EURUSD', $392 = 'EURZAR', $393 = 'F40', $394 = 'GBPAUD', $395 = 'GBPCAD', $396 = 'GBPCHF', $397 = 'GBPDKK', $398 = 'GBPJPY', $399 = 'GBPNOK', $400 = 'GBPNZD', $401 = 'GBPSEK', $402 = 'GBPSGD', $403 = 'GBPUSD', $404 = 'HK50', $405 = 'IT40', $406 = 'JP225', $407 = 'NOKJPY', $408 = 'NOKSEK', $409 = 'NZDCAD', $410 = 'NZDCHF', $411 = 'NZDJPY', $412 = 'NZDUSD', $413 = 'SEKJPY', $414 = 'SGDJPY', $415 = 'STOXX50', $416 = 'Soybean_F0', $417 = 'Soybean_F1', $418 = 'Soybean_F2', $419 = 'Soybean_F3', $420 = 'Soybean_F4', $421 = 'Soybean_F5', $422 = 'Soybean_F6', $423 = 'Soybean_F7', $424 = 'Soybean_F8', $425 = 'Soybean_F9', $426 = 'Soybean_G0', $427 = 'Soybean_G1', $428 = 'Soybean_G2', $429 = 'Soybean_G3', $430 = 'Soybean_G4', $431 = 'Soybean_G5', $432 = 'Soybean_G6', $433 = 'Soybean_G7', $434 = 'Soybean_G8', $435 = 'Soybean_G9', $436 = 'Soybean_H0', $437 = 'Soybean_H1', $438 = 'Soybean_H2', $439 = 'Soybean_H3', $440 = 'Soybean_H4', $441 = 'Soybean_H5', $442 = 'Soybean_H6', $443 = 'Soybean_H7', $444 = 'Soybean_H8', $445 = 'Soybean_H9', $446 = 'Soybean_J0', $447 = 'Soybean_J1', $448 = 'Soybean_J2', $449 = 'Soybean_J3', $450 = 'Soybean_J4', $451 = 'Soybean_J5', $452 = 'Soybean_J6', $453 = 'Soybean_J7', $454 = 'Soybean_J8', $455 = 'Soybean_J9', $456 = 'Soybean_K0', $457 = 'Soybean_K1', $458 = 'Soybean_K2', $459 = 'Soybean_K3', $460 = 'Soybean_K4', $461 = 'Soybean_K5', $462 = 'Soybean_K6', $463 = 'Soybean_K7', $464 = 'Soybean_K8', $465 = 'Soybean_K9', $466 = 'Soybean_M0', $467 = 'Soybean_M1', $468 = 'Soybean_M2', $469 = 'Soybean_M3', $470 = 'Soybean_M4', $471 = 'Soybean_M5', $472 = 'Soybean_M6', $473 = 'Soybean_M7', $474 = 'Soybean_M8', $475 = 'Soybean_M9', $476 = 'Soybean_N0', $477 = 'Soybean_N1', $478 = 'Soybean_N2', $479 = 'Soybean_N3', $480 = 'Soybean_N4', $481 = 'Soybean_N5', $482 = 'Soybean_N6', $483 = 'Soybean_N7', $484 = 'Soybean_N8', $485 = 'Soybean_N9', $486 = 'Soybean_Q0', $487 = 'Soybean_Q1', $488 = 'Soybean_Q2', $489 = 'Soybean_Q3', $490 = 'Soybean_Q4', $491 = 'Soybean_Q5', $492 = 'Soybean_Q6', $493 = 'Soybean_Q7', $494 = 'Soybean_Q8', $495 = 'Soybean_Q9', $496 = 'Soybean_U0', $497 = 'Soybean_U1', $498 = 'Soybean_U2', $499 = 'Soybean_U3', $500 = 'Soybean_U4', $501 = 'Soybean_U5', $502 = 'Soybean_U6', $503 = 'Soybean_U7', $504 = 'Soybean_U8', $505 = 'Soybean_U9', $506 = 'Soybean_V0', $507 = 'Soybean_V1', $508 = 'Soybean_V2', $509 = 'Soybean_V3', $510 = 'Soybean_V4', $511 = 'Soybean_V5', $512 = 'Soybean_V6', $513 = 'Soybean_V7', $514 = 'Soybean_V8', $515 = 'Soybean_V9', $516 = 'Soybean_X0', $517 = 'Soybean_X1', $518 = 'Soybean_X2', $519 = 'Soybean_X3', $520 = 'Soybean_X4', $521 = 'Soybean_X5', $522 = 'Soybean_X6', $523 = 'Soybean_X7', $524 = 'Soybean_X8', $525 = 'Soybean_X9', $526 = 'Soybean_Z0', $527 = 'Soybean_Z1', $528 = 'Soybean_Z2', $529 = 'Soybean_Z3', $530 = 'Soybean_Z4', $531 = 'Soybean_Z5', $532 = 'Soybean_Z6', $533 = 'Soybean_Z7', $534 = 'Soybean_Z8', $535 = 'Soybean_Z9', $536 = 'Sugar_F0', $537 = 'Sugar_F1', $538 = 'Sugar_F2', $539 = 'Sugar_F3', $540 = 'Sugar_F4', $541 = 'Sugar_F5', $542 = 'Sugar_F6', $543 = 'Sugar_F7', $544 = 'Sugar_F8', $545 = 'Sugar_F9', $546 = 'Sugar_G0', $547 = 'Sugar_G1', $548 = 'Sugar_G2', $549 = 'Sugar_G3', $550 = 'Sugar_G4', $551 = 'Sugar_G5', $552 = 'Sugar_G6', $553 = 'Sugar_G7', $554 = 'Sugar_G8', $555 = 'Sugar_G9', $556 = 'Sugar_H0', $557 = 'Sugar_H1', $558 = 'Sugar_H2', $559 = 'Sugar_H3', $560 = 'Sugar_H4', $561 = 'Sugar_H5', $562 = 'Sugar_H6', $563 = 'Sugar_H7', $564 = 'Sugar_H8', $565 = 'Sugar_H9', $566 = 'Sugar_J0', $567 = 'Sugar_J1', $568 = 'Sugar_J2', $569 = 'Sugar_J3', $570 = 'Sugar_J4', $571 = 'Sugar_J5', $572 = 'Sugar_J6', $573 = 'Sugar_J7', $574 = 'Sugar_J8', $575 = 'Sugar_J9', $576 = 'Sugar_K0', $577 = 'Sugar_K1', $578 = 'Sugar_K2', $579 = 'Sugar_K3', $580 = 'Sugar_K4', $581 = 'Sugar_K5', $582 = 'Sugar_K6', $583 = 'Sugar_K7', $584 = 'Sugar_K8', $585 = 'Sugar_K9', $586 = 'Sugar_M0', $587 = 'Sugar_M1', $588 = 'Sugar_M2', $589 = 'Sugar_M3', $590 = 'Sugar_M4', $591 = 'Sugar_M5', $592 = 'Sugar_M6', $593 = 'Sugar_M7', $594 = 'Sugar_M8', $595 = 'Sugar_M9', $596 = 'Sugar_N0', $597 = 'Sugar_N1', $598 = 'Sugar_N2', $599 = 'Sugar_N3', $600 = 'Sugar_N4', $601 = 'Sugar_N5', $602 = 'Sugar_N6', $603 = 'Sugar_N7', $604 = 'Sugar_N8', $605 = 'Sugar_N9', $606 = 'Sugar_Q0', $607 = 'Sugar_Q1', $608 = 'Sugar_Q2', $609 = 'Sugar_Q3', $610 = 'Sugar_Q4', $611 = 'Sugar_Q5', $612 = 'Sugar_Q6', $613 = 'Sugar_Q7', $614 = 'Sugar_Q8', $615 = 'Sugar_Q9', $616 = 'Sugar_U0', $617 = 'Sugar_U1', $618 = 'Sugar_U2', $619 = 'Sugar_U3', $620 = 'Sugar_U4', $621 = 'Sugar_U5', $622 = 'Sugar_U6', $623 = 'Sugar_U7', $624 = 'Sugar_U8', $625 = 'Sugar_U9', $626 = 'Sugar_V0', $627 = 'Sugar_V1', $628 = 'Sugar_V2', $629 = 'Sugar_V3', $630 = 'Sugar_V4', $631 = 'Sugar_V5', $632 = 'Sugar_V6', $633 = 'Sugar_V7', $634 = 'Sugar_V8', $635 = 'Sugar_V9', $636 = 'Sugar_X0', $637 = 'Sugar_X1', $638 = 'Sugar_X2', $639 = 'Sugar_X3', $640 = 'Sugar_X4', $641 = 'Sugar_X5', $642 = 'Sugar_X6', $643 = 'Sugar_X7', $644 = 'Sugar_X8', $645 = 'Sugar_X9', $646 = 'Sugar_Z0', $647 = 'Sugar_Z1', $648 = 'Sugar_Z2', $649 = 'Sugar_Z3', $650 = 'Sugar_Z4', $651 = 'Sugar_Z5', $652 = 'Sugar_Z6', $653 = 'Sugar_Z7', $654 = 'Sugar_Z8', $655 = 'Sugar_Z9', $656 = 'UK100', $657 = 'US2000', $658 = 'US30', $659 = 'US500', $660 = 'USDCAD', $661 = 'USDCHF', $662 = 'USDCNH', $663 = 'USDCZK', $664 = 'USDDKK', $665 = 'USDHKD', $666 = 'USDHUF', $667 = 'USDJPY', $668 = 'USDMXN', $669 = 'USDNOK', $670 = 'USDPLN', $671 = 'USDRUB', $672 = 'USDSEK', $673 = 'USDSGD', $674 = 'USDTHB', $675 = 'USDTRY', $676 = 'USDZAR', $677 = 'USTEC', $678 = 'WTI_F0', $679 = 'WTI_F1', $680 = 'WTI_F2', $681 = 'WTI_F3', $682 = 'WTI_F4', $683 = 'WTI_F5', $684 = 'WTI_F6', $685 = 'WTI_F7', $686 = 'WTI_F8', $687 = 'WTI_F9', $688 = 'WTI_G0', $689 = 'WTI_G1', $690 = 'WTI_G2', $691 = 'WTI_G3', $692 = 'WTI_G4', $693 = 'WTI_G5', $694 = 'WTI_G6', $695 = 'WTI_G7', $696 = 'WTI_G8', $697 = 'WTI_G9', $698 = 'WTI_H0', $699 = 'WTI_H1', $700 = 'WTI_H2', $701 = 'WTI_H3', $702 = 'WTI_H4', $703 = 'WTI_H5', $704 = 'WTI_H6', $705 = 'WTI_H7', $706 = 'WTI_H8', $707 = 'WTI_H9', $708 = 'WTI_J0', $709 = 'WTI_J1', $710 = 'WTI_J2', $711 = 'WTI_J3', $712 = 'WTI_J4', $713 = 'WTI_J5', $714 = 'WTI_J6', $715 = 'WTI_J7', $716 = 'WTI_J8', $717 = 'WTI_J9', $718 = 'WTI_K0', $719 = 'WTI_K1', $720 = 'WTI_K2', $721 = 'WTI_K3', $722 = 'WTI_K4', $723 = 'WTI_K5', $724 = 'WTI_K6', $725 = 'WTI_K7', $726 = 'WTI_K8', $727 = 'WTI_K9', $728 = 'WTI_M0', $729 = 'WTI_M1', $730 = 'WTI_M2', $731 = 'WTI_M3', $732 = 'WTI_M4', $733 = 'WTI_M5', $734 = 'WTI_M6', $735 = 'WTI_M7', $736 = 'WTI_M8', $737 = 'WTI_M9', $738 = 'WTI_N0', $739 = 'WTI_N1', $740 = 'WTI_N2', $741 = 'WTI_N3', $742 = 'WTI_N4', $743 = 'WTI_N5', $744 = 'WTI_N6', $745 = 'WTI_N7', $746 = 'WTI_N8', $747 = 'WTI_N9', $748 = 'WTI_Q0', $749 = 'WTI_Q1', $750 = 'WTI_Q2', $751 = 'WTI_Q3', $752 = 'WTI_Q4', $753 = 'WTI_Q5', $754 = 'WTI_Q6', $755 = 'WTI_Q7', $756 = 'WTI_Q8', $757 = 'WTI_Q9', $758 = 'WTI_U0', $759 = 'WTI_U1', $760 = 'WTI_U2', $761 = 'WTI_U3', $762 = 'WTI_U4', $763 = 'WTI_U5', $764 = 'WTI_U6', $765 = 'WTI_U7', $766 = 'WTI_U8', $767 = 'WTI_U9', $768 = 'WTI_V0', $769 = 'WTI_V1', $770 = 'WTI_V2', $771 = 'WTI_V3', $772 = 'WTI_V4', $773 = 'WTI_V5', $774 = 'WTI_V6', $775 = 'WTI_V7', $776 = 'WTI_V8', $777 = 'WTI_V9', $778 = 'WTI_X0', $779 = 'WTI_X1', $780 = 'WTI_X2', $781 = 'WTI_X3', $782 = 'WTI_X4', $783 = 'WTI_X5', $784 = 'WTI_X6', $785 = 'WTI_X7', $786 = 'WTI_X8', $787 = 'WTI_X9', $788 = 'WTI_Z0', $789 = 'WTI_Z1', $790 = 'WTI_Z2', $791 = 'WTI_Z3', $792 = 'WTI_Z4', $793 = 'WTI_Z5', $794 = 'WTI_Z6', $795 = 'WTI_Z7', $796 = 'WTI_Z8', $797 = 'WTI_Z9', $798 = 'Wheat_F0', $799 = 'Wheat_F1', $800 = 'Wheat_F2', $801 = 'Wheat_F3', $802 = 'Wheat_F4', $803 = 'Wheat_F5', $804 = 'Wheat_F6', $805 = 'Wheat_F7', $806 = 'Wheat_F8', $807 = 'Wheat_F9', $808 = 'Wheat_G0', $809 = 'Wheat_G1', $810 = 'Wheat_G2', $811 = 'Wheat_G3', $812 = 'Wheat_G4', $813 = 'Wheat_G5', $814 = 'Wheat_G6', $815 = 'Wheat_G7', $816 = 'Wheat_G8', $817 = 'Wheat_G9', $818 = 'Wheat_H0', $819 = 'Wheat_H1', $820 = 'Wheat_H2', $821 = 'Wheat_H3', $822 = 'Wheat_H4', $823 = 'Wheat_H5', $824 = 'Wheat_H6', $825 = 'Wheat_H7', $826 = 'Wheat_H8', $827 = 'Wheat_H9', $828 = 'Wheat_J0', $829 = 'Wheat_J1', $830 = 'Wheat_J2', $831 = 'Wheat_J3', $832 = 'Wheat_J4', $833 = 'Wheat_J5', $834 = 'Wheat_J6', $835 = 'Wheat_J7', $836 = 'Wheat_J8', $837 = 'Wheat_J9', $838 = 'Wheat_K0', $839 = 'Wheat_K1', $840 = 'Wheat_K2', $841 = 'Wheat_K3', $842 = 'Wheat_K4', $843 = 'Wheat_K5', $844 = 'Wheat_K6', $845 = 'Wheat_K7', $846 = 'Wheat_K8', $847 = 'Wheat_K9', $848 = 'Wheat_M0', $849 = 'Wheat_M1', $850 = 'Wheat_M2', $851 = 'Wheat_M3', $852 = 'Wheat_M4', $853 = 'Wheat_M5', $854 = 'Wheat_M6', $855 = 'Wheat_M7', $856 = 'Wheat_M8', $857 = 'Wheat_M9', $858 = 'Wheat_N0', $859 = 'Wheat_N1', $860 = 'Wheat_N2', $861 = 'Wheat_N3', $862 = 'Wheat_N4', $863 = 'Wheat_N5', $864 = 'Wheat_N6', $865 = 'Wheat_N7', $866 = 'Wheat_N8', $867 = 'Wheat_N9', $868 = 'Wheat_Q0', $869 = 'Wheat_Q1', $870 = 'Wheat_Q2', $871 = 'Wheat_Q3', $872 = 'Wheat_Q4', $873 = 'Wheat_Q5', $874 = 'Wheat_Q6', $875 = 'Wheat_Q7', $876 = 'Wheat_Q8', $877 = 'Wheat_Q9', $878 = 'Wheat_U0', $879 = 'Wheat_U1', $880 = 'Wheat_U2', $881 = 'Wheat_U3', $882 = 'Wheat_U4', $883 = 'Wheat_U5', $884 = 'Wheat_U6', $885 = 'Wheat_U7', $886 = 'Wheat_U8', $887 = 'Wheat_U9', $888 = 'Wheat_V0', $889 = 'Wheat_V1', $890 = 'Wheat_V2', $891 = 'Wheat_V3', $892 = 'Wheat_V4', $893 = 'Wheat_V5', $894 = 'Wheat_V6', $895 = 'Wheat_V7', $896 = 'Wheat_V8', $897 = 'Wheat_V9', $898 = 'Wheat_X0', $899 = 'Wheat_X1', $900 = 'Wheat_X2', $901 = 'Wheat_X3', $902 = 'Wheat_X4', $903 = 'Wheat_X5', $904 = 'Wheat_X6', $905 = 'Wheat_X7', $906 = 'Wheat_X8', $907 = 'Wheat_X9', $908 = 'Wheat_Z0', $909 = 'Wheat_Z1', $910 = 'Wheat_Z2', $911 = 'Wheat_Z3', $912 = 'Wheat_Z4', $913 = 'Wheat_Z5', $914 = 'Wheat_Z6', $915 = 'Wheat_Z7', $916 = 'Wheat_Z8', $917 = 'Wheat_Z9', $918 = 'XAGEUR', $919 = 'XAGUSD', $920 = 'XAUEUR', $921 = 'XAUUSD', $922 = 'XBRUSD', $923 = 'XNGUSD', $924 = 'XPDUSD', $925 = 'XPTUSD', $926 = 'XTIUSD', $927 = 'AUDCAD', $928 = 'AUDCHF', $929 = 'AUDJPY', $930 = 'AUDNZD', $931 = 'AUDSGD', $932 = 'AUDUSD', $933 = 'AUS200', $934 = 'BRENT_F0', $935 = 'BRENT_F1', $936 = 'BRENT_F2', $937 = 'BRENT_F3', $938 = 'BRENT_F4', $939 = 'BRENT_F5', $940 = 'BRENT_F6', $941 = 'BRENT_F7', $942 = 'BRENT_F8', $943 = 'BRENT_F9', $944 = 'BRENT_G0', $945 = 'BRENT_G1', $946 = 'BRENT_G2', $947 = 'BRENT_G3', $948 = 'BRENT_G4', $949 = 'BRENT_G5', $950 = 'BRENT_G6', $951 = 'BRENT_G7', $952 = 'BRENT_G8', $953 = 'BRENT_G9', $954 = 'BRENT_H0', $955 = 'BRENT_H1', $956 = 'BRENT_H2', $957 = 'BRENT_H3', $958 = 'BRENT_H4', $959 = 'BRENT_H5', $960 = 'BRENT_H6', $961 = 'BRENT_H7', $962 = 'BRENT_H8', $963 = 'BRENT_H9', $964 = 'BRENT_J0', $965 = 'BRENT_J1', $966 = 'BRENT_J2', $967 = 'BRENT_J3', $968 = 'BRENT_J4', $969 = 'BRENT_J5', $970 = 'BRENT_J6', $971 = 'BRENT_J7', $972 = 'BRENT_J8', $973 = 'BRENT_J9', $974 = 'BRENT_K0', $975 = 'BRENT_K1', $976 = 'BRENT_K2', $977 = 'BRENT_K3', $978 = 'BRENT_K4', $979 = 'BRENT_K5', $980 = 'BRENT_K6', $981 = 'BRENT_K7', $982 = 'BRENT_K8', $983 = 'BRENT_K9', $984 = 'BRENT_M0', $985 = 'BRENT_M1', $986 = 'BRENT_M2', $987 = 'BRENT_M3', $988 = 'BRENT_M4', $989 = 'BRENT_M5', $990 = 'BRENT_M6', $991 = 'BRENT_M7', $992 = 'BRENT_M8', $993 = 'BRENT_M9', $994 = 'BRENT_N0', $995 = 'BRENT_N1', $996 = 'BRENT_N2', $997 = 'BRENT_N3', $998 = 'BRENT_N4', $999 = 'BRENT_N5', $1000 = 'BRENT_N6', $1001 = 'BRENT_N7', $1002 = 'BRENT_N8', $1003 = 'BRENT_N9', $1004 = 'BRENT_Q0', $1005 = 'BRENT_Q1', $1006 = 'BRENT_Q2', $1007 = 'BRENT_Q3', $1008 = 'BRENT_Q4', $1009 = 'BRENT_Q5', $1010 = 'BRENT_Q6', $1011 = 'BRENT_Q7', $1012 = 'BRENT_Q8', $1013 = 'BRENT_Q9', $1014 = 'BRENT_U0', $1015 = 'BRENT_U1', $1016 = 'BRENT_U2', $1017 = 'BRENT_U3', $1018 = 'BRENT_U4', $1019 = 'BRENT_U5', $1020 = 'BRENT_U6', $1021 = 'BRENT_U7', $1022 = 'BRENT_U8', $1023 = 'BRENT_U9', $1024 = 'BRENT_V0', $1025 = 'BRENT_V1', $1026 = 'BRENT_V2', $1027 = 'BRENT_V3', $1028 = 'BRENT_V4', $1029 = 'BRENT_V5', $1030 = 'BRENT_V6', $1031 = 'BRENT_V7', $1032 = 'BRENT_V8', $1033 = 'BRENT_V9', $1034 = 'BRENT_X0', $1035 = 'BRENT_X1', $1036 = 'BRENT_X2', $1037 = 'BRENT_X3', $1038 = 'BRENT_X4', $1039 = 'BRENT_X5', $1040 = 'BRENT_X6', $1041 = 'BRENT_X7', $1042 = 'BRENT_X8', $1043 = 'BRENT_X9', $1044 = 'BRENT_Z0', $1045 = 'BRENT_Z1', $1046 = 'BRENT_Z2', $1047 = 'BRENT_Z3', $1048 = 'BRENT_Z4', $1049 = 'BRENT_Z5', $1050 = 'BRENT_Z6', $1051 = 'BRENT_Z7', $1052 = 'BRENT_Z8', $1053 = 'BRENT_Z9', $1054 = 'BTCUSD', $1055 = 'CADCHF', $1056 = 'CADJPY', $1057 = 'CHFJPY', $1058 = 'CHFSGD', $1059 = 'CHINA50', $1060 = 'Coffee_F0', $1061 = 'Coffee_F1', $1062 = 'Coffee_F2', $1063 = 'Coffee_F3', $1064 = 'Coffee_F4', $1065 = 'Coffee_F5', $1066 = 'Coffee_F6', $1067 = 'Coffee_F7', $1068 = 'Coffee_F8', $1069 = 'Coffee_F9', $1070 = 'Coffee_G0', $1071 = 'Coffee_G1', $1072 = 'Coffee_G2', $1073 = 'Coffee_G3', $1074 = 'Coffee_G4', $1075 = 'Coffee_G5', $1076 = 'Coffee_G6', $1077 = 'Coffee_G7', $1078 = 'Coffee_G8', $1079 = 'Coffee_G9', $1080 = 'Coffee_H0', $1081 = 'Coffee_H1', $1082 = 'Coffee_H2', $1083 = 'Coffee_H3', $1084 = 'Coffee_H4', $1085 = 'Coffee_H5', $1086 = 'Coffee_H6', $1087 = 'Coffee_H7', $1088 = 'Coffee_H8', $1089 = 'Coffee_H9', $1090 = 'Coffee_J0', $1091 = 'Coffee_J1', $1092 = 'Coffee_J2', $1093 = 'Coffee_J3', $1094 = 'Coffee_J4', $1095 = 'Coffee_J5', $1096 = 'Coffee_J6', $1097 = 'Coffee_J7', $1098 = 'Coffee_J8', $1099 = 'Coffee_J9', $1100 = 'Coffee_K0', $1101 = 'Coffee_K1', $1102 = 'Coffee_K2', $1103 = 'Coffee_K3', $1104 = 'Coffee_K4', $1105 = 'Coffee_K5', $1106 = 'Coffee_K6', $1107 = 'Coffee_K7', $1108 = 'Coffee_K8', $1109 = 'Coffee_K9', $1110 = 'Coffee_M0', $1111 = 'Coffee_M1', $1112 = 'Coffee_M2', $1113 = 'Coffee_M3', $1114 = 'Coffee_M4', $1115 = 'Coffee_M5', $1116 = 'Coffee_M6', $1117 = 'Coffee_M7', $1118 = 'Coffee_M8', $1119 = 'Coffee_M9', $1120 = 'Coffee_N0', $1121 = 'Coffee_N1', $1122 = 'Coffee_N2', $1123 = 'Coffee_N3', $1124 = 'Coffee_N4', $1125 = 'Coffee_N5', $1126 = 'Coffee_N6', $1127 = 'Coffee_N7', $1128 = 'Coffee_N8', $1129 = 'Coffee_N9', $1130 = 'Coffee_Q0', $1131 = 'Coffee_Q1', $1132 = 'Coffee_Q2', $1133 = 'Coffee_Q3', $1134 = 'Coffee_Q4', $1135 = 'Coffee_Q5', $1136 = 'Coffee_Q6', $1137 = 'Coffee_Q7', $1138 = 'Coffee_Q8', $1139 = 'Coffee_Q9', $1140 = 'Coffee_U0', $1141 = 'Coffee_U1', $1142 = 'Coffee_U2', $1143 = 'Coffee_U3', $1144 = 'Coffee_U4', $1145 = 'Coffee_U5', $1146 = 'Coffee_U6', $1147 = 'Coffee_U7', $1148 = 'Coffee_U8', $1149 = 'Coffee_U9', $1150 = 'Coffee_V0', $1151 = 'Coffee_V1', $1152 = 'Coffee_V2', $1153 = 'Coffee_V3', $1154 = 'Coffee_V4', $1155 = 'Coffee_V5', $1156 = 'Coffee_V6', $1157 = 'Coffee_V7', $1158 = 'Coffee_V8', $1159 = 'Coffee_V9', $1160 = 'Coffee_X0', $1161 = 'Coffee_X1', $1162 = 'Coffee_X2', $1163 = 'Coffee_X3', $1164 = 'Coffee_X4', $1165 = 'Coffee_X5', $1166 = 'Coffee_X6', $1167 = 'Coffee_X7', $1168 = 'Coffee_X8', $1169 = 'Coffee_X9', $1170 = 'Coffee_Z0', $1171 = 'Coffee_Z1', $1172 = 'Coffee_Z2', $1173 = 'Coffee_Z3', $1174 = 'Coffee_Z4', $1175 = 'Coffee_Z5', $1176 = 'Coffee_Z6', $1177 = 'Coffee_Z7', $1178 = 'Coffee_Z8', $1179 = 'Coffee_Z9', $1180 = 'Corn_F0', $1181 = 'Corn_F1', $1182 = 'Corn_F2', $1183 = 'Corn_F3', $1184 = 'Corn_F4', $1185 = 'Corn_F5', $1186 = 'Corn_F6', $1187 = 'Corn_F7', $1188 = 'Corn_F8', $1189 = 'Corn_F9', $1190 = 'Corn_G0', $1191 = 'Corn_G1', $1192 = 'Corn_G2', $1193 = 'Corn_G3', $1194 = 'Corn_G4', $1195 = 'Corn_G5', $1196 = 'Corn_G6', $1197 = 'Corn_G7', $1198 = 'Corn_G8', $1199 = 'Corn_G9', $1200 = 'Corn_H0', $1201 = 'Corn_H1', $1202 = 'Corn_H2', $1203 = 'Corn_H3', $1204 = 'Corn_H4', $1205 = 'Corn_H5', $1206 = 'Corn_H6', $1207 = 'Corn_H7', $1208 = 'Corn_H8', $1209 = 'Corn_H9', $1210 = 'Corn_J0', $1211 = 'Corn_J1', $1212 = 'Corn_J2', $1213 = 'Corn_J3', $1214 = 'Corn_J4', $1215 = 'Corn_J5', $1216 = 'Corn_J6', $1217 = 'Corn_J7', $1218 = 'Corn_J8', $1219 = 'Corn_J9', $1220 = 'Corn_K0', $1221 = 'Corn_K1', $1222 = 'Corn_K2', $1223 = 'Corn_K3', $1224 = 'Corn_K4', $1225 = 'Corn_K5', $1226 = 'Corn_K6', $1227 = 'Corn_K7', $1228 = 'Corn_K8', $1229 = 'Corn_K9', $1230 = 'Corn_M0', $1231 = 'Corn_M1', $1232 = 'Corn_M2', $1233 = 'Corn_M3', $1234 = 'Corn_M4', $1235 = 'Corn_M5', $1236 = 'Corn_M6', $1237 = 'Corn_M7', $1238 = 'Corn_M8', $1239 = 'Corn_M9', $1240 = 'Corn_N0', $1241 = 'Corn_N1', $1242 = 'Corn_N2', $1243 = 'Corn_N3', $1244 = 'Corn_N4', $1245 = 'Corn_N5', $1246 = 'Corn_N6', $1247 = 'Corn_N7', $1248 = 'Corn_N8', $1249 = 'Corn_N9', $1250 = 'Corn_Q0', $1251 = 'Corn_Q1', $1252 = 'Corn_Q2', $1253 = 'Corn_Q3', $1254 = 'Corn_Q4', $1255 = 'Corn_Q5', $1256 = 'Corn_Q6', $1257 = 'Corn_Q7', $1258 = 'Corn_Q8', $1259 = 'Corn_Q9', $1260 = 'Corn_U0', $1261 = 'Corn_U1', $1262 = 'Corn_U2', $1263 = 'Corn_U3', $1264 = 'Corn_U4', $1265 = 'Corn_U5', $1266 = 'Corn_U6', $1267 = 'Corn_U7', $1268 = 'Corn_U8', $1269 = 'Corn_U9', $1270 = 'Corn_V0', $1271 = 'Corn_V1', $1272 = 'Corn_V2', $1273 = 'Corn_V3', $1274 = 'Corn_V4', $1275 = 'Corn_V5', $1276 = 'Corn_V6', $1277 = 'Corn_V7', $1278 = 'Corn_V8', $1279 = 'Corn_V9', $1280 = 'Corn_X0', $1281 = 'Corn_X1', $1282 = 'Corn_X2', $1283 = 'Corn_X3', $1284 = 'Corn_X4', $1285 = 'Corn_X5', $1286 = 'Corn_X6', $1287 = 'Corn_X7', $1288 = 'Corn_X8', $1289 = 'Corn_X9', $1290 = 'Corn_Z0', $1291 = 'Corn_Z1', $1292 = 'Corn_Z2', $1293 = 'Corn_Z3', $1294 = 'Corn_Z4', $1295 = 'Corn_Z5', $1296 = 'Corn_Z6', $1297 = 'Corn_Z7', $1298 = 'Corn_Z8', $1299 = 'Corn_Z9', $1300 = 'DE30', $1301 = 'ES35', $1302 = 'EURAUD', $1303 = 'EURCAD', $1304 = 'EURCHF', $1305 = 'EURDKK', $1306 = 'EURGBP', $1307 = 'EURHKD', $1308 = 'EURJPY', $1309 = 'EURNOK', $1310 = 'EURNZD', $1311 = 'EURPLN', $1312 = 'EURSEK', $1313 = 'EURSGD', $1314 = 'EURTRY', $1315 = 'EURUSD', $1316 = 'EURZAR', $1317 = 'F40', $1318 = 'GBPAUD', $1319 = 'GBPCAD', $1320 = 'GBPCHF', $1321 = 'GBPDKK', $1322 = 'GBPJPY', $1323 = 'GBPNOK', $1324 = 'GBPNZD', $1325 = 'GBPSEK', $1326 = 'GBPSGD', $1327 = 'GBPUSD', $1328 = 'HK50', $1329 = 'IT40', $1330 = 'JP225', $1331 = 'NOKJPY', $1332 = 'NOKSEK', $1333 = 'NZDCAD', $1334 = 'NZDCHF', $1335 = 'NZDJPY', $1336 = 'NZDUSD', $1337 = 'SEKJPY', $1338 = 'SGDJPY', $1339 = 'STOXX50', $1340 = 'Soybean_F0', $1341 = 'Soybean_F1', $1342 = 'Soybean_F2', $1343 = 'Soybean_F3', $1344 = 'Soybean_F4', $1345 = 'Soybean_F5', $1346 = 'Soybean_F6', $1347 = 'Soybean_F7', $1348 = 'Soybean_F8', $1349 = 'Soybean_F9', $1350 = 'Soybean_G0', $1351 = 'Soybean_G1', $1352 = 'Soybean_G2', $1353 = 'Soybean_G3', $1354 = 'Soybean_G4', $1355 = 'Soybean_G5', $1356 = 'Soybean_G6', $1357 = 'Soybean_G7', $1358 = 'Soybean_G8', $1359 = 'Soybean_G9', $1360 = 'Soybean_H0', $1361 = 'Soybean_H1', $1362 = 'Soybean_H2', $1363 = 'Soybean_H3', $1364 = 'Soybean_H4', $1365 = 'Soybean_H5', $1366 = 'Soybean_H6', $1367 = 'Soybean_H7', $1368 = 'Soybean_H8', $1369 = 'Soybean_H9', $1370 = 'Soybean_J0', $1371 = 'Soybean_J1', $1372 = 'Soybean_J2', $1373 = 'Soybean_J3', $1374 = 'Soybean_J4', $1375 = 'Soybean_J5', $1376 = 'Soybean_J6', $1377 = 'Soybean_J7', $1378 = 'Soybean_J8', $1379 = 'Soybean_J9', $1380 = 'Soybean_K0', $1381 = 'Soybean_K1', $1382 = 'Soybean_K2', $1383 = 'Soybean_K3', $1384 = 'Soybean_K4', $1385 = 'Soybean_K5', $1386 = 'Soybean_K6', $1387 = 'Soybean_K7', $1388 = 'Soybean_K8', $1389 = 'Soybean_K9', $1390 = 'Soybean_M0', $1391 = 'Soybean_M1', $1392 = 'Soybean_M2', $1393 = 'Soybean_M3', $1394 = 'Soybean_M4', $1395 = 'Soybean_M5', $1396 = 'Soybean_M6', $1397 = 'Soybean_M7', $1398 = 'Soybean_M8', $1399 = 'Soybean_M9', $1400 = 'Soybean_N0', $1401 = 'Soybean_N1', $1402 = 'Soybean_N2', $1403 = 'Soybean_N3', $1404 = 'Soybean_N4', $1405 = 'Soybean_N5', $1406 = 'Soybean_N6', $1407 = 'Soybean_N7', $1408 = 'Soybean_N8', $1409 = 'Soybean_N9', $1410 = 'Soybean_Q0', $1411 = 'Soybean_Q1', $1412 = 'Soybean_Q2', $1413 = 'Soybean_Q3', $1414 = 'Soybean_Q4', $1415 = 'Soybean_Q5', $1416 = 'Soybean_Q6', $1417 = 'Soybean_Q7', $1418 = 'Soybean_Q8', $1419 = 'Soybean_Q9', $1420 = 'Soybean_U0', $1421 = 'Soybean_U1', $1422 = 'Soybean_U2', $1423 = 'Soybean_U3', $1424 = 'Soybean_U4', $1425 = 'Soybean_U5', $1426 = 'Soybean_U6', $1427 = 'Soybean_U7', $1428 = 'Soybean_U8', $1429 = 'Soybean_U9', $1430 = 'Soybean_V0', $1431 = 'Soybean_V1', $1432 = 'Soybean_V2', $1433 = 'Soybean_V3', $1434 = 'Soybean_V4', $1435 = 'Soybean_V5', $1436 = 'Soybean_V6', $1437 = 'Soybean_V7', $1438 = 'Soybean_V8', $1439 = 'Soybean_V9', $1440 = 'Soybean_X0', $1441 = 'Soybean_X1', $1442 = 'Soybean_X2', $1443 = 'Soybean_X3', $1444 = 'Soybean_X4', $1445 = 'Soybean_X5', $1446 = 'Soybean_X6', $1447 = 'Soybean_X7', $1448 = 'Soybean_X8', $1449 = 'Soybean_X9', $1450 = 'Soybean_Z0', $1451 = 'Soybean_Z1', $1452 = 'Soybean_Z2', $1453 = 'Soybean_Z3', $1454 = 'Soybean_Z4', $1455 = 'Soybean_Z5', $1456 = 'Soybean_Z6', $1457 = 'Soybean_Z7', $1458 = 'Soybean_Z8', $1459 = 'Soybean_Z9', $1460 = 'Sugar_F0', $1461 = 'Sugar_F1', $1462 = 'Sugar_F2', $1463 = 'Sugar_F3', $1464 = 'Sugar_F4', $1465 = 'Sugar_F5', $1466 = 'Sugar_F6', $1467 = 'Sugar_F7', $1468 = 'Sugar_F8', $1469 = 'Sugar_F9', $1470 = 'Sugar_G0', $1471 = 'Sugar_G1', $1472 = 'Sugar_G2', $1473 = 'Sugar_G3', $1474 = 'Sugar_G4', $1475 = 'Sugar_G5', $1476 = 'Sugar_G6', $1477 = 'Sugar_G7', $1478 = 'Sugar_G8', $1479 = 'Sugar_G9', $1480 = 'Sugar_H0', $1481 = 'Sugar_H1', $1482 = 'Sugar_H2', $1483 = 'Sugar_H3', $1484 = 'Sugar_H4', $1485 = 'Sugar_H5', $1486 = 'Sugar_H6', $1487 = 'Sugar_H7', $1488 = 'Sugar_H8', $1489 = 'Sugar_H9', $1490 = 'Sugar_J0', $1491 = 'Sugar_J1', $1492 = 'Sugar_J2', $1493 = 'Sugar_J3', $1494 = 'Sugar_J4', $1495 = 'Sugar_J5', $1496 = 'Sugar_J6', $1497 = 'Sugar_J7', $1498 = 'Sugar_J8', $1499 = 'Sugar_J9', $1500 = 'Sugar_K0', $1501 = 'Sugar_K1', $1502 = 'Sugar_K2', $1503 = 'Sugar_K3', $1504 = 'Sugar_K4', $1505 = 'Sugar_K5', $1506 = 'Sugar_K6', $1507 = 'Sugar_K7', $1508 = 'Sugar_K8', $1509 = 'Sugar_K9', $1510 = 'Sugar_M0', $1511 = 'Sugar_M1', $1512 = 'Sugar_M2', $1513 = 'Sugar_M3', $1514 = 'Sugar_M4', $1515 = 'Sugar_M5', $1516 = 'Sugar_M6', $1517 = 'Sugar_M7', $1518 = 'Sugar_M8', $1519 = 'Sugar_M9', $1520 = 'Sugar_N0', $1521 = 'Sugar_N1', $1522 = 'Sugar_N2', $1523 = 'Sugar_N3', $1524 = 'Sugar_N4', $1525 = 'Sugar_N5', $1526 = 'Sugar_N6', $1527 = 'Sugar_N7', $1528 = 'Sugar_N8', $1529 = 'Sugar_N9', $1530 = 'Sugar_Q0', $1531 = 'Sugar_Q1', $1532 = 'Sugar_Q2', $1533 = 'Sugar_Q3', $1534 = 'Sugar_Q4', $1535 = 'Sugar_Q5', $1536 = 'Sugar_Q6', $1537 = 'Sugar_Q7', $1538 = 'Sugar_Q8', $1539 = 'Sugar_Q9', $1540 = 'Sugar_U0', $1541 = 'Sugar_U1', $1542 = 'Sugar_U2', $1543 = 'Sugar_U3', $1544 = 'Sugar_U4', $1545 = 'Sugar_U5', $1546 = 'Sugar_U6', $1547 = 'Sugar_U7', $1548 = 'Sugar_U8', $1549 = 'Sugar_U9', $1550 = 'Sugar_V0', $1551 = 'Sugar_V1', $1552 = 'Sugar_V2', $1553 = 'Sugar_V3', $1554 = 'Sugar_V4', $1555 = 'Sugar_V5', $1556 = 'Sugar_V6', $1557 = 'Sugar_V7', $1558 = 'Sugar_V8', $1559 = 'Sugar_V9', $1560 = 'Sugar_X0', $1561 = 'Sugar_X1', $1562 = 'Sugar_X2', $1563 = 'Sugar_X3', $1564 = 'Sugar_X4', $1565 = 'Sugar_X5', $1566 = 'Sugar_X6', $1567 = 'Sugar_X7', $1568 = 'Sugar_X8', $1569 = 'Sugar_X9', $1570 = 'Sugar_Z0', $1571 = 'Sugar_Z1', $1572 = 'Sugar_Z2', $1573 = 'Sugar_Z3', $1574 = 'Sugar_Z4', $1575 = 'Sugar_Z5', $1576 = 'Sugar_Z6', $1577 = 'Sugar_Z7', $1578 = 'Sugar_Z8', $1579 = 'Sugar_Z9', $1580 = 'UK100', $1581 = 'US2000', $1582 = 'US30', $1583 = 'US500', $1584 = 'USDCAD', $1585 = 'USDCHF', $1586 = 'USDCNH', $1587 = 'USDCZK', $1588 = 'USDDKK', $1589 = 'USDHKD', $1590 = 'USDHUF', $1591 = 'USDJPY', $1592 = 'USDMXN', $1593 = 'USDNOK', $1594 = 'USDPLN', $1595 = 'USDRUB', $1596 = 'USDSEK', $1597 = 'USDSGD', $1598 = 'USDTHB', $1599 = 'USDTRY', $1600 = 'USDZAR', $1601 = 'USTEC', $1602 = 'WTI_F0', $1603 = 'WTI_F1', $1604 = 'WTI_F2', $1605 = 'WTI_F3', $1606 = 'WTI_F4', $1607 = 'WTI_F5', $1608 = 'WTI_F6', $1609 = 'WTI_F7', $1610 = 'WTI_F8', $1611 = 'WTI_F9', $1612 = 'WTI_G0', $1613 = 'WTI_G1', $1614 = 'WTI_G2', $1615 = 'WTI_G3', $1616 = 'WTI_G4', $1617 = 'WTI_G5', $1618 = 'WTI_G6', $1619 = 'WTI_G7', $1620 = 'WTI_G8', $1621 = 'WTI_G9', $1622 = 'WTI_H0', $1623 = 'WTI_H1', $1624 = 'WTI_H2', $1625 = 'WTI_H3', $1626 = 'WTI_H4', $1627 = 'WTI_H5', $1628 = 'WTI_H6', $1629 = 'WTI_H7', $1630 = 'WTI_H8', $1631 = 'WTI_H9', $1632 = 'WTI_J0', $1633 = 'WTI_J1', $1634 = 'WTI_J2', $1635 = 'WTI_J3', $1636 = 'WTI_J4', $1637 = 'WTI_J5', $1638 = 'WTI_J6', $1639 = 'WTI_J7', $1640 = 'WTI_J8', $1641 = 'WTI_J9', $1642 = 'WTI_K0', $1643 = 'WTI_K1', $1644 = 'WTI_K2', $1645 = 'WTI_K3', $1646 = 'WTI_K4', $1647 = 'WTI_K5', $1648 = 'WTI_K6', $1649 = 'WTI_K7', $1650 = 'WTI_K8', $1651 = 'WTI_K9', $1652 = 'WTI_M0', $1653 = 'WTI_M1', $1654 = 'WTI_M2', $1655 = 'WTI_M3', $1656 = 'WTI_M4', $1657 = 'WTI_M5', $1658 = 'WTI_M6', $1659 = 'WTI_M7', $1660 = 'WTI_M8', $1661 = 'WTI_M9', $1662 = 'WTI_N0', $1663 = 'WTI_N1', $1664 = 'WTI_N2', $1665 = 'WTI_N3', $1666 = 'WTI_N4', $1667 = 'WTI_N5', $1668 = 'WTI_N6', $1669 = 'WTI_N7', $1670 = 'WTI_N8', $1671 = 'WTI_N9', $1672 = 'WTI_Q0', $1673 = 'WTI_Q1', $1674 = 'WTI_Q2', $1675 = 'WTI_Q3', $1676 = 'WTI_Q4', $1677 = 'WTI_Q5', $1678 = 'WTI_Q6', $1679 = 'WTI_Q7', $1680 = 'WTI_Q8', $1681 = 'WTI_Q9', $1682 = 'WTI_U0', $1683 = 'WTI_U1', $1684 = 'WTI_U2', $1685 = 'WTI_U3', $1686 = 'WTI_U4', $1687 = 'WTI_U5', $1688 = 'WTI_U6', $1689 = 'WTI_U7', $1690 = 'WTI_U8', $1691 = 'WTI_U9', $1692 = 'WTI_V0', $1693 = 'WTI_V1', $1694 = 'WTI_V2', $1695 = 'WTI_V3', $1696 = 'WTI_V4', $1697 = 'WTI_V5', $1698 = 'WTI_V6', $1699 = 'WTI_V7', $1700 = 'WTI_V8', $1701 = 'WTI_V9', $1702 = 'WTI_X0', $1703 = 'WTI_X1', $1704 = 'WTI_X2', $1705 = 'WTI_X3', $1706 = 'WTI_X4', $1707 = 'WTI_X5', $1708 = 'WTI_X6', $1709 = 'WTI_X7', $1710 = 'WTI_X8', $1711 = 'WTI_X9', $1712 = 'WTI_Z0', $1713 = 'WTI_Z1', $1714 = 'WTI_Z2', $1715 = 'WTI_Z3', $1716 = 'WTI_Z4', $1717 = 'WTI_Z5', $1718 = 'WTI_Z6', $1719 = 'WTI_Z7', $1720 = 'WTI_Z8', $1721 = 'WTI_Z9', $1722 = 'Wheat_F0', $1723 = 'Wheat_F1', $1724 = 'Wheat_F2', $1725 = 'Wheat_F3', $1726 = 'Wheat_F4', $1727 = 'Wheat_F5', $1728 = 'Wheat_F6', $1729 = 'Wheat_F7', $1730 = 'Wheat_F8', $1731 = 'Wheat_F9', $1732 = 'Wheat_G0', $1733 = 'Wheat_G1', $1734 = 'Wheat_G2', $1735 = 'Wheat_G3', $1736 = 'Wheat_G4', $1737 = 'Wheat_G5', $1738 = 'Wheat_G6', $1739 = 'Wheat_G7', $1740 = 'Wheat_G8', $1741 = 'Wheat_G9', $1742 = 'Wheat_H0', $1743 = 'Wheat_H1', $1744 = 'Wheat_H2', $1745 = 'Wheat_H3', $1746 = 'Wheat_H4', $1747 = 'Wheat_H5', $1748 = 'Wheat_H6', $1749 = 'Wheat_H7', $1750 = 'Wheat_H8', $1751 = 'Wheat_H9', $1752 = 'Wheat_J0', $1753 = 'Wheat_J1', $1754 = 'Wheat_J2', $1755 = 'Wheat_J3', $1756 = 'Wheat_J4', $1757 = 'Wheat_J5', $1758 = 'Wheat_J6', $1759 = 'Wheat_J7', $1760 = 'Wheat_J8', $1761 = 'Wheat_J9', $1762 = 'Wheat_K0', $1763 = 'Wheat_K1', $1764 = 'Wheat_K2', $1765 = 'Wheat_K3', $1766 = 'Wheat_K4', $1767 = 'Wheat_K5', $1768 = 'Wheat_K6', $1769 = 'Wheat_K7', $1770 = 'Wheat_K8', $1771 = 'Wheat_K9', $1772 = 'Wheat_M0', $1773 = 'Wheat_M1', $1774 = 'Wheat_M2', $1775 = 'Wheat_M3', $1776 = 'Wheat_M4', $1777 = 'Wheat_M5', $1778 = 'Wheat_M6', $1779 = 'Wheat_M7', $1780 = 'Wheat_M8', $1781 = 'Wheat_M9', $1782 = 'Wheat_N0', $1783 = 'Wheat_N1', $1784 = 'Wheat_N2', $1785 = 'Wheat_N3', $1786 = 'Wheat_N4', $1787 = 'Wheat_N5', $1788 = 'Wheat_N6', $1789 = 'Wheat_N7', $1790 = 'Wheat_N8', $1791 = 'Wheat_N9', $1792 = 'Wheat_Q0', $1793 = 'Wheat_Q1', $1794 = 'Wheat_Q2', $1795 = 'Wheat_Q3', $1796 = 'Wheat_Q4', $1797 = 'Wheat_Q5', $1798 = 'Wheat_Q6', $1799 = 'Wheat_Q7', $1800 = 'Wheat_Q8', $1801 = 'Wheat_Q9', $1802 = 'Wheat_U0', $1803 = 'Wheat_U1', $1804 = 'Wheat_U2', $1805 = 'Wheat_U3', $1806 = 'Wheat_U4', $1807 = 'Wheat_U5', $1808 = 'Wheat_U6', $1809 = 'Wheat_U7', $1810 = 'Wheat_U8', $1811 = 'Wheat_U9', $1812 = 'Wheat_V0', $1813 = 'Wheat_V1', $1814 = 'Wheat_V2', $1815 = 'Wheat_V3', $1816 = 'Wheat_V4', $1817 = 'Wheat_V5', $1818 = 'Wheat_V6', $1819 = 'Wheat_V7', $1820 = 'Wheat_V8', $1821 = 'Wheat_V9', $1822 = 'Wheat_X0', $1823 = 'Wheat_X1', $1824 = 'Wheat_X2', $1825 = 'Wheat_X3', $1826 = 'Wheat_X4', $1827 = 'Wheat_X5', $1828 = 'Wheat_X6', $1829 = 'Wheat_X7', $1830 = 'Wheat_X8', $1831 = 'Wheat_X9', $1832 = 'Wheat_Z0', $1833 = 'Wheat_Z1', $1834 = 'Wheat_Z2', $1835 = 'Wheat_Z3', $1836 = 'Wheat_Z4', $1837 = 'Wheat_Z5', $1838 = 'Wheat_Z6', $1839 = 'Wheat_Z7', $1840 = 'Wheat_Z8', $1841 = 'Wheat_Z9', $1842 = 'XAGEUR', $1843 = 'XAGUSD', $1844 = 'XAUEUR', $1845 = 'XAUUSD', $1846 = 'XBRUSD', $1847 = 'XNGUSD', $1848 = 'XPDUSD', $1849 = 'XPTUSD', $1850 = 'XTIUSD'
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2025-12-22 13:14:01 Duration: 20ms Database: postgres parameters: $1 = '972', $2 = 'ICMARKETS-AU-MT5', $3 = 'AUDSGD', $4 = 'CHFSGD', $5 = 'EURDKK', $6 = 'EURHKD', $7 = 'EURNOK', $8 = 'EURPLN', $9 = 'EURSEK', $10 = 'EURSGD', $11 = 'EURTRY', $12 = 'EURZAR', $13 = 'GBPDKK', $14 = 'GBPNOK', $15 = 'GBPSEK', $16 = 'GBPSGD', $17 = 'NOKJPY', $18 = 'NOKSEK', $19 = 'SEKJPY', $20 = 'SGDJPY', $21 = 'USDCNH', $22 = 'USDCZK', $23 = 'USDDKK', $24 = 'USDHKD', $25 = 'USDHUF', $26 = 'USDMXN', $27 = 'USDNOK', $28 = 'USDPLN', $29 = 'USDRUB', $30 = 'USDSEK', $31 = 'USDTHB', $32 = 'USDTRY', $33 = 'USDZAR', $34 = 'AUDUSD', $35 = 'EURUSD', $36 = 'GBPUSD', $37 = 'USDCAD', $38 = 'USDCHF', $39 = 'USDJPY', $40 = 'AUDCAD', $41 = 'AUDCHF', $42 = 'AUDJPY', $43 = 'AUDNZD', $44 = 'CADCHF', $45 = 'CADJPY', $46 = 'CHFJPY', $47 = 'EURAUD', $48 = 'EURCAD', $49 = 'EURCHF', $50 = 'EURGBP', $51 = 'EURJPY', $52 = 'EURNZD', $53 = 'GBPAUD', $54 = 'GBPCAD', $55 = 'GBPCHF', $56 = 'GBPJPY', $57 = 'GBPNZD', $58 = 'NZDCAD', $59 = 'NZDCHF', $60 = 'NZDJPY', $61 = 'NZDUSD', $62 = 'USDSGD', $63 = 'AUS200', $64 = 'CHINA50', $65 = 'DE30', $66 = 'ES35', $67 = 'F40', $68 = 'HK50', $69 = 'IT40', $70 = 'JP225', $71 = 'STOXX50', $72 = 'UK100', $73 = 'US2000', $74 = 'US30', $75 = 'US500', $76 = 'USTEC', $77 = 'XAGEUR', $78 = 'XAGUSD', $79 = 'XAUEUR', $80 = 'XAUUSD', $81 = 'XPDUSD', $82 = 'XPTUSD', $83 = 'XBRUSD', $84 = 'XNGUSD', $85 = 'XTIUSD', $86 = 'BTCUSD', $87 = 'BRENT_F0', $88 = 'BRENT_F1', $89 = 'BRENT_F2', $90 = 'BRENT_F3', $91 = 'BRENT_F4', $92 = 'BRENT_F5', $93 = 'BRENT_F6', $94 = 'BRENT_F7', $95 = 'BRENT_F8', $96 = 'BRENT_F9', $97 = 'BRENT_G0', $98 = 'BRENT_G1', $99 = 'BRENT_G2', $100 = 'BRENT_G3', $101 = 'BRENT_G4', $102 = 'BRENT_G5', $103 = 'BRENT_G6', $104 = 'BRENT_G7', $105 = 'BRENT_G8', $106 = 'BRENT_G9', $107 = 'BRENT_H0', $108 = 'BRENT_H1', $109 = 'BRENT_H2', $110 = 'BRENT_H3', $111 = 'BRENT_H4', $112 = 'BRENT_H5', $113 = 'BRENT_H6', $114 = 'BRENT_H7', $115 = 'BRENT_H8', $116 = 'BRENT_H9', $117 = 'BRENT_J0', $118 = 'BRENT_J1', $119 = 'BRENT_J2', $120 = 'BRENT_J3', $121 = 'BRENT_J4', $122 = 'BRENT_J5', $123 = 'BRENT_J6', $124 = 'BRENT_J7', $125 = 'BRENT_J8', $126 = 'BRENT_J9', $127 = 'BRENT_K0', $128 = 'BRENT_K1', $129 = 'BRENT_K2', $130 = 'BRENT_K3', $131 = 'BRENT_K4', $132 = 'BRENT_K5', $133 = 'BRENT_K6', $134 = 'BRENT_K7', $135 = 'BRENT_K8', $136 = 'BRENT_K9', $137 = 'BRENT_M0', $138 = 'BRENT_M1', $139 = 'BRENT_M2', $140 = 'BRENT_M3', $141 = 'BRENT_M4', $142 = 'BRENT_M5', $143 = 'BRENT_M6', $144 = 'BRENT_M7', $145 = 'BRENT_M8', $146 = 'BRENT_M9', $147 = 'BRENT_N0', $148 = 'BRENT_N1', $149 = 'BRENT_N2', $150 = 'BRENT_N3', $151 = 'BRENT_N4', $152 = 'BRENT_N5', $153 = 'BRENT_N6', $154 = 'BRENT_N7', $155 = 'BRENT_N8', $156 = 'BRENT_N9', $157 = 'BRENT_Q0', $158 = 'BRENT_Q1', $159 = 'BRENT_Q2', $160 = 'BRENT_Q3', $161 = 'BRENT_Q4', $162 = 'BRENT_Q5', $163 = 'BRENT_Q6', $164 = 'BRENT_Q7', $165 = 'BRENT_Q8', $166 = 'BRENT_Q9', $167 = 'BRENT_U0', $168 = 'BRENT_U1', $169 = 'BRENT_U2', $170 = 'BRENT_U3', $171 = 'BRENT_U4', $172 = 'BRENT_U5', $173 = 'BRENT_U6', $174 = 'BRENT_U7', $175 = 'BRENT_U8', $176 = 'BRENT_U9', $177 = 'BRENT_V0', $178 = 'BRENT_V1', $179 = 'BRENT_V2', $180 = 'BRENT_V3', $181 = 'BRENT_V4', $182 = 'BRENT_V5', $183 = 'BRENT_V6', $184 = 'BRENT_V7', $185 = 'BRENT_V8', $186 = 'BRENT_V9', $187 = 'BRENT_X0', $188 = 'BRENT_X1', $189 = 'BRENT_X2', $190 = 'BRENT_X3', $191 = 'BRENT_X4', $192 = 'BRENT_X5', $193 = 'BRENT_X6', $194 = 'BRENT_X7', $195 = 'BRENT_X8', $196 = 'BRENT_X9', $197 = 'BRENT_Z0', $198 = 'BRENT_Z1', $199 = 'BRENT_Z2', $200 = 'BRENT_Z3', $201 = 'BRENT_Z4', $202 = 'BRENT_Z5', $203 = 'BRENT_Z6', $204 = 'BRENT_Z7', $205 = 'BRENT_Z8', $206 = 'BRENT_Z9', $207 = 'Coffee_F0', $208 = 'Coffee_F1', $209 = 'Coffee_F2', $210 = 'Coffee_F3', $211 = 'Coffee_F4', $212 = 'Coffee_F5', $213 = 'Coffee_F6', $214 = 'Coffee_F7', $215 = 'Coffee_F8', $216 = 'Coffee_F9', $217 = 'Coffee_G0', $218 = 'Coffee_G1', $219 = 'Coffee_G2', $220 = 'Coffee_G3', $221 = 'Coffee_G4', $222 = 'Coffee_G5', $223 = 'Coffee_G6', $224 = 'Coffee_G7', $225 = 'Coffee_G8', $226 = 'Coffee_G9', $227 = 'Coffee_H0', $228 = 'Coffee_H1', $229 = 'Coffee_H2', $230 = 'Coffee_H3', $231 = 'Coffee_H4', $232 = 'Coffee_H5', $233 = 'Coffee_H6', $234 = 'Coffee_H7', $235 = 'Coffee_H8', $236 = 'Coffee_H9', $237 = 'Coffee_J0', $238 = 'Coffee_J1', $239 = 'Coffee_J2', $240 = 'Coffee_J3', $241 = 'Coffee_J4', $242 = 'Coffee_J5', $243 = 'Coffee_J6', $244 = 'Coffee_J7', $245 = 'Coffee_J8', $246 = 'Coffee_J9', $247 = 'Coffee_K0', $248 = 'Coffee_K1', $249 = 'Coffee_K2', $250 = 'Coffee_K3', $251 = 'Coffee_K4', $252 = 'Coffee_K5', $253 = 'Coffee_K6', $254 = 'Coffee_K7', $255 = 'Coffee_K8', $256 = 'Coffee_K9', $257 = 'Coffee_M0', $258 = 'Coffee_M1', $259 = 'Coffee_M2', $260 = 'Coffee_M3', $261 = 'Coffee_M4', $262 = 'Coffee_M5', $263 = 'Coffee_M6', $264 = 'Coffee_M7', $265 = 'Coffee_M8', $266 = 'Coffee_M9', $267 = 'Coffee_N0', $268 = 'Coffee_N1', $269 = 'Coffee_N2', $270 = 'Coffee_N3', $271 = 'Coffee_N4', $272 = 'Coffee_N5', $273 = 'Coffee_N6', $274 = 'Coffee_N7', $275 = 'Coffee_N8', $276 = 'Coffee_N9', $277 = 'Coffee_Q0', $278 = 'Coffee_Q1', $279 = 'Coffee_Q2', $280 = 'Coffee_Q3', $281 = 'Coffee_Q4', $282 = 'Coffee_Q5', $283 = 'Coffee_Q6', $284 = 'Coffee_Q7', $285 = 'Coffee_Q8', $286 = 'Coffee_Q9', $287 = 'Coffee_U0', $288 = 'Coffee_U1', $289 = 'Coffee_U2', $290 = 'Coffee_U3', $291 = 'Coffee_U4', $292 = 'Coffee_U5', $293 = 'Coffee_U6', $294 = 'Coffee_U7', $295 = 'Coffee_U8', $296 = 'Coffee_U9', $297 = 'Coffee_V0', $298 = 'Coffee_V1', $299 = 'Coffee_V2', $300 = 'Coffee_V3', $301 = 'Coffee_V4', $302 = 'Coffee_V5', $303 = 'Coffee_V6', $304 = 'Coffee_V7', $305 = 'Coffee_V8', $306 = 'Coffee_V9', $307 = 'Coffee_X0', $308 = 'Coffee_X1', $309 = 'Coffee_X2', $310 = 'Coffee_X3', $311 = 'Coffee_X4', $312 = 'Coffee_X5', $313 = 'Coffee_X6', $314 = 'Coffee_X7', $315 = 'Coffee_X8', $316 = 'Coffee_X9', $317 = 'Coffee_Z0', $318 = 'Coffee_Z1', $319 = 'Coffee_Z2', $320 = 'Coffee_Z3', $321 = 'Coffee_Z4', $322 = 'Coffee_Z5', $323 = 'Coffee_Z6', $324 = 'Coffee_Z7', $325 = 'Coffee_Z8', $326 = 'Coffee_Z9', $327 = 'Corn_F0', $328 = 'Corn_F1', $329 = 'Corn_F2', $330 = 'Corn_F3', $331 = 'Corn_F4', $332 = 'Corn_F5', $333 = 'Corn_F6', $334 = 'Corn_F7', $335 = 'Corn_F8', $336 = 'Corn_F9', $337 = 'Corn_G0', $338 = 'Corn_G1', $339 = 'Corn_G2', $340 = 'Corn_G3', $341 = 'Corn_G4', $342 = 'Corn_G5', $343 = 'Corn_G6', $344 = 'Corn_G7', $345 = 'Corn_G8', $346 = 'Corn_G9', $347 = 'Corn_H0', $348 = 'Corn_H1', $349 = 'Corn_H2', $350 = 'Corn_H3', $351 = 'Corn_H4', $352 = 'Corn_H5', $353 = 'Corn_H6', $354 = 'Corn_H7', $355 = 'Corn_H8', $356 = 'Corn_H9', $357 = 'Corn_J0', $358 = 'Corn_J1', $359 = 'Corn_J2', $360 = 'Corn_J3', $361 = 'Corn_J4', $362 = 'Corn_J5', $363 = 'Corn_J6', $364 = 'Corn_J7', $365 = 'Corn_J8', $366 = 'Corn_J9', $367 = 'Corn_K0', $368 = 'Corn_K1', $369 = 'Corn_K2', $370 = 'Corn_K3', $371 = 'Corn_K4', $372 = 'Corn_K5', $373 = 'Corn_K6', $374 = 'Corn_K7', $375 = 'Corn_K8', $376 = 'Corn_K9', $377 = 'Corn_M0', $378 = 'Corn_M1', $379 = 'Corn_M2', $380 = 'Corn_M3', $381 = 'Corn_M4', $382 = 'Corn_M5', $383 = 'Corn_M6', $384 = 'Corn_M7', $385 = 'Corn_M8', $386 = 'Corn_M9', $387 = 'Corn_N0', $388 = 'Corn_N1', $389 = 'Corn_N2', $390 = 'Corn_N3', $391 = 'Corn_N4', $392 = 'Corn_N5', $393 = 'Corn_N6', $394 = 'Corn_N7', $395 = 'Corn_N8', $396 = 'Corn_N9', $397 = 'Corn_Q0', $398 = 'Corn_Q1', $399 = 'Corn_Q2', $400 = 'Corn_Q3', $401 = 'Corn_Q4', $402 = 'Corn_Q5', $403 = 'Corn_Q6', $404 = 'Corn_Q7', $405 = 'Corn_Q8', $406 = 'Corn_Q9', $407 = 'Corn_U0', $408 = 'Corn_U1', $409 = 'Corn_U2', $410 = 'Corn_U3', $411 = 'Corn_U4', $412 = 'Corn_U5', $413 = 'Corn_U6', $414 = 'Corn_U7', $415 = 'Corn_U8', $416 = 'Corn_U9', $417 = 'Corn_V0', $418 = 'Corn_V1', $419 = 'Corn_V2', $420 = 'Corn_V3', $421 = 'Corn_V4', $422 = 'Corn_V5', $423 = 'Corn_V6', $424 = 'Corn_V7', $425 = 'Corn_V8', $426 = 'Corn_V9', $427 = 'Corn_X0', $428 = 'Corn_X1', $429 = 'Corn_X2', $430 = 'Corn_X3', $431 = 'Corn_X4', $432 = 'Corn_X5', $433 = 'Corn_X6', $434 = 'Corn_X7', $435 = 'Corn_X8', $436 = 'Corn_X9', $437 = 'Corn_Z0', $438 = 'Corn_Z1', $439 = 'Corn_Z2', $440 = 'Corn_Z3', $441 = 'Corn_Z4', $442 = 'Corn_Z5', $443 = 'Corn_Z6', $444 = 'Corn_Z7', $445 = 'Corn_Z8', $446 = 'Corn_Z9', $447 = 'Soybean_F0', $448 = 'Soybean_F1', $449 = 'Soybean_F2', $450 = 'Soybean_F3', $451 = 'Soybean_F4', $452 = 'Soybean_F5', $453 = 'Soybean_F6', $454 = 'Soybean_F7', $455 = 'Soybean_F8', $456 = 'Soybean_F9', $457 = 'Soybean_G0', $458 = 'Soybean_G1', $459 = 'Soybean_G2', $460 = 'Soybean_G3', $461 = 'Soybean_G4', $462 = 'Soybean_G5', $463 = 'Soybean_G6', $464 = 'Soybean_G7', $465 = 'Soybean_G8', $466 = 'Soybean_G9', $467 = 'Soybean_H0', $468 = 'Soybean_H1', $469 = 'Soybean_H2', $470 = 'Soybean_H3', $471 = 'Soybean_H4', $472 = 'Soybean_H5', $473 = 'Soybean_H6', $474 = 'Soybean_H7', $475 = 'Soybean_H8', $476 = 'Soybean_H9', $477 = 'Soybean_J0', $478 = 'Soybean_J1', $479 = 'Soybean_J2', $480 = 'Soybean_J3', $481 = 'Soybean_J4', $482 = 'Soybean_J5', $483 = 'Soybean_J6', $484 = 'Soybean_J7', $485 = 'Soybean_J8', $486 = 'Soybean_J9', $487 = 'Soybean_K0', $488 = 'Soybean_K1', $489 = 'Soybean_K2', $490 = 'Soybean_K3', $491 = 'Soybean_K4', $492 = 'Soybean_K5', $493 = 'Soybean_K6', $494 = 'Soybean_K7', $495 = 'Soybean_K8', $496 = 'Soybean_K9', $497 = 'Soybean_M0', $498 = 'Soybean_M1', $499 = 'Soybean_M2', $500 = 'Soybean_M3', $501 = 'Soybean_M4', $502 = 'Soybean_M5', $503 = 'Soybean_M6', $504 = 'Soybean_M7', $505 = 'Soybean_M8', $506 = 'Soybean_M9', $507 = 'Soybean_N0', $508 = 'Soybean_N1', $509 = 'Soybean_N2', $510 = 'Soybean_N3', $511 = 'Soybean_N4', $512 = 'Soybean_N5', $513 = 'Soybean_N6', $514 = 'Soybean_N7', $515 = 'Soybean_N8', $516 = 'Soybean_N9', $517 = 'Soybean_Q0', $518 = 'Soybean_Q1', $519 = 'Soybean_Q2', $520 = 'Soybean_Q3', $521 = 'Soybean_Q4', $522 = 'Soybean_Q5', $523 = 'Soybean_Q6', $524 = 'Soybean_Q7', $525 = 'Soybean_Q8', $526 = 'Soybean_Q9', $527 = 'Soybean_U0', $528 = 'Soybean_U1', $529 = 'Soybean_U2', $530 = 'Soybean_U3', $531 = 'Soybean_U4', $532 = 'Soybean_U5', $533 = 'Soybean_U6', $534 = 'Soybean_U7', $535 = 'Soybean_U8', $536 = 'Soybean_U9', $537 = 'Soybean_V0', $538 = 'Soybean_V1', $539 = 'Soybean_V2', $540 = 'Soybean_V3', $541 = 'Soybean_V4', $542 = 'Soybean_V5', $543 = 'Soybean_V6', $544 = 'Soybean_V7', $545 = 'Soybean_V8', $546 = 'Soybean_V9', $547 = 'Soybean_X0', $548 = 'Soybean_X1', $549 = 'Soybean_X2', $550 = 'Soybean_X3', $551 = 'Soybean_X4', $552 = 'Soybean_X5', $553 = 'Soybean_X6', $554 = 'Soybean_X7', $555 = 'Soybean_X8', $556 = 'Soybean_X9', $557 = 'Soybean_Z0', $558 = 'Soybean_Z1', $559 = 'Soybean_Z2', $560 = 'Soybean_Z3', $561 = 'Soybean_Z4', $562 = 'Soybean_Z5', $563 = 'Soybean_Z6', $564 = 'Soybean_Z7', $565 = 'Soybean_Z8', $566 = 'Soybean_Z9', $567 = 'Sugar_F0', $568 = 'Sugar_F1', $569 = 'Sugar_F2', $570 = 'Sugar_F3', $571 = 'Sugar_F4', $572 = 'Sugar_F5', $573 = 'Sugar_F6', $574 = 'Sugar_F7', $575 = 'Sugar_F8', $576 = 'Sugar_F9', $577 = 'Sugar_G0', $578 = 'Sugar_G1', $579 = 'Sugar_G2', $580 = 'Sugar_G3', $581 = 'Sugar_G4', $582 = 'Sugar_G5', $583 = 'Sugar_G6', $584 = 'Sugar_G7', $585 = 'Sugar_G8', $586 = 'Sugar_G9', $587 = 'Sugar_H0', $588 = 'Sugar_H1', $589 = 'Sugar_H2', $590 = 'Sugar_H3', $591 = 'Sugar_H4', $592 = 'Sugar_H5', $593 = 'Sugar_H6', $594 = 'Sugar_H7', $595 = 'Sugar_H8', $596 = 'Sugar_H9', $597 = 'Sugar_J0', $598 = 'Sugar_J1', $599 = 'Sugar_J2', $600 = 'Sugar_J3', $601 = 'Sugar_J4', $602 = 'Sugar_J5', $603 = 'Sugar_J6', $604 = 'Sugar_J7', $605 = 'Sugar_J8', $606 = 'Sugar_J9', $607 = 'Sugar_K0', $608 = 'Sugar_K1', $609 = 'Sugar_K2', $610 = 'Sugar_K3', $611 = 'Sugar_K4', $612 = 'Sugar_K5', $613 = 'Sugar_K6', $614 = 'Sugar_K7', $615 = 'Sugar_K8', $616 = 'Sugar_K9', $617 = 'Sugar_M0', $618 = 'Sugar_M1', $619 = 'Sugar_M2', $620 = 'Sugar_M3', $621 = 'Sugar_M4', $622 = 'Sugar_M5', $623 = 'Sugar_M6', $624 = 'Sugar_M7', $625 = 'Sugar_M8', $626 = 'Sugar_M9', $627 = 'Sugar_N0', $628 = 'Sugar_N1', $629 = 'Sugar_N2', $630 = 'Sugar_N3', $631 = 'Sugar_N4', $632 = 'Sugar_N5', $633 = 'Sugar_N6', $634 = 'Sugar_N7', $635 = 'Sugar_N8', $636 = 'Sugar_N9', $637 = 'Sugar_Q0', $638 = 'Sugar_Q1', $639 = 'Sugar_Q2', $640 = 'Sugar_Q3', $641 = 'Sugar_Q4', $642 = 'Sugar_Q5', $643 = 'Sugar_Q6', $644 = 'Sugar_Q7', $645 = 'Sugar_Q8', $646 = 'Sugar_Q9', $647 = 'Sugar_U0', $648 = 'Sugar_U1', $649 = 'Sugar_U2', $650 = 'Sugar_U3', $651 = 'Sugar_U4', $652 = 'Sugar_U5', $653 = 'Sugar_U6', $654 = 'Sugar_U7', $655 = 'Sugar_U8', $656 = 'Sugar_U9', $657 = 'Sugar_V0', $658 = 'Sugar_V1', $659 = 'Sugar_V2', $660 = 'Sugar_V3', $661 = 'Sugar_V4', $662 = 'Sugar_V5', $663 = 'Sugar_V6', $664 = 'Sugar_V7', $665 = 'Sugar_V8', $666 = 'Sugar_V9', $667 = 'Sugar_X0', $668 = 'Sugar_X1', $669 = 'Sugar_X2', $670 = 'Sugar_X3', $671 = 'Sugar_X4', $672 = 'Sugar_X5', $673 = 'Sugar_X6', $674 = 'Sugar_X7', $675 = 'Sugar_X8', $676 = 'Sugar_X9', $677 = 'Sugar_Z0', $678 = 'Sugar_Z1', $679 = 'Sugar_Z2', $680 = 'Sugar_Z3', $681 = 'Sugar_Z4', $682 = 'Sugar_Z5', $683 = 'Sugar_Z6', $684 = 'Sugar_Z7', $685 = 'Sugar_Z8', $686 = 'Sugar_Z9', $687 = 'Wheat_F0', $688 = 'Wheat_F1', $689 = 'Wheat_F2', $690 = 'Wheat_F3', $691 = 'Wheat_F4', $692 = 'Wheat_F5', $693 = 'Wheat_F6', $694 = 'Wheat_F7', $695 = 'Wheat_F8', $696 = 'Wheat_F9', $697 = 'Wheat_G0', $698 = 'Wheat_G1', $699 = 'Wheat_G2', $700 = 'Wheat_G3', $701 = 'Wheat_G4', $702 = 'Wheat_G5', $703 = 'Wheat_G6', $704 = 'Wheat_G7', $705 = 'Wheat_G8', $706 = 'Wheat_G9', $707 = 'Wheat_H0', $708 = 'Wheat_H1', $709 = 'Wheat_H2', $710 = 'Wheat_H3', $711 = 'Wheat_H4', $712 = 'Wheat_H5', $713 = 'Wheat_H6', $714 = 'Wheat_H7', $715 = 'Wheat_H8', $716 = 'Wheat_H9', $717 = 'Wheat_J0', $718 = 'Wheat_J1', $719 = 'Wheat_J2', $720 = 'Wheat_J3', $721 = 'Wheat_J4', $722 = 'Wheat_J5', $723 = 'Wheat_J6', $724 = 'Wheat_J7', $725 = 'Wheat_J8', $726 = 'Wheat_J9', $727 = 'Wheat_K0', $728 = 'Wheat_K1', $729 = 'Wheat_K2', $730 = 'Wheat_K3', $731 = 'Wheat_K4', $732 = 'Wheat_K5', $733 = 'Wheat_K6', $734 = 'Wheat_K7', $735 = 'Wheat_K8', $736 = 'Wheat_K9', $737 = 'Wheat_M0', $738 = 'Wheat_M1', $739 = 'Wheat_M2', $740 = 'Wheat_M3', $741 = 'Wheat_M4', $742 = 'Wheat_M5', $743 = 'Wheat_M6', $744 = 'Wheat_M7', $745 = 'Wheat_M8', $746 = 'Wheat_M9', $747 = 'Wheat_N0', $748 = 'Wheat_N1', $749 = 'Wheat_N2', $750 = 'Wheat_N3', $751 = 'Wheat_N4', $752 = 'Wheat_N5', $753 = 'Wheat_N6', $754 = 'Wheat_N7', $755 = 'Wheat_N8', $756 = 'Wheat_N9', $757 = 'Wheat_Q0', $758 = 'Wheat_Q1', $759 = 'Wheat_Q2', $760 = 'Wheat_Q3', $761 = 'Wheat_Q4', $762 = 'Wheat_Q5', $763 = 'Wheat_Q6', $764 = 'Wheat_Q7', $765 = 'Wheat_Q8', $766 = 'Wheat_Q9', $767 = 'Wheat_U0', $768 = 'Wheat_U1', $769 = 'Wheat_U2', $770 = 'Wheat_U3', $771 = 'Wheat_U4', $772 = 'Wheat_U5', $773 = 'Wheat_U6', $774 = 'Wheat_U7', $775 = 'Wheat_U8', $776 = 'Wheat_U9', $777 = 'Wheat_V0', $778 = 'Wheat_V1', $779 = 'Wheat_V2', $780 = 'Wheat_V3', $781 = 'Wheat_V4', $782 = 'Wheat_V5', $783 = 'Wheat_V6', $784 = 'Wheat_V7', $785 = 'Wheat_V8', $786 = 'Wheat_V9', $787 = 'Wheat_X0', $788 = 'Wheat_X1', $789 = 'Wheat_X2', $790 = 'Wheat_X3', $791 = 'Wheat_X4', $792 = 'Wheat_X5', $793 = 'Wheat_X6', $794 = 'Wheat_X7', $795 = 'Wheat_X8', $796 = 'Wheat_X9', $797 = 'Wheat_Z0', $798 = 'Wheat_Z1', $799 = 'Wheat_Z2', $800 = 'Wheat_Z3', $801 = 'Wheat_Z4', $802 = 'Wheat_Z5', $803 = 'Wheat_Z6', $804 = 'Wheat_Z7', $805 = 'Wheat_Z8', $806 = 'Wheat_Z9', $807 = 'WTI_F0', $808 = 'WTI_F1', $809 = 'WTI_F2', $810 = 'WTI_F3', $811 = 'WTI_F4', $812 = 'WTI_F5', $813 = 'WTI_F6', $814 = 'WTI_F7', $815 = 'WTI_F8', $816 = 'WTI_F9', $817 = 'WTI_G0', $818 = 'WTI_G1', $819 = 'WTI_G2', $820 = 'WTI_G3', $821 = 'WTI_G4', $822 = 'WTI_G5', $823 = 'WTI_G6', $824 = 'WTI_G7', $825 = 'WTI_G8', $826 = 'WTI_G9', $827 = 'WTI_H0', $828 = 'WTI_H1', $829 = 'WTI_H2', $830 = 'WTI_H3', $831 = 'WTI_H4', $832 = 'WTI_H5', $833 = 'WTI_H6', $834 = 'WTI_H7', $835 = 'WTI_H8', $836 = 'WTI_H9', $837 = 'WTI_J0', $838 = 'WTI_J1', $839 = 'WTI_J2', $840 = 'WTI_J3', $841 = 'WTI_J4', $842 = 'WTI_J5', $843 = 'WTI_J6', $844 = 'WTI_J7', $845 = 'WTI_J8', $846 = 'WTI_J9', $847 = 'WTI_K0', $848 = 'WTI_K1', $849 = 'WTI_K2', $850 = 'WTI_K3', $851 = 'WTI_K4', $852 = 'WTI_K5', $853 = 'WTI_K6', $854 = 'WTI_K7', $855 = 'WTI_K8', $856 = 'WTI_K9', $857 = 'WTI_M0', $858 = 'WTI_M1', $859 = 'WTI_M2', $860 = 'WTI_M3', $861 = 'WTI_M4', $862 = 'WTI_M5', $863 = 'WTI_M6', $864 = 'WTI_M7', $865 = 'WTI_M8', $866 = 'WTI_M9', $867 = 'WTI_N0', $868 = 'WTI_N1', $869 = 'WTI_N2', $870 = 'WTI_N3', $871 = 'WTI_N4', $872 = 'WTI_N5', $873 = 'WTI_N6', $874 = 'WTI_N7', $875 = 'WTI_N8', $876 = 'WTI_N9', $877 = 'WTI_Q0', $878 = 'WTI_Q1', $879 = 'WTI_Q2', $880 = 'WTI_Q3', $881 = 'WTI_Q4', $882 = 'WTI_Q5', $883 = 'WTI_Q6', $884 = 'WTI_Q7', $885 = 'WTI_Q8', $886 = 'WTI_Q9', $887 = 'WTI_U0', $888 = 'WTI_U1', $889 = 'WTI_U2', $890 = 'WTI_U3', $891 = 'WTI_U4', $892 = 'WTI_U5', $893 = 'WTI_U6', $894 = 'WTI_U7', $895 = 'WTI_U8', $896 = 'WTI_U9', $897 = 'WTI_V0', $898 = 'WTI_V1', $899 = 'WTI_V2', $900 = 'WTI_V3', $901 = 'WTI_V4', $902 = 'WTI_V5', $903 = 'WTI_V6', $904 = 'WTI_V7', $905 = 'WTI_V8', $906 = 'WTI_V9', $907 = 'WTI_X0', $908 = 'WTI_X1', $909 = 'WTI_X2', $910 = 'WTI_X3', $911 = 'WTI_X4', $912 = 'WTI_X5', $913 = 'WTI_X6', $914 = 'WTI_X7', $915 = 'WTI_X8', $916 = 'WTI_X9', $917 = 'WTI_Z0', $918 = 'WTI_Z1', $919 = 'WTI_Z2', $920 = 'WTI_Z3', $921 = 'WTI_Z4', $922 = 'WTI_Z5', $923 = 'WTI_Z6', $924 = 'WTI_Z7', $925 = 'WTI_Z8', $926 = 'WTI_Z9', $927 = 'AUDSGD', $928 = 'CHFSGD', $929 = 'EURDKK', $930 = 'EURHKD', $931 = 'EURNOK', $932 = 'EURPLN', $933 = 'EURSEK', $934 = 'EURSGD', $935 = 'EURTRY', $936 = 'EURZAR', $937 = 'GBPDKK', $938 = 'GBPNOK', $939 = 'GBPSEK', $940 = 'GBPSGD', $941 = 'NOKJPY', $942 = 'NOKSEK', $943 = 'SEKJPY', $944 = 'SGDJPY', $945 = 'USDCNH', $946 = 'USDCZK', $947 = 'USDDKK', $948 = 'USDHKD', $949 = 'USDHUF', $950 = 'USDMXN', $951 = 'USDNOK', $952 = 'USDPLN', $953 = 'USDRUB', $954 = 'USDSEK', $955 = 'USDTHB', $956 = 'USDTRY', $957 = 'USDZAR', $958 = 'AUDUSD', $959 = 'EURUSD', $960 = 'GBPUSD', $961 = 'USDCAD', $962 = 'USDCHF', $963 = 'USDJPY', $964 = 'AUDCAD', $965 = 'AUDCHF', $966 = 'AUDJPY', $967 = 'AUDNZD', $968 = 'CADCHF', $969 = 'CADJPY', $970 = 'CHFJPY', $971 = 'EURAUD', $972 = 'EURCAD', $973 = 'EURCHF', $974 = 'EURGBP', $975 = 'EURJPY', $976 = 'EURNZD', $977 = 'GBPAUD', $978 = 'GBPCAD', $979 = 'GBPCHF', $980 = 'GBPJPY', $981 = 'GBPNZD', $982 = 'NZDCAD', $983 = 'NZDCHF', $984 = 'NZDJPY', $985 = 'NZDUSD', $986 = 'USDSGD', $987 = 'AUS200', $988 = 'CHINA50', $989 = 'DE30', $990 = 'ES35', $991 = 'F40', $992 = 'HK50', $993 = 'IT40', $994 = 'JP225', $995 = 'STOXX50', $996 = 'UK100', $997 = 'US2000', $998 = 'US30', $999 = 'US500', $1000 = 'USTEC', $1001 = 'XAGEUR', $1002 = 'XAGUSD', $1003 = 'XAUEUR', $1004 = 'XAUUSD', $1005 = 'XPDUSD', $1006 = 'XPTUSD', $1007 = 'XBRUSD', $1008 = 'XNGUSD', $1009 = 'XTIUSD', $1010 = 'BTCUSD', $1011 = 'BRENT_F0', $1012 = 'BRENT_F1', $1013 = 'BRENT_F2', $1014 = 'BRENT_F3', $1015 = 'BRENT_F4', $1016 = 'BRENT_F5', $1017 = 'BRENT_F6', $1018 = 'BRENT_F7', $1019 = 'BRENT_F8', $1020 = 'BRENT_F9', $1021 = 'BRENT_G0', $1022 = 'BRENT_G1', $1023 = 'BRENT_G2', $1024 = 'BRENT_G3', $1025 = 'BRENT_G4', $1026 = 'BRENT_G5', $1027 = 'BRENT_G6', $1028 = 'BRENT_G7', $1029 = 'BRENT_G8', $1030 = 'BRENT_G9', $1031 = 'BRENT_H0', $1032 = 'BRENT_H1', $1033 = 'BRENT_H2', $1034 = 'BRENT_H3', $1035 = 'BRENT_H4', $1036 = 'BRENT_H5', $1037 = 'BRENT_H6', $1038 = 'BRENT_H7', $1039 = 'BRENT_H8', $1040 = 'BRENT_H9', $1041 = 'BRENT_J0', $1042 = 'BRENT_J1', $1043 = 'BRENT_J2', $1044 = 'BRENT_J3', $1045 = 'BRENT_J4', $1046 = 'BRENT_J5', $1047 = 'BRENT_J6', $1048 = 'BRENT_J7', $1049 = 'BRENT_J8', $1050 = 'BRENT_J9', $1051 = 'BRENT_K0', $1052 = 'BRENT_K1', $1053 = 'BRENT_K2', $1054 = 'BRENT_K3', $1055 = 'BRENT_K4', $1056 = 'BRENT_K5', $1057 = 'BRENT_K6', $1058 = 'BRENT_K7', $1059 = 'BRENT_K8', $1060 = 'BRENT_K9', $1061 = 'BRENT_M0', $1062 = 'BRENT_M1', $1063 = 'BRENT_M2', $1064 = 'BRENT_M3', $1065 = 'BRENT_M4', $1066 = 'BRENT_M5', $1067 = 'BRENT_M6', $1068 = 'BRENT_M7', $1069 = 'BRENT_M8', $1070 = 'BRENT_M9', $1071 = 'BRENT_N0', $1072 = 'BRENT_N1', $1073 = 'BRENT_N2', $1074 = 'BRENT_N3', $1075 = 'BRENT_N4', $1076 = 'BRENT_N5', $1077 = 'BRENT_N6', $1078 = 'BRENT_N7', $1079 = 'BRENT_N8', $1080 = 'BRENT_N9', $1081 = 'BRENT_Q0', $1082 = 'BRENT_Q1', $1083 = 'BRENT_Q2', $1084 = 'BRENT_Q3', $1085 = 'BRENT_Q4', $1086 = 'BRENT_Q5', $1087 = 'BRENT_Q6', $1088 = 'BRENT_Q7', $1089 = 'BRENT_Q8', $1090 = 'BRENT_Q9', $1091 = 'BRENT_U0', $1092 = 'BRENT_U1', $1093 = 'BRENT_U2', $1094 = 'BRENT_U3', $1095 = 'BRENT_U4', $1096 = 'BRENT_U5', $1097 = 'BRENT_U6', $1098 = 'BRENT_U7', $1099 = 'BRENT_U8', $1100 = 'BRENT_U9', $1101 = 'BRENT_V0', $1102 = 'BRENT_V1', $1103 = 'BRENT_V2', $1104 = 'BRENT_V3', $1105 = 'BRENT_V4', $1106 = 'BRENT_V5', $1107 = 'BRENT_V6', $1108 = 'BRENT_V7', $1109 = 'BRENT_V8', $1110 = 'BRENT_V9', $1111 = 'BRENT_X0', $1112 = 'BRENT_X1', $1113 = 'BRENT_X2', $1114 = 'BRENT_X3', $1115 = 'BRENT_X4', $1116 = 'BRENT_X5', $1117 = 'BRENT_X6', $1118 = 'BRENT_X7', $1119 = 'BRENT_X8', $1120 = 'BRENT_X9', $1121 = 'BRENT_Z0', $1122 = 'BRENT_Z1', $1123 = 'BRENT_Z2', $1124 = 'BRENT_Z3', $1125 = 'BRENT_Z4', $1126 = 'BRENT_Z5', $1127 = 'BRENT_Z6', $1128 = 'BRENT_Z7', $1129 = 'BRENT_Z8', $1130 = 'BRENT_Z9', $1131 = 'Coffee_F0', $1132 = 'Coffee_F1', $1133 = 'Coffee_F2', $1134 = 'Coffee_F3', $1135 = 'Coffee_F4', $1136 = 'Coffee_F5', $1137 = 'Coffee_F6', $1138 = 'Coffee_F7', $1139 = 'Coffee_F8', $1140 = 'Coffee_F9', $1141 = 'Coffee_G0', $1142 = 'Coffee_G1', $1143 = 'Coffee_G2', $1144 = 'Coffee_G3', $1145 = 'Coffee_G4', $1146 = 'Coffee_G5', $1147 = 'Coffee_G6', $1148 = 'Coffee_G7', $1149 = 'Coffee_G8', $1150 = 'Coffee_G9', $1151 = 'Coffee_H0', $1152 = 'Coffee_H1', $1153 = 'Coffee_H2', $1154 = 'Coffee_H3', $1155 = 'Coffee_H4', $1156 = 'Coffee_H5', $1157 = 'Coffee_H6', $1158 = 'Coffee_H7', $1159 = 'Coffee_H8', $1160 = 'Coffee_H9', $1161 = 'Coffee_J0', $1162 = 'Coffee_J1', $1163 = 'Coffee_J2', $1164 = 'Coffee_J3', $1165 = 'Coffee_J4', $1166 = 'Coffee_J5', $1167 = 'Coffee_J6', $1168 = 'Coffee_J7', $1169 = 'Coffee_J8', $1170 = 'Coffee_J9', $1171 = 'Coffee_K0', $1172 = 'Coffee_K1', $1173 = 'Coffee_K2', $1174 = 'Coffee_K3', $1175 = 'Coffee_K4', $1176 = 'Coffee_K5', $1177 = 'Coffee_K6', $1178 = 'Coffee_K7', $1179 = 'Coffee_K8', $1180 = 'Coffee_K9', $1181 = 'Coffee_M0', $1182 = 'Coffee_M1', $1183 = 'Coffee_M2', $1184 = 'Coffee_M3', $1185 = 'Coffee_M4', $1186 = 'Coffee_M5', $1187 = 'Coffee_M6', $1188 = 'Coffee_M7', $1189 = 'Coffee_M8', $1190 = 'Coffee_M9', $1191 = 'Coffee_N0', $1192 = 'Coffee_N1', $1193 = 'Coffee_N2', $1194 = 'Coffee_N3', $1195 = 'Coffee_N4', $1196 = 'Coffee_N5', $1197 = 'Coffee_N6', $1198 = 'Coffee_N7', $1199 = 'Coffee_N8', $1200 = 'Coffee_N9', $1201 = 'Coffee_Q0', $1202 = 'Coffee_Q1', $1203 = 'Coffee_Q2', $1204 = 'Coffee_Q3', $1205 = 'Coffee_Q4', $1206 = 'Coffee_Q5', $1207 = 'Coffee_Q6', $1208 = 'Coffee_Q7', $1209 = 'Coffee_Q8', $1210 = 'Coffee_Q9', $1211 = 'Coffee_U0', $1212 = 'Coffee_U1', $1213 = 'Coffee_U2', $1214 = 'Coffee_U3', $1215 = 'Coffee_U4', $1216 = 'Coffee_U5', $1217 = 'Coffee_U6', $1218 = 'Coffee_U7', $1219 = 'Coffee_U8', $1220 = 'Coffee_U9', $1221 = 'Coffee_V0', $1222 = 'Coffee_V1', $1223 = 'Coffee_V2', $1224 = 'Coffee_V3', $1225 = 'Coffee_V4', $1226 = 'Coffee_V5', $1227 = 'Coffee_V6', $1228 = 'Coffee_V7', $1229 = 'Coffee_V8', $1230 = 'Coffee_V9', $1231 = 'Coffee_X0', $1232 = 'Coffee_X1', $1233 = 'Coffee_X2', $1234 = 'Coffee_X3', $1235 = 'Coffee_X4', $1236 = 'Coffee_X5', $1237 = 'Coffee_X6', $1238 = 'Coffee_X7', $1239 = 'Coffee_X8', $1240 = 'Coffee_X9', $1241 = 'Coffee_Z0', $1242 = 'Coffee_Z1', $1243 = 'Coffee_Z2', $1244 = 'Coffee_Z3', $1245 = 'Coffee_Z4', $1246 = 'Coffee_Z5', $1247 = 'Coffee_Z6', $1248 = 'Coffee_Z7', $1249 = 'Coffee_Z8', $1250 = 'Coffee_Z9', $1251 = 'Corn_F0', $1252 = 'Corn_F1', $1253 = 'Corn_F2', $1254 = 'Corn_F3', $1255 = 'Corn_F4', $1256 = 'Corn_F5', $1257 = 'Corn_F6', $1258 = 'Corn_F7', $1259 = 'Corn_F8', $1260 = 'Corn_F9', $1261 = 'Corn_G0', $1262 = 'Corn_G1', $1263 = 'Corn_G2', $1264 = 'Corn_G3', $1265 = 'Corn_G4', $1266 = 'Corn_G5', $1267 = 'Corn_G6', $1268 = 'Corn_G7', $1269 = 'Corn_G8', $1270 = 'Corn_G9', $1271 = 'Corn_H0', $1272 = 'Corn_H1', $1273 = 'Corn_H2', $1274 = 'Corn_H3', $1275 = 'Corn_H4', $1276 = 'Corn_H5', $1277 = 'Corn_H6', $1278 = 'Corn_H7', $1279 = 'Corn_H8', $1280 = 'Corn_H9', $1281 = 'Corn_J0', $1282 = 'Corn_J1', $1283 = 'Corn_J2', $1284 = 'Corn_J3', $1285 = 'Corn_J4', $1286 = 'Corn_J5', $1287 = 'Corn_J6', $1288 = 'Corn_J7', $1289 = 'Corn_J8', $1290 = 'Corn_J9', $1291 = 'Corn_K0', $1292 = 'Corn_K1', $1293 = 'Corn_K2', $1294 = 'Corn_K3', $1295 = 'Corn_K4', $1296 = 'Corn_K5', $1297 = 'Corn_K6', $1298 = 'Corn_K7', $1299 = 'Corn_K8', $1300 = 'Corn_K9', $1301 = 'Corn_M0', $1302 = 'Corn_M1', $1303 = 'Corn_M2', $1304 = 'Corn_M3', $1305 = 'Corn_M4', $1306 = 'Corn_M5', $1307 = 'Corn_M6', $1308 = 'Corn_M7', $1309 = 'Corn_M8', $1310 = 'Corn_M9', $1311 = 'Corn_N0', $1312 = 'Corn_N1', $1313 = 'Corn_N2', $1314 = 'Corn_N3', $1315 = 'Corn_N4', $1316 = 'Corn_N5', $1317 = 'Corn_N6', $1318 = 'Corn_N7', $1319 = 'Corn_N8', $1320 = 'Corn_N9', $1321 = 'Corn_Q0', $1322 = 'Corn_Q1', $1323 = 'Corn_Q2', $1324 = 'Corn_Q3', $1325 = 'Corn_Q4', $1326 = 'Corn_Q5', $1327 = 'Corn_Q6', $1328 = 'Corn_Q7', $1329 = 'Corn_Q8', $1330 = 'Corn_Q9', $1331 = 'Corn_U0', $1332 = 'Corn_U1', $1333 = 'Corn_U2', $1334 = 'Corn_U3', $1335 = 'Corn_U4', $1336 = 'Corn_U5', $1337 = 'Corn_U6', $1338 = 'Corn_U7', $1339 = 'Corn_U8', $1340 = 'Corn_U9', $1341 = 'Corn_V0', $1342 = 'Corn_V1', $1343 = 'Corn_V2', $1344 = 'Corn_V3', $1345 = 'Corn_V4', $1346 = 'Corn_V5', $1347 = 'Corn_V6', $1348 = 'Corn_V7', $1349 = 'Corn_V8', $1350 = 'Corn_V9', $1351 = 'Corn_X0', $1352 = 'Corn_X1', $1353 = 'Corn_X2', $1354 = 'Corn_X3', $1355 = 'Corn_X4', $1356 = 'Corn_X5', $1357 = 'Corn_X6', $1358 = 'Corn_X7', $1359 = 'Corn_X8', $1360 = 'Corn_X9', $1361 = 'Corn_Z0', $1362 = 'Corn_Z1', $1363 = 'Corn_Z2', $1364 = 'Corn_Z3', $1365 = 'Corn_Z4', $1366 = 'Corn_Z5', $1367 = 'Corn_Z6', $1368 = 'Corn_Z7', $1369 = 'Corn_Z8', $1370 = 'Corn_Z9', $1371 = 'Soybean_F0', $1372 = 'Soybean_F1', $1373 = 'Soybean_F2', $1374 = 'Soybean_F3', $1375 = 'Soybean_F4', $1376 = 'Soybean_F5', $1377 = 'Soybean_F6', $1378 = 'Soybean_F7', $1379 = 'Soybean_F8', $1380 = 'Soybean_F9', $1381 = 'Soybean_G0', $1382 = 'Soybean_G1', $1383 = 'Soybean_G2', $1384 = 'Soybean_G3', $1385 = 'Soybean_G4', $1386 = 'Soybean_G5', $1387 = 'Soybean_G6', $1388 = 'Soybean_G7', $1389 = 'Soybean_G8', $1390 = 'Soybean_G9', $1391 = 'Soybean_H0', $1392 = 'Soybean_H1', $1393 = 'Soybean_H2', $1394 = 'Soybean_H3', $1395 = 'Soybean_H4', $1396 = 'Soybean_H5', $1397 = 'Soybean_H6', $1398 = 'Soybean_H7', $1399 = 'Soybean_H8', $1400 = 'Soybean_H9', $1401 = 'Soybean_J0', $1402 = 'Soybean_J1', $1403 = 'Soybean_J2', $1404 = 'Soybean_J3', $1405 = 'Soybean_J4', $1406 = 'Soybean_J5', $1407 = 'Soybean_J6', $1408 = 'Soybean_J7', $1409 = 'Soybean_J8', $1410 = 'Soybean_J9', $1411 = 'Soybean_K0', $1412 = 'Soybean_K1', $1413 = 'Soybean_K2', $1414 = 'Soybean_K3', $1415 = 'Soybean_K4', $1416 = 'Soybean_K5', $1417 = 'Soybean_K6', $1418 = 'Soybean_K7', $1419 = 'Soybean_K8', $1420 = 'Soybean_K9', $1421 = 'Soybean_M0', $1422 = 'Soybean_M1', $1423 = 'Soybean_M2', $1424 = 'Soybean_M3', $1425 = 'Soybean_M4', $1426 = 'Soybean_M5', $1427 = 'Soybean_M6', $1428 = 'Soybean_M7', $1429 = 'Soybean_M8', $1430 = 'Soybean_M9', $1431 = 'Soybean_N0', $1432 = 'Soybean_N1', $1433 = 'Soybean_N2', $1434 = 'Soybean_N3', $1435 = 'Soybean_N4', $1436 = 'Soybean_N5', $1437 = 'Soybean_N6', $1438 = 'Soybean_N7', $1439 = 'Soybean_N8', $1440 = 'Soybean_N9', $1441 = 'Soybean_Q0', $1442 = 'Soybean_Q1', $1443 = 'Soybean_Q2', $1444 = 'Soybean_Q3', $1445 = 'Soybean_Q4', $1446 = 'Soybean_Q5', $1447 = 'Soybean_Q6', $1448 = 'Soybean_Q7', $1449 = 'Soybean_Q8', $1450 = 'Soybean_Q9', $1451 = 'Soybean_U0', $1452 = 'Soybean_U1', $1453 = 'Soybean_U2', $1454 = 'Soybean_U3', $1455 = 'Soybean_U4', $1456 = 'Soybean_U5', $1457 = 'Soybean_U6', $1458 = 'Soybean_U7', $1459 = 'Soybean_U8', $1460 = 'Soybean_U9', $1461 = 'Soybean_V0', $1462 = 'Soybean_V1', $1463 = 'Soybean_V2', $1464 = 'Soybean_V3', $1465 = 'Soybean_V4', $1466 = 'Soybean_V5', $1467 = 'Soybean_V6', $1468 = 'Soybean_V7', $1469 = 'Soybean_V8', $1470 = 'Soybean_V9', $1471 = 'Soybean_X0', $1472 = 'Soybean_X1', $1473 = 'Soybean_X2', $1474 = 'Soybean_X3', $1475 = 'Soybean_X4', $1476 = 'Soybean_X5', $1477 = 'Soybean_X6', $1478 = 'Soybean_X7', $1479 = 'Soybean_X8', $1480 = 'Soybean_X9', $1481 = 'Soybean_Z0', $1482 = 'Soybean_Z1', $1483 = 'Soybean_Z2', $1484 = 'Soybean_Z3', $1485 = 'Soybean_Z4', $1486 = 'Soybean_Z5', $1487 = 'Soybean_Z6', $1488 = 'Soybean_Z7', $1489 = 'Soybean_Z8', $1490 = 'Soybean_Z9', $1491 = 'Sugar_F0', $1492 = 'Sugar_F1', $1493 = 'Sugar_F2', $1494 = 'Sugar_F3', $1495 = 'Sugar_F4', $1496 = 'Sugar_F5', $1497 = 'Sugar_F6', $1498 = 'Sugar_F7', $1499 = 'Sugar_F8', $1500 = 'Sugar_F9', $1501 = 'Sugar_G0', $1502 = 'Sugar_G1', $1503 = 'Sugar_G2', $1504 = 'Sugar_G3', $1505 = 'Sugar_G4', $1506 = 'Sugar_G5', $1507 = 'Sugar_G6', $1508 = 'Sugar_G7', $1509 = 'Sugar_G8', $1510 = 'Sugar_G9', $1511 = 'Sugar_H0', $1512 = 'Sugar_H1', $1513 = 'Sugar_H2', $1514 = 'Sugar_H3', $1515 = 'Sugar_H4', $1516 = 'Sugar_H5', $1517 = 'Sugar_H6', $1518 = 'Sugar_H7', $1519 = 'Sugar_H8', $1520 = 'Sugar_H9', $1521 = 'Sugar_J0', $1522 = 'Sugar_J1', $1523 = 'Sugar_J2', $1524 = 'Sugar_J3', $1525 = 'Sugar_J4', $1526 = 'Sugar_J5', $1527 = 'Sugar_J6', $1528 = 'Sugar_J7', $1529 = 'Sugar_J8', $1530 = 'Sugar_J9', $1531 = 'Sugar_K0', $1532 = 'Sugar_K1', $1533 = 'Sugar_K2', $1534 = 'Sugar_K3', $1535 = 'Sugar_K4', $1536 = 'Sugar_K5', $1537 = 'Sugar_K6', $1538 = 'Sugar_K7', $1539 = 'Sugar_K8', $1540 = 'Sugar_K9', $1541 = 'Sugar_M0', $1542 = 'Sugar_M1', $1543 = 'Sugar_M2', $1544 = 'Sugar_M3', $1545 = 'Sugar_M4', $1546 = 'Sugar_M5', $1547 = 'Sugar_M6', $1548 = 'Sugar_M7', $1549 = 'Sugar_M8', $1550 = 'Sugar_M9', $1551 = 'Sugar_N0', $1552 = 'Sugar_N1', $1553 = 'Sugar_N2', $1554 = 'Sugar_N3', $1555 = 'Sugar_N4', $1556 = 'Sugar_N5', $1557 = 'Sugar_N6', $1558 = 'Sugar_N7', $1559 = 'Sugar_N8', $1560 = 'Sugar_N9', $1561 = 'Sugar_Q0', $1562 = 'Sugar_Q1', $1563 = 'Sugar_Q2', $1564 = 'Sugar_Q3', $1565 = 'Sugar_Q4', $1566 = 'Sugar_Q5', $1567 = 'Sugar_Q6', $1568 = 'Sugar_Q7', $1569 = 'Sugar_Q8', $1570 = 'Sugar_Q9', $1571 = 'Sugar_U0', $1572 = 'Sugar_U1', $1573 = 'Sugar_U2', $1574 = 'Sugar_U3', $1575 = 'Sugar_U4', $1576 = 'Sugar_U5', $1577 = 'Sugar_U6', $1578 = 'Sugar_U7', $1579 = 'Sugar_U8', $1580 = 'Sugar_U9', $1581 = 'Sugar_V0', $1582 = 'Sugar_V1', $1583 = 'Sugar_V2', $1584 = 'Sugar_V3', $1585 = 'Sugar_V4', $1586 = 'Sugar_V5', $1587 = 'Sugar_V6', $1588 = 'Sugar_V7', $1589 = 'Sugar_V8', $1590 = 'Sugar_V9', $1591 = 'Sugar_X0', $1592 = 'Sugar_X1', $1593 = 'Sugar_X2', $1594 = 'Sugar_X3', $1595 = 'Sugar_X4', $1596 = 'Sugar_X5', $1597 = 'Sugar_X6', $1598 = 'Sugar_X7', $1599 = 'Sugar_X8', $1600 = 'Sugar_X9', $1601 = 'Sugar_Z0', $1602 = 'Sugar_Z1', $1603 = 'Sugar_Z2', $1604 = 'Sugar_Z3', $1605 = 'Sugar_Z4', $1606 = 'Sugar_Z5', $1607 = 'Sugar_Z6', $1608 = 'Sugar_Z7', $1609 = 'Sugar_Z8', $1610 = 'Sugar_Z9', $1611 = 'Wheat_F0', $1612 = 'Wheat_F1', $1613 = 'Wheat_F2', $1614 = 'Wheat_F3', $1615 = 'Wheat_F4', $1616 = 'Wheat_F5', $1617 = 'Wheat_F6', $1618 = 'Wheat_F7', $1619 = 'Wheat_F8', $1620 = 'Wheat_F9', $1621 = 'Wheat_G0', $1622 = 'Wheat_G1', $1623 = 'Wheat_G2', $1624 = 'Wheat_G3', $1625 = 'Wheat_G4', $1626 = 'Wheat_G5', $1627 = 'Wheat_G6', $1628 = 'Wheat_G7', $1629 = 'Wheat_G8', $1630 = 'Wheat_G9', $1631 = 'Wheat_H0', $1632 = 'Wheat_H1', $1633 = 'Wheat_H2', $1634 = 'Wheat_H3', $1635 = 'Wheat_H4', $1636 = 'Wheat_H5', $1637 = 'Wheat_H6', $1638 = 'Wheat_H7', $1639 = 'Wheat_H8', $1640 = 'Wheat_H9', $1641 = 'Wheat_J0', $1642 = 'Wheat_J1', $1643 = 'Wheat_J2', $1644 = 'Wheat_J3', $1645 = 'Wheat_J4', $1646 = 'Wheat_J5', $1647 = 'Wheat_J6', $1648 = 'Wheat_J7', $1649 = 'Wheat_J8', $1650 = 'Wheat_J9', $1651 = 'Wheat_K0', $1652 = 'Wheat_K1', $1653 = 'Wheat_K2', $1654 = 'Wheat_K3', $1655 = 'Wheat_K4', $1656 = 'Wheat_K5', $1657 = 'Wheat_K6', $1658 = 'Wheat_K7', $1659 = 'Wheat_K8', $1660 = 'Wheat_K9', $1661 = 'Wheat_M0', $1662 = 'Wheat_M1', $1663 = 'Wheat_M2', $1664 = 'Wheat_M3', $1665 = 'Wheat_M4', $1666 = 'Wheat_M5', $1667 = 'Wheat_M6', $1668 = 'Wheat_M7', $1669 = 'Wheat_M8', $1670 = 'Wheat_M9', $1671 = 'Wheat_N0', $1672 = 'Wheat_N1', $1673 = 'Wheat_N2', $1674 = 'Wheat_N3', $1675 = 'Wheat_N4', $1676 = 'Wheat_N5', $1677 = 'Wheat_N6', $1678 = 'Wheat_N7', $1679 = 'Wheat_N8', $1680 = 'Wheat_N9', $1681 = 'Wheat_Q0', $1682 = 'Wheat_Q1', $1683 = 'Wheat_Q2', $1684 = 'Wheat_Q3', $1685 = 'Wheat_Q4', $1686 = 'Wheat_Q5', $1687 = 'Wheat_Q6', $1688 = 'Wheat_Q7', $1689 = 'Wheat_Q8', $1690 = 'Wheat_Q9', $1691 = 'Wheat_U0', $1692 = 'Wheat_U1', $1693 = 'Wheat_U2', $1694 = 'Wheat_U3', $1695 = 'Wheat_U4', $1696 = 'Wheat_U5', $1697 = 'Wheat_U6', $1698 = 'Wheat_U7', $1699 = 'Wheat_U8', $1700 = 'Wheat_U9', $1701 = 'Wheat_V0', $1702 = 'Wheat_V1', $1703 = 'Wheat_V2', $1704 = 'Wheat_V3', $1705 = 'Wheat_V4', $1706 = 'Wheat_V5', $1707 = 'Wheat_V6', $1708 = 'Wheat_V7', $1709 = 'Wheat_V8', $1710 = 'Wheat_V9', $1711 = 'Wheat_X0', $1712 = 'Wheat_X1', $1713 = 'Wheat_X2', $1714 = 'Wheat_X3', $1715 = 'Wheat_X4', $1716 = 'Wheat_X5', $1717 = 'Wheat_X6', $1718 = 'Wheat_X7', $1719 = 'Wheat_X8', $1720 = 'Wheat_X9', $1721 = 'Wheat_Z0', $1722 = 'Wheat_Z1', $1723 = 'Wheat_Z2', $1724 = 'Wheat_Z3', $1725 = 'Wheat_Z4', $1726 = 'Wheat_Z5', $1727 = 'Wheat_Z6', $1728 = 'Wheat_Z7', $1729 = 'Wheat_Z8', $1730 = 'Wheat_Z9', $1731 = 'WTI_F0', $1732 = 'WTI_F1', $1733 = 'WTI_F2', $1734 = 'WTI_F3', $1735 = 'WTI_F4', $1736 = 'WTI_F5', $1737 = 'WTI_F6', $1738 = 'WTI_F7', $1739 = 'WTI_F8', $1740 = 'WTI_F9', $1741 = 'WTI_G0', $1742 = 'WTI_G1', $1743 = 'WTI_G2', $1744 = 'WTI_G3', $1745 = 'WTI_G4', $1746 = 'WTI_G5', $1747 = 'WTI_G6', $1748 = 'WTI_G7', $1749 = 'WTI_G8', $1750 = 'WTI_G9', $1751 = 'WTI_H0', $1752 = 'WTI_H1', $1753 = 'WTI_H2', $1754 = 'WTI_H3', $1755 = 'WTI_H4', $1756 = 'WTI_H5', $1757 = 'WTI_H6', $1758 = 'WTI_H7', $1759 = 'WTI_H8', $1760 = 'WTI_H9', $1761 = 'WTI_J0', $1762 = 'WTI_J1', $1763 = 'WTI_J2', $1764 = 'WTI_J3', $1765 = 'WTI_J4', $1766 = 'WTI_J5', $1767 = 'WTI_J6', $1768 = 'WTI_J7', $1769 = 'WTI_J8', $1770 = 'WTI_J9', $1771 = 'WTI_K0', $1772 = 'WTI_K1', $1773 = 'WTI_K2', $1774 = 'WTI_K3', $1775 = 'WTI_K4', $1776 = 'WTI_K5', $1777 = 'WTI_K6', $1778 = 'WTI_K7', $1779 = 'WTI_K8', $1780 = 'WTI_K9', $1781 = 'WTI_M0', $1782 = 'WTI_M1', $1783 = 'WTI_M2', $1784 = 'WTI_M3', $1785 = 'WTI_M4', $1786 = 'WTI_M5', $1787 = 'WTI_M6', $1788 = 'WTI_M7', $1789 = 'WTI_M8', $1790 = 'WTI_M9', $1791 = 'WTI_N0', $1792 = 'WTI_N1', $1793 = 'WTI_N2', $1794 = 'WTI_N3', $1795 = 'WTI_N4', $1796 = 'WTI_N5', $1797 = 'WTI_N6', $1798 = 'WTI_N7', $1799 = 'WTI_N8', $1800 = 'WTI_N9', $1801 = 'WTI_Q0', $1802 = 'WTI_Q1', $1803 = 'WTI_Q2', $1804 = 'WTI_Q3', $1805 = 'WTI_Q4', $1806 = 'WTI_Q5', $1807 = 'WTI_Q6', $1808 = 'WTI_Q7', $1809 = 'WTI_Q8', $1810 = 'WTI_Q9', $1811 = 'WTI_U0', $1812 = 'WTI_U1', $1813 = 'WTI_U2', $1814 = 'WTI_U3', $1815 = 'WTI_U4', $1816 = 'WTI_U5', $1817 = 'WTI_U6', $1818 = 'WTI_U7', $1819 = 'WTI_U8', $1820 = 'WTI_U9', $1821 = 'WTI_V0', $1822 = 'WTI_V1', $1823 = 'WTI_V2', $1824 = 'WTI_V3', $1825 = 'WTI_V4', $1826 = 'WTI_V5', $1827 = 'WTI_V6', $1828 = 'WTI_V7', $1829 = 'WTI_V8', $1830 = 'WTI_V9', $1831 = 'WTI_X0', $1832 = 'WTI_X1', $1833 = 'WTI_X2', $1834 = 'WTI_X3', $1835 = 'WTI_X4', $1836 = 'WTI_X5', $1837 = 'WTI_X6', $1838 = 'WTI_X7', $1839 = 'WTI_X8', $1840 = 'WTI_X9', $1841 = 'WTI_Z0', $1842 = 'WTI_Z1', $1843 = 'WTI_Z2', $1844 = 'WTI_Z3', $1845 = 'WTI_Z4', $1846 = 'WTI_Z5', $1847 = 'WTI_Z6', $1848 = 'WTI_Z7', $1849 = 'WTI_Z8', $1850 = 'WTI_Z9'
9 332ms 49 0ms 20ms 6ms WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;Times Reported Time consuming bind #9
Day Hour Count Duration Avg duration 13 49 332ms 6ms -
WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;
Date: 2025-12-22 13:21:53 Duration: 20ms Database: postgres parameters: $1 = '489', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '', $10 = '0', $11 = '0'
-
WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;
Date: 2025-12-22 13:56:25 Duration: 19ms Database: postgres parameters: $1 = '489', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '', $10 = '0', $11 = '0'
-
WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;
Date: 2025-12-22 13:46:50 Duration: 13ms Database: postgres parameters: $1 = '489', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '', $10 = '0', $11 = '0'
10 314ms 45 4ms 11ms 6ms WITH last_candle AS ( ;Times Reported Time consuming bind #10
Day Hour Count Duration Avg duration 13 45 314ms 6ms -
WITH last_candle AS ( ;
Date: 2025-12-22 13:32:01 Duration: 11ms Database: postgres parameters: $1 = '558', $2 = '558'
-
WITH last_candle AS ( ;
Date: 2025-12-22 13:32:02 Duration: 9ms Database: postgres parameters: $1 = '667', $2 = '667'
-
WITH last_candle AS ( ;
Date: 2025-12-22 13:16:00 Duration: 9ms Database: postgres parameters: $1 = '558', $2 = '558'
11 276ms 6,107 0ms 1ms 0ms INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming bind #11
Day Hour Count Duration Avg duration 13 6,107 276ms 0ms -
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:00:41 Duration: 1ms Database: postgres parameters: $1 = '2025-12-22 12:30:00', $2 = '64.264', $3 = '64.273', $4 = '64.244', $5 = '64.271', $6 = '29', $7 = '515840233393080300', $8 = '0', $9 = '2025-12-22 13:00:41.574', $10 = '2025-12-22 13:00:41.33', $11 = '64.264', $12 = '64.273', $13 = '64.244', $14 = '64.271', $15 = '29', $16 = '0', $17 = '2025-12-22 13:00:41.574', $18 = '2025-12-22 13:00:41.33'
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:02:06 Duration: 0ms Database: postgres parameters: $1 = '2025-11-22 00:00:00', $2 = '21.535', $3 = '21.585', $4 = '21.455', $5 = '21.485', $6 = '104', $7 = '515840249466545300', $8 = '0', $9 = '2025-12-22 13:02:06.287', $10 = '2025-12-22 13:02:06.103', $11 = '21.535', $12 = '21.585', $13 = '21.455', $14 = '21.485', $15 = '104', $16 = '0', $17 = '2025-12-22 13:02:06.287', $18 = '2025-12-22 13:02:06.103'
-
INSERT INTO T15 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:01:56 Duration: 0ms Database: postgres parameters: $1 = '2025-12-22 12:45:00', $2 = '103.8405', $3 = '104.11', $4 = '103.8405', $5 = '104.06', $6 = '52', $7 = '515840247920952300', $8 = '0', $9 = '2025-12-22 13:01:56.675', $10 = '2025-12-22 13:01:56.617', $11 = '103.8405', $12 = '104.11', $13 = '103.8405', $14 = '104.06', $15 = '52', $16 = '0', $17 = '2025-12-22 13:01:56.675', $18 = '2025-12-22 13:01:56.617'
12 255ms 3,409 0ms 0ms 0ms INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming bind #12
Day Hour Count Duration Avg duration 13 3,409 255ms 0ms -
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:11:58 Duration: 0ms Database: postgres parameters: $1 = '2025-12-22 12:30:00', $2 = '8685.4', $3 = '8690.4', $4 = '8680.9', $5 = '8690', $6 = '927', $7 = '515840248015340300', $8 = '0', $9 = '2025-12-22 13:11:58.755', $10 = '2025-12-22 13:11:58.675', $11 = '8685.4', $12 = '8690.4', $13 = '8680.9', $14 = '8690', $15 = '927', $16 = '0', $17 = '2025-12-22 13:11:58.755', $18 = '2025-12-22 13:11:58.675'
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:11:16 Duration: 0ms Database: postgres parameters: $1 = '2025-12-22 12:30:00', $2 = '48164.4', $3 = '48168.25', $4 = '48155.9', $5 = '48162', $6 = '2512', $7 = '515840248000726300', $8 = '0', $9 = '2025-12-22 13:11:16.436', $10 = '2025-12-22 13:11:16.355', $11 = '48164.4', $12 = '48168.25', $13 = '48155.9', $14 = '48162', $15 = '2512', $16 = '0', $17 = '2025-12-22 13:11:16.436', $18 = '2025-12-22 13:11:16.355'
-
INSERT INTO T30 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:00:43 Duration: 0ms Database: postgres parameters: $1 = '2025-12-22 12:30:00', $2 = '1.801', $3 = '1.806', $4 = '1.799', $5 = '1.801', $6 = '108', $7 = '515840248270497300', $8 = '0', $9 = '2025-12-22 13:00:43.594', $10 = '2025-12-22 13:00:43.577', $11 = '1.801', $12 = '1.806', $13 = '1.799', $14 = '1.801', $15 = '108', $16 = '0', $17 = '2025-12-22 13:00:43.594', $18 = '2025-12-22 13:00:43.577'
13 208ms 522 0ms 1ms 0ms SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;Times Reported Time consuming bind #13
Day Hour Count Duration Avg duration 13 522 208ms 0ms -
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2025-12-22 13:13:48 Duration: 1ms Database: postgres
-
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2025-12-22 13:13:44 Duration: 1ms Database: postgres
-
SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname = 'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'p' THEN 'TEMPORARY TABLE' WHEN 'i' THEN 'TEMPORARY INDEX' WHEN 'S' THEN 'TEMPORARY SEQUENCE' WHEN 'v' THEN 'TEMPORARY VIEW' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'p' THEN 'PARTITIONED TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v' THEN 'VIEW' WHEN 'c' THEN 'TYPE' WHEN 'f' THEN 'FOREIGN TABLE' WHEN 'm' THEN 'MATERIALIZED VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS, '' as TYPE_CAT, '' as TYPE_SCHEM, '' as TYPE_NAME, '' AS SELF_REFERENCING_COL_NAME, '' AS REF_GENERATION FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid AND dc.relname = 'pg_class') LEFT JOIN pg_catalog.pg_namespace dn ON (dn.oid = dc.relnamespace AND dn.nspname = 'pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT' AND (false OR (c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema')) ORDER BY TABLE_TYPE, TABLE_SCHEM, TABLE_NAME;
Date: 2025-12-22 13:13:18 Duration: 0ms Database: postgres
14 182ms 2,194 0ms 2ms 0ms INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;Times Reported Time consuming bind #14
Day Hour Count Duration Avg duration 13 2,194 182ms 0ms -
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:00:47 Duration: 2ms Database: postgres parameters: $1 = '2025-12-22 12:00:00', $2 = '2.02187', $3 = '2.02394', $4 = '2.02184', $5 = '2.02308', $6 = '6446', $7 = '515840216972764300', $8 = '0', $9 = '2025-12-22 13:00:47.956', $10 = '2025-12-22 13:00:47.955', $11 = '2.02187', $12 = '2.02394', $13 = '2.02184', $14 = '2.02308', $15 = '6446', $16 = '0', $17 = '2025-12-22 13:00:47.956', $18 = '2025-12-22 13:00:47.955'
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:00:53 Duration: 0ms Database: postgres parameters: $1 = '2025-12-22 13:00:00', $2 = '31.9167', $3 = '31.98995', $4 = '31.842', $5 = '31.9612', $6 = '13315', $7 = '515840249404859300', $8 = '0', $9 = '2025-12-22 13:00:53.674', $10 = '2025-12-22 13:00:53.674', $11 = '31.9167', $12 = '31.98995', $13 = '31.842', $14 = '31.9612', $15 = '13315', $16 = '0', $17 = '2025-12-22 13:00:53.674', $18 = '2025-12-22 13:00:53.674'
-
INSERT INTO T60 (pricedatetime, open, high, low, close, volume, symbolid, bsf, sastdatetimewritten, sastdatetimereceived) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) ON CONFLICT (pricedatetime, symbolid) DO UPDATE SET open = $11, high = $12, low = $13, close = $14, volume = $15, bsf = $16, sastdatetimewritten = $17, sastdatetimereceived = $18;
Date: 2025-12-22 13:00:59 Duration: 0ms Database: postgres parameters: $1 = '2025-12-22 13:00:00', $2 = '0.79338', $3 = '0.79367', $4 = '0.79318', $5 = '0.793355', $6 = '1971', $7 = '515840249378432300', $8 = '0', $9 = '2025-12-22 13:00:59.671', $10 = '2025-12-22 13:00:59.67', $11 = '0.79338', $12 = '0.79367', $13 = '0.79318', $14 = '0.793355', $15 = '1971', $16 = '0', $17 = '2025-12-22 13:00:59.671', $18 = '2025-12-22 13:00:59.67'
15 74ms 83 0ms 1ms 0ms SELECT timegranularity FROM brokersymbollist bsl INNER JOIN symbols s ON bsl.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss on s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmapping bdfi ON bdfi.brokerid = $1 AND dss.datafeedinstrumentid = bdfi.datafeedinstrumentid WHERE s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND s.symbol ILIKE $2 AND bsl.brokerid = $3 AND timegranularity >= 15 ORDER BY timegranularity LIMIT 1;Times Reported Time consuming bind #15
Day Hour Count Duration Avg duration 13 83 74ms 0ms -
SELECT timegranularity FROM brokersymbollist bsl INNER JOIN symbols s ON bsl.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss on s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmapping bdfi ON bdfi.brokerid = $1 AND dss.datafeedinstrumentid = bdfi.datafeedinstrumentid WHERE s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND s.symbol ILIKE $2 AND bsl.brokerid = $3 AND timegranularity >= 15 ORDER BY timegranularity LIMIT 1;
Date: 2025-12-22 13:37:02 Duration: 1ms Database: postgres parameters: $1 = '689', $2 = 'XAUUSD', $3 = '689'
-
SELECT timegranularity FROM brokersymbollist bsl INNER JOIN symbols s ON bsl.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss on s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmapping bdfi ON bdfi.brokerid = $1 AND dss.datafeedinstrumentid = bdfi.datafeedinstrumentid WHERE s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND s.symbol ILIKE $2 AND bsl.brokerid = $3 AND timegranularity >= 15 ORDER BY timegranularity LIMIT 1;
Date: 2025-12-22 13:52:04 Duration: 1ms Database: postgres parameters: $1 = '689', $2 = 'XAUUSD', $3 = '689'
-
SELECT timegranularity FROM brokersymbollist bsl INNER JOIN symbols s ON bsl.symbolid = s.symbolid INNER JOIN downloadersymbolsettings dss on s.symbolid = dss.symbolid LEFT OUTER JOIN brokerinstrumentmapping bdfi ON bdfi.brokerid = $1 AND dss.datafeedinstrumentid = bdfi.datafeedinstrumentid WHERE s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND s.symbol ILIKE $2 AND bsl.brokerid = $3 AND timegranularity >= 15 ORDER BY timegranularity LIMIT 1;
Date: 2025-12-22 13:00:45 Duration: 1ms Database: postgres parameters: $1 = '538', $2 = 'XAUUSDc', $3 = '538'
16 50ms 9 3ms 7ms 5ms SELECT DISTINCT ON (basegroupname, symbol) ;Times Reported Time consuming bind #16
Day Hour Count Duration Avg duration 13 9 50ms 5ms -
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2025-12-22 13:36:59 Duration: 7ms Database: postgres parameters: $1 = '667', $2 = '667'
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2025-12-22 13:47:21 Duration: 6ms Database: postgres parameters: $1 = '667', $2 = '667'
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2025-12-22 13:12:10 Duration: 6ms Database: postgres parameters: $1 = '958', $2 = '958'
17 49ms 1 49ms 49ms 49ms with maxwhid as ( ;Times Reported Time consuming bind #17
Day Hour Count Duration Avg duration 13 1 49ms 49ms -
with maxwhid as ( ;
Date: 2025-12-22 13:22:14 Duration: 49ms Database: postgres parameters: $1 = '335', $2 = '621', $3 = '637', $4 = '642', $5 = '660', $6 = '666', $7 = '643', $8 = '630', $9 = '680', $10 = '641', $11 = '431', $12 = '622', $13 = '489', $14 = '529', $15 = '576', $16 = '665', $17 = '667', $18 = '558', $19 = '620', $20 = '125', $21 = '488', $22 = '567', $23 = '689', $24 = '700', $25 = '758', $26 = '763', $27 = '765', $28 = '817', $29 = '914', $30 = '972'
18 38ms 19 1ms 6ms 2ms WITH rcr_max as ( ;Times Reported Time consuming bind #18
Day Hour Count Duration Avg duration 13 19 38ms 2ms -
WITH rcr_max as ( ;
Date: 2025-12-22 13:01:57 Duration: 6ms Database: postgres parameters: $1 = '607371427662059305', $2 = '607371427662059305', $3 = '607371427662059305'
-
WITH rcr_max as ( ;
Date: 2025-12-22 13:05:53 Duration: 5ms Database: postgres parameters: $1 = '607371427662059305', $2 = '607371427662059305', $3 = '607371427662059305'
-
WITH rcr_max as ( ;
Date: 2025-12-22 13:04:57 Duration: 4ms Database: postgres parameters: $1 = '607371427662059305', $2 = '607371427662059305', $3 = '607371427662059305'
19 25ms 52 0ms 1ms 0ms WITH tr_max AS ( ;Times Reported Time consuming bind #19
Day Hour Count Duration Avg duration 13 52 25ms 0ms -
WITH tr_max AS ( ;
Date: 2025-12-22 13:13:43 Duration: 1ms Database: postgres parameters: $1 = '515840245854602300', $2 = '515840245854602300', $3 = '515840245854602300', $4 = '1', $5 = '1', $6 = '720', $7 = 't', $8 = '720'
-
WITH tr_max AS ( ;
Date: 2025-12-22 13:13:30 Duration: 1ms Database: postgres parameters: $1 = '500991628265645200', $2 = '500991628265645200', $3 = '500991628265645200', $4 = '1', $5 = '1', $6 = '660', $7 = 't', $8 = '660'
-
WITH tr_max AS ( ;
Date: 2025-12-22 13:13:44 Duration: 1ms Database: postgres parameters: $1 = '515840243215255300', $2 = '515840243215255300', $3 = '515840243215255300', $4 = '1', $5 = '1', $6 = '720', $7 = 't', $8 = '720'
20 23ms 6 3ms 4ms 3ms with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;Times Reported Time consuming bind #20
Day Hour Count Duration Avg duration 13 6 23ms 3ms -
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2025-12-22 13:30:03 Duration: 4ms Database: postgres
-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2025-12-22 13:20:02 Duration: 3ms Database: postgres
-
with rankedmt4 as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors ), last_feed_entry as ( select * from rankedmt4 where r = 1 ), ok_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where status = 'OK' ), earliest_entry_after_ok as ( select m.datafeedname, min(m.eventtimestamp) as eventtimestamp from mt4datafeederrors m left outer join ( select datafeedname, eventtimestamp from ok_entries where r = 1) oo on m.datafeedname = oo.datafeedname where m.eventtimestamp > coalesce(oo.eventtimestamp, '1900-01-01'::timestamp without time zone) group by m.datafeedname ), notified_entries as ( select *, row_number() over (partition by datafeedname order by eventtimestamp desc) r from mt4datafeederrors where notified is not null and notified <> '' ), broker as ( select *, row_number() over (partition by feedname order by brokerid) r from ( select distinct b.brokerid, b.name as brokername, dss.classname as feedname from downloadersymbolsettings dss inner join brokersymbollist bsl on dss.symbolid = bsl.symbolid inner join broker b on bsl.brokerid = b.brokerid where dss.enabled = 1) a ) select last.id, last.datafeedname, last.eventtimestamp, last.status, last.errordescription, last.serveraddress, last.username, note.notified, note.eventtimestamp, broker.brokername from last_feed_entry last inner join earliest_entry_after_ok after_ok on last.datafeedname = after_ok.datafeedname inner join broker on last.datafeedname = broker.feedname left outer join ok_entries ok on ok.datafeedname = last.datafeedname left outer join notified_entries note on note.datafeedname = last.datafeedname and note.r = 1 where (ok.r is null or ok.r = 1) and last.datafeedname not in ( select distinct datafeedname from last_feed_entry where status = 'OK') and extract(epoch from (last.eventtimestamp - after_ok.eventtimestamp)) > 60 * 60 and last.eventtimestamp > current_timestamp - interval '1 day' and (note.eventtimestamp is null or note.eventtimestamp < current_timestamp - interval '10 hours') and last.eventtimestamp > current_timestamp - interval '1 hour' and broker.r = 1;
Date: 2025-12-22 13:40:02 Duration: 3ms Database: postgres
-
Events
Log levels
Key values
- 381,031 Log entries
Events distribution
Key values
- 0 PANIC entries
- 0 FATAL entries
- 0 ERROR entries
- 0 WARNING entries
Errors per 5 minutes
NO DATASET
Most Frequent Errors/Events
Key values
- 0 Max number of times the same event was reported
- 0 Total events found
Rank Times reported Error NO DATASET