-
Global information
- Generated on Tue Jan 20 12:00:24 2026
- Log file: /home/postgres/pg_data/data/pg_log/postgresql-2026-01-20_130000.log, ..., /home/postgres/pg_data/data/pg_log/postgresql-2026-01-20_134505.log
- Parsed 4,039,366 log entries in 1m22s
- Log start from 2026-01-20 13:00:00 to 2026-01-20 14:00:00
-
Overview
Global Stats
- 257 Number of unique normalized queries
- 362,709 Number of queries
- 2h15m41s Total query duration
- 2026-01-20 13:00:00 First query
- 2026-01-20 14:00:00 Last query
- 7,095 queries/s at 2026-01-20 13:15:04 Query peak
- 2h15m41s Total query duration
- 33s83ms Prepare/parse total duration
- 1m58s Bind total duration
- 2h13m10s Execute total duration
- 34 Number of events
- 1 Number of unique normalized events
- 34 Max number of times the same event was reported
- 0 Number of cancellation
- 40 Total number of automatic vacuums
- 53 Total number of automatic analyzes
- 712 Number temporary file
- 168.21 MiB Max size of temporary file
- 7.78 MiB Average size of temporary file
- 11,997 Total number of sessions
- 16 sessions at 2026-01-20 13:32:02 Session peak
- 2d12h57m50s Total duration of sessions
- 18s293ms Average duration of sessions
- 30 Average queries per session
- 678ms Average queries duration per session
- 17s615ms Average idle time per session
- 11,997 Total number of connections
- 98 connections/s at 2026-01-20 13:48:35 Connection peak
- 3 Total number of databases
SQL Traffic
Key values
- 7,095 queries/s Query Peak
- 2026-01-20 13:15:04 Date
SELECT Traffic
Key values
- 3,364 queries/s Query Peak
- 2026-01-20 13:15:04 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 196 queries/s Query Peak
- 2026-01-20 13:00:52 Date
Queries duration
Key values
- 2h15m41s 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) Jan 20 13 362,707 0ms 45s720ms 22ms 4m21s 4m38s 5m11s 14 2 0ms 0ms 0ms 0ms 0ms 0ms Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jan 20 13 117,027 26 0ms 0ms 0ms 0ms 14 2 0 0ms 0ms 0ms 0ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jan 20 13 28,014 2,080 16 96 0ms 0ms 0ms 0ms 14 0 0 0 0 0ms 0ms 0ms 0ms Day Hour Prepare Bind Bind/Prepare Percentage of prepare Jan 20 13 74,540 154,471 2.07 46.89% 14 0 2 2.00 0.00% Day Hour Count Average / Second Jan 20 13 11,997 3.33/s 14 0 0.00/s Day Hour Count Average Duration Average idle time Jan 20 13 11,997 18s293ms 17s627ms 14 0 0ms 0ms -
Connections
Established Connections
Key values
- 98 connections Connection Peak
- 2026-01-20 13:48:35 Date
Connections per database
Key values
- acaweb_fx Main Database
- 11,997 connections Total
Connections per user
Key values
- postgres Main User
- 11,997 connections Total
Connections per host
Key values
- 192.168.1.15 Main host with 7546 connections
- 11,997 Total connections
Host Count 127.0.0.1 116 192.168.0.114 8 192.168.0.216 101 192.168.0.236 9 192.168.0.74 1,379 192.168.1.145 237 192.168.1.15 7,546 192.168.1.154 10 192.168.1.20 261 192.168.1.231 20 192.168.1.239 2 192.168.1.90 76 192.168.2.126 62 192.168.2.182 12 192.168.2.82 48 192.168.3.199 36 192.168.4.142 1,338 192.168.4.150 10 192.168.4.218 4 192.168.4.231 1 192.168.4.238 12 192.168.4.33 98 192.168.4.73 7 192.168.4.98 330 [local] 274 -
Sessions
Simultaneous sessions
Key values
- 16 sessions Session Peak
- 2026-01-20 13:32:02 Date
Histogram of session times
Key values
- 10,630 0-500ms duration
Sessions per database
Key values
- acaweb_fx Main Database
- 11,997 sessions Total
Sessions per user
Key values
- postgres Main User
- 11,997 sessions Total
Sessions per host
Key values
- 192.168.1.15 Main Host
- 11,997 sessions Total
Host Count Total Duration Average Duration 127.0.0.1 116 15s18ms 129ms 192.168.0.114 8 40m 5m 192.168.0.216 101 1m2s 616ms 192.168.0.236 9 1h4m3s 7m7s 192.168.0.74 1,379 6h6m43s 15s956ms 192.168.1.145 237 3h13m58s 49s106ms 192.168.1.15 7,546 3h43s 1s437ms 192.168.1.154 10 2h1m2s 12m6s 192.168.1.20 261 14h20m1s 3m17s 192.168.1.231 20 9h52m45s 29m38s 192.168.1.239 2 12ms 6ms 192.168.1.90 76 36s173ms 475ms 192.168.2.126 62 6s562ms 105ms 192.168.2.182 12 1s41ms 86ms 192.168.2.82 48 28s320ms 590ms 192.168.3.199 36 1s430ms 39ms 192.168.4.142 1,338 10m59s 493ms 192.168.4.150 10 20h12m19s 2h1m13s 192.168.4.218 4 37ms 9ms 192.168.4.231 1 220ms 220ms 192.168.4.238 12 15s764ms 1s313ms 192.168.4.33 98 5m42s 3s494ms 192.168.4.73 7 3m29s 29s905ms 192.168.4.98 330 14s810ms 44ms [local] 274 2m57s 647ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 13,106 buffers Checkpoint Peak
- 2026-01-20 13:06:27 Date
- 209.963 seconds Highest write time
- 0.013 seconds Sync time
Checkpoints Wal files
Key values
- 6 files Wal files usage Peak
- 2026-01-20 13:06:27 Date
Checkpoints distance
Key values
- 181.25 Mo Distance Peak
- 2026-01-20 13:06:27 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Jan 20 13 46,521 1,836.947s 0.067s 1,837.334s 14 0 0s 0s 0s Day Hour Added Removed Recycled Synced files Longest sync Average sync Jan 20 13 0 0 24 1,961 0.008s 0s 14 0 0 0 0 0s 0s Day Hour Count Avg time (sec) Jan 20 13 0 0s 14 0 0s Day Hour Mean distance Mean estimate Jan 20 13 32,196.50 kB 66,923.83 kB 14 0.00 kB 0.00 kB -
Temporary Files
Size of temporary files
Key values
- 184.74 MiB Temp Files size Peak
- 2026-01-20 13:20:07 Date
Number of temporary files
Key values
- 30 per second Temp Files Peak
- 2026-01-20 13:02:12 Date
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Jan 20 13 712 5.41 GiB 7.78 MiB 14 0 0 0 Queries generating the most temporary files (N)
Rank Count Total size Min size Max size Avg size Query 1 45 280.76 MiB 3.33 MiB 9.30 MiB 6.24 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: 2026-01-20 13:45:41 Duration: 0ms
2 36 126.74 MiB 3.28 MiB 4.06 MiB 3.52 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: 2026-01-20 13:46:05 Duration: 0ms
3 30 1.66 GiB 3.83 MiB 168.21 MiB 56.53 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: 2026-01-20 13:50:07 Duration: 0ms
4 16 618.50 MiB 38.66 MiB 38.66 MiB 38.66 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: 2026-01-20 13:46:13 Duration: 0ms
5 16 1.11 GiB 70.98 MiB 70.99 MiB 70.99 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: 2026-01-20 13:46:15 Duration: 0ms
6 9 30.73 MiB 3.40 MiB 3.42 MiB 3.41 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: 2026-01-20 13:49:17 Duration: 0ms
7 8 1005.91 MiB 125.73 MiB 125.75 MiB 125.74 MiB select updateresultsmaterializedview ();-
select updateresultsmaterializedview ();
Date: 2026-01-20 13:47:15 Duration: 0ms
8 4 343.96 MiB 85.93 MiB 86.09 MiB 85.99 MiB select updateageforrelevantresults ();-
select updateageforrelevantresults ();
Date: 2026-01-20 13:47:04 Duration: 0ms
9 1 3.42 MiB 3.42 MiB 3.42 MiB 3.42 MiB select row_number() over (partition by symbol, a.basegroupname order by resultuid desc) as rn, * from ( select whp.resultuid, g.basegroupname, whp.type, whid, whp.exchange, coalesce(bim.code, whp.symbol) as symbol, patternname, whp.direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime as patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, rar.age, dftt.timezone, dftt.absolutetimezoneoffset as timezoneoffset, ar.patternlengthbars as length, ar.patternquality as quality, breakout, cps.pip from whatshot_probability whp inner join autochartist_results ar on whp.resultuid = ar.resultuid inner join relevance_autochartist_results rar on ar.resultuid = rar.resultuid inner join downloadersymbolsettings dss on ar.symbolid = dss.symbolid inner join datafeedstimetable dftt on dss.classname = dftt.classname inner join symbols s on whp.symbolid = s.symbolid inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join whatshot_groups whg on whg.groupid = g.groupid inner join brokersymbollist bsl on bsl.symbolid = sg.symbolid and bsl.brokerid = ? inner join brokergroups bg on bg.groupid = sg.groupid and 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 whid = ( select max(whid) from whatshot where brokerid = ?) and interval >= ? and percent >= ? and whp.type = ? and rar.relevant = ? and rar.age <= ? and s.nonliquid = ? and s.deleted = ? and dss.enabled = ? and ar.patternlengthbars < ? and dftt.dayofweek = ?) a), wh_patitioned2 as ( select row_number() over (partition by symbol, a2.basegroupname order by resultuid desc) as rn, * from ( select whp.resultuid, g.basegroupname, whp.type, whid, whp.exchange, coalesce(bim.code, whp.symbol) as symbol, patternname, whp.direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime as patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, rar.age, dftt.timezone, dftt.absolutetimezoneoffset, ar.patternlengthbars as length, ar.qtytp as quality, ar.breakout, cps.pip from whatshot_probability whp inner join keylevels_results ar on whp.resultuid = ar.resultuid inner join relevance_keylevels_results rar on ar.resultuid = rar.resultuid inner join downloadersymbolsettings dss on ar.symbolid = dss.symbolid inner join datafeedstimetable dftt on dss.classname = dftt.classname inner join symbols s on whp.symbolid = s.symbolid inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join whatshot_groups whg on whg.groupid = g.groupid inner join brokersymbollist bsl on bsl.symbolid = sg.symbolid and bsl.brokerid = ? inner join brokergroups bg on bg.groupid = sg.groupid and 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 whid = ( select max(whid) from whatshot where brokerid = ?) and interval >= ? and percent >= ? and whp.type = ? and rar.relevant = ? and rar.age <= ? and s.nonliquid = ? and s.deleted = ? and dss.enabled = ? and ar.patternlengthbars < ? and dftt.dayofweek = ?) a2), wh_patitioned3 as ( select row_number() over (partition by symbol, a3.basegroupname order by resultuid desc) as rn, * from ( select whp.resultuid, g.basegroupname, whp.type, whid, whp.exchange, coalesce(bim.code, whp.symbol) as symbol, patternname, whp.direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime as patternendtime, patternprice as predictionpricefrom, patternprice as predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, rar.age, dftt.timezone, dftt.absolutetimezoneoffset, ar.patternlengthbars as length, ar.qtytp as quality, ar.breakout, cps.pip from whatshot_probability whp inner join keylevels_results ar on whp.resultuid = ar.resultuid inner join relevance_keylevels_results rar on ar.resultuid = rar.resultuid inner join downloadersymbolsettings dss on ar.symbolid = dss.symbolid inner join datafeedstimetable dftt on dss.classname = dftt.classname inner join symbols s on whp.symbolid = s.symbolid inner join symbolgroup sg on s.symbolid = sg.symbolid inner join groups g on sg.groupid = g.groupid inner join whatshot_groups whg on whg.groupid = g.groupid inner join brokersymbollist bsl on bsl.symbolid = sg.symbolid and bsl.brokerid = ? inner join brokergroups bg on bg.groupid = sg.groupid and 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 whid = ( select max(whid) from whatshot where brokerid = ?) and interval >= ? and percent >= ? and whp.type = ? and rar.relevant = ? and rar.age <= ? and s.nonliquid = ? and s.deleted = ? and dss.enabled = ? and ar.patternlengthbars < ? and dftt.dayofweek = ?) a3 ) select resultuid, basegroupname, type, whid, exchange, symbol, patternname, direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, age, timezone, timezoneoffset, length, quality, breakout, pip from wh_patitioned where rn = ? union all select resultuid, basegroupname, type, whid, exchange, symbol, patternname, direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, age, timezone, absolutetimezoneoffset, length, quality, breakout, pip from wh_patitioned2 where rn = ? union all select resultuid, basegroupname, type, whid, exchange, symbol, patternname, direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, age, timezone, absolutetimezoneoffset, length, quality, breakout, pip from wh_patitioned3 where rn = ?;-
select row_number() over (partition by symbol, a.basegroupname order by resultuid desc) as rn, * from ( SELECT whp.resultuid, g.basegroupname, whp.type, whid, whp.exchange, coalesce(bim.code, whp.symbol) as symbol, patternname, whp.direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime as patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, rar.age, dftt.timezone, dftt.absolutetimezoneoffset as timezoneoffset, ar.patternlengthbars as length, ar.patternquality as quality, breakout, cps.pip FROM whatshot_probability whp INNER JOIN autochartist_results ar ON whp.resultuid = ar.resultuid INNER JOIN relevance_autochartist_results rar ON ar.resultuid = rar.resultuid INNER JOIN downloadersymbolsettings dss ON ar.symbolid = dss.symbolid INNER JOIN datafeedstimetable dftt ON dss.classname = dftt.classname INNER JOIN symbols s on whp.symbolid = s.symbolid INNER JOIN symbolgroup sg on s.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN whatshot_groups whg ON whg.groupid = g.groupid INNER JOIN brokersymbollist bsl ON bsl.symbolid = sg.symbolid AND bsl.brokerid = $1 INNER JOIN brokergroups bg ON bg.groupid = sg.groupid AND bg.brokerid = $2 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 whid = ( SELECT MAX(whid) FROM whatshot WHERE brokerid = $3) AND interval >= 60 AND percent >= 60 AND whp.type = 'cp' AND rar.relevant = 1 AND rar.age <= 10 and s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND ar.patternlengthbars < 400 and dftt.dayofweek = 3) a), wh_patitioned2 as ( select row_number() over (partition by symbol, a2.basegroupname order by resultuid desc) as rn, * from ( SELECT whp.resultuid, g.basegroupname, whp.type, whid, whp.exchange, coalesce(bim.code, whp.symbol) as symbol, patternname, whp.direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime as patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, rar.age, dftt.timezone, dftt.absolutetimezoneoffset, ar.patternlengthbars as length, ar.qtytp as quality, ar.breakout, cps.pip FROM whatshot_probability whp INNER JOIN keylevels_results ar ON whp.resultuid = ar.resultuid INNER JOIN relevance_keylevels_results rar ON ar.resultuid = rar.resultuid INNER JOIN downloadersymbolsettings dss ON ar.symbolid = dss.symbolid INNER JOIN datafeedstimetable dftt ON dss.classname = dftt.classname INNER JOIN symbols s on whp.symbolid = s.symbolid INNER JOIN symbolgroup sg on s.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN whatshot_groups whg ON whg.groupid = g.groupid INNER JOIN brokersymbollist bsl ON bsl.symbolid = sg.symbolid AND bsl.brokerid = $4 INNER JOIN brokergroups bg ON bg.groupid = sg.groupid AND bg.brokerid = $5 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 whid = ( SELECT MAX(whid) FROM whatshot WHERE brokerid = $6) AND interval >= 60 AND percent >= 60 AND whp.type = 'kl' AND rar.relevant = 1 AND rar.age <= 10 and s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND ar.patternlengthbars < 400 and dftt.dayofweek = 3) a2), wh_patitioned3 as ( select row_number() over (partition by symbol, a3.basegroupname order by resultuid desc) as rn, * from ( SELECT whp.resultuid, g.basegroupname, whp.type, whid, whp.exchange, coalesce(bim.code, whp.symbol) as symbol, patternname, whp.direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime as patternendtime, patternprice as predictionpricefrom, patternprice as predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, rar.age, dftt.timezone, dftt.absolutetimezoneoffset, ar.patternlengthbars as length, ar.qtytp as quality, ar.breakout, cps.pip FROM whatshot_probability whp INNER JOIN keylevels_results ar ON whp.resultuid = ar.resultuid INNER JOIN relevance_keylevels_results rar ON ar.resultuid = rar.resultuid INNER JOIN downloadersymbolsettings dss ON ar.symbolid = dss.symbolid INNER JOIN datafeedstimetable dftt ON dss.classname = dftt.classname INNER JOIN symbols s on whp.symbolid = s.symbolid INNER JOIN symbolgroup sg on s.symbolid = sg.symbolid INNER JOIN groups g ON sg.groupid = g.groupid INNER JOIN whatshot_groups whg ON whg.groupid = g.groupid INNER JOIN brokersymbollist bsl ON bsl.symbolid = sg.symbolid AND bsl.brokerid = $7 INNER JOIN brokergroups bg ON bg.groupid = sg.groupid AND bg.brokerid = $8 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 whid = ( SELECT MAX(whid) FROM whatshot WHERE brokerid = $9) AND interval >= 60 AND percent >= 60 AND whp.type = 'ekl' AND rar.relevant = 1 AND rar.age <= 10 and s.nonliquid = 0 and s.deleted = 0 and dss.enabled = 1 AND ar.patternlengthbars < 400 and dftt.dayofweek = 3) a3 ) select resultuid, basegroupname, type, whid, exchange, symbol, patternname, direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, age, timezone, timezoneoffset, length, quality, breakout, pip from wh_patitioned where rn = 1 UNION ALL select resultuid, basegroupname, type, whid, exchange, symbol, patternname, direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, age, timezone, absolutetimezoneoffset, length, quality, breakout, pip from wh_patitioned2 where rn = 1 UNION ALL select resultuid, basegroupname, type, whid, exchange, symbol, patternname, direction, hod, interval, symbol_percent, pattern_percent, hod_percent, percent, new, patternendtime, predictionpricefrom, predictionpriceto, pattern_correct, pattern_total, hod_correct, hod_total, symbol_correct, symbol_total, age, timezone, absolutetimezoneoffset, length, quality, breakout, pip from wh_patitioned3 where rn = 1;
Date: 2026-01-20 13:03:59 Duration: 0ms
Queries generating the largest temporary files
Rank Size Query 1 168.21 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: 2026-01-20 13:00:06 ]
2 163.08 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: 2026-01-20 13:40:06 ]
3 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: 2026-01-20 13:30:08 ]
4 125.75 MiB select updateresultsmaterializedview ();[ Date: 2026-01-20 13:32:17 ]
5 125.74 MiB select updateresultsmaterializedview ();[ Date: 2026-01-20 13:02:20 ]
6 125.74 MiB select updateresultsmaterializedview ();[ Date: 2026-01-20 13:47:15 ]
7 125.74 MiB select updateresultsmaterializedview ();[ Date: 2026-01-20 13:17:19 ]
8 125.74 MiB select updateresultsmaterializedview ();[ Date: 2026-01-20 13:05:32 ]
9 125.74 MiB select updateresultsmaterializedview ();[ Date: 2026-01-20 13:20:32 ]
10 125.73 MiB select updateresultsmaterializedview ();[ Date: 2026-01-20 13:50:32 ]
11 125.73 MiB select updateresultsmaterializedview ();[ Date: 2026-01-20 13:35:32 ]
12 94.22 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: 2026-01-20 13:10:04 ]
13 92.05 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: 2026-01-20 13:50:05 ]
14 86.45 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: 2026-01-20 13:10:07 ]
15 86.09 MiB select updateageforrelevantresults ();[ Date: 2026-01-20 13:02:04 ]
16 85.99 MiB select updateageforrelevantresults ();[ Date: 2026-01-20 13:32:06 ]
17 85.95 MiB select updateageforrelevantresults ();[ Date: 2026-01-20 13:47:04 ]
18 85.93 MiB select updateageforrelevantresults ();[ Date: 2026-01-20 13:17:05 ]
19 82.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: 2026-01-20 13:20:04 ]
20 77.57 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: 2026-01-20 13:20:05 ]
-
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)
- 53 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_autochartist_results 4 acaweb_fx.public.relevance_fibonacci_results 4 acaweb_fx.pg_catalog.pg_type 3 acaweb_fx.public.autochartist_symbolupdates 2 acaweb_fx.public.latest_t15_candle_view 2 acaweb_fx.pg_catalog.pg_index 1 acaweb_fx.public.solr_imports 1 acaweb_fx.public.relevance_consecutivecandles_results 1 acaweb_fx.pg_catalog.pg_depend 1 acaweb_fx.public.latest_candle_datetime_per_receng 1 Total 53 Vacuums per table
Key values
- public.solr_relevance_old (16) Main table vacuumed on database acaweb_fx
- 40 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 12,874 0 51 0 0 9,008 16 1,760,623 acaweb_fx.public.datafeeds_latestrun 5 0 589 0 16 0 0 73 12 80,017 acaweb_fx.pg_toast.pg_toast_2619 2 2 307 0 63 0 0 218 59 246,575 acaweb_fx.pg_catalog.pg_attribute 2 2 1,615 0 331 0 134 722 272 1,658,400 acaweb_fx.public.relevance_keylevels_results 2 2 7,858 0 446 4 145 2,035 1,496 4,467,999 acaweb_fx.pg_catalog.pg_class 2 2 929 0 92 0 0 298 86 474,946 acaweb_fx.public.relevance_autochartist_results 2 2 6,821 0 174 2 485 1,258 923 2,236,729 acaweb_fx.public.relevance_fibonacci_results 2 2 2,422 0 56 1 107 315 194 548,242 acaweb_fx.pg_catalog.pg_index 1 1 107 0 14 0 0 26 11 83,210 acaweb_fx.pg_catalog.pg_type 1 1 135 0 33 0 0 54 23 134,299 acaweb_fx.public.autochartist_symbolupdates 1 1 25,863 0 956 6 37,801 8,426 859 897,031 acaweb_fx.public.solr_imports 1 1 49 0 2 0 0 6 1 7,706 acaweb_fx.pg_catalog.pg_statistic 1 1 1,006 0 131 0 582 428 117 446,005 acaweb_fx.pg_catalog.pg_depend 1 1 364 0 82 0 59 166 70 368,782 acaweb_fx.public.latest_t15_candle_view 1 1 93 0 1 0 0 6 1 9,049 Total 40 35 61,032 44,831 2,448 13 39,313 23,039 4,140 13,419,613 Tuples removed per table
Key values
- public.solr_relevance_old (67046) Main table with removed tuples on database acaweb_fx
- 80433 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain acaweb_fx.public.solr_relevance_old 16 16 67,046 92,735 0 0 3,145 acaweb_fx.public.autochartist_symbolupdates 1 1 6,427 52,304 209 0 40,691 acaweb_fx.pg_catalog.pg_attribute 2 2 2,445 21,834 274 0 520 acaweb_fx.public.relevance_keylevels_results 2 2 1,736 23,528 0 0 558 acaweb_fx.public.relevance_autochartist_results 2 2 687 14,770 0 0 760 acaweb_fx.pg_catalog.pg_statistic 1 1 567 3,684 0 0 1,194 acaweb_fx.pg_catalog.pg_depend 1 1 428 14,658 8 0 135 acaweb_fx.public.datafeeds_latestrun 5 0 295 81 11 0 80 acaweb_fx.pg_catalog.pg_class 2 2 281 3,309 11 0 300 acaweb_fx.pg_toast.pg_toast_2619 2 2 150 342 2 0 101 acaweb_fx.public.relevance_fibonacci_results 2 2 131 2,278 0 0 204 acaweb_fx.pg_catalog.pg_type 1 1 130 1,449 3 0 39 acaweb_fx.public.latest_t15_candle_view 1 1 60 14 0 0 1 acaweb_fx.public.solr_imports 1 1 50 3 2 0 2 acaweb_fx.pg_catalog.pg_index 1 1 0 815 2 0 22 Total 40 35 80,433 231,804 522 0 47,752 Pages removed per table
Key values
- unknown (0) Main table with removed pages on database unknown
- 0 pages Total removed
Pages removed per tables
NO DATASET
Table Number of vacuums Index scans Tuples removed Pages removed acaweb_fx.pg_toast.pg_toast_2619 2 2 150 0 acaweb_fx.pg_catalog.pg_index 1 1 0 0 acaweb_fx.pg_catalog.pg_type 1 1 130 0 acaweb_fx.public.autochartist_symbolupdates 1 1 6427 0 acaweb_fx.public.datafeeds_latestrun 5 0 295 0 acaweb_fx.public.solr_imports 1 1 50 0 acaweb_fx.pg_catalog.pg_statistic 1 1 567 0 acaweb_fx.pg_catalog.pg_attribute 2 2 2445 0 acaweb_fx.pg_catalog.pg_depend 1 1 428 0 acaweb_fx.public.latest_t15_candle_view 1 1 60 0 acaweb_fx.public.relevance_keylevels_results 2 2 1736 0 acaweb_fx.pg_catalog.pg_class 2 2 281 0 acaweb_fx.public.solr_relevance_old 16 16 67046 0 acaweb_fx.public.relevance_autochartist_results 2 2 687 0 acaweb_fx.public.relevance_fibonacci_results 2 2 131 0 Total 40 35 80,433 0 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Jan 20 13 40 53 14 0 0 - 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
- 117,029 Total read queries
- 41,933 Total write queries
Queries by database
Key values
- unknown Main database
- 361,684 Requests
- 2h13m10s (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 203 0ms select 102 0ms tcl 332 0ms update 41 0ms socialmedia Total 104 0ms select 98 0ms tcl 6 0ms unknown Total 361,684 2h13m10s copy from 16 0ms cte 10,858 0ms insert 28,014 0ms others 22,207 0ms select 116,829 0ms tcl 384 0ms update 2,039 0ms Queries by user
Key values
- unknown Main user
- 361,684 Requests
User Request type Count Duration postgres Total 1,025 0ms copy from 80 0ms copy to 26 0ms cte 105 0ms ddl 16 0ms delete 16 0ms others 203 0ms select 200 0ms tcl 338 0ms update 41 0ms unknown Total 361,684 2h13m10s copy from 16 0ms cte 10,858 0ms insert 28,014 0ms others 22,207 0ms select 116,829 0ms tcl 384 0ms update 2,039 0ms Duration by user
Key values
- 2h13m10s (unknown) Main time consuming user
User Request type Count Duration postgres Total 1,025 0ms copy from 80 0ms copy to 26 0ms cte 105 0ms ddl 16 0ms delete 16 0ms others 203 0ms select 200 0ms tcl 338 0ms update 41 0ms unknown Total 361,684 2h13m10s copy from 16 0ms cte 10,858 0ms insert 28,014 0ms others 22,207 0ms select 116,829 0ms tcl 384 0ms update 2,039 0ms Queries by host
Key values
- unknown Main host
- 362,709 Requests
- 2h13m10s (unknown)
- Main time consuming host
Queries by application
Key values
- unknown Main application
- 362,319 Requests
- 2h13m10s (unknown)
- Main time consuming application
Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2026-01-20 13:52:16 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 117,133 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 1 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 Jan 20 13 1 0ms 0ms 2 0ms 49 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 Jan 20 13 49 0ms 0ms 3 0ms 176 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 #3
Day Hour Count Duration Avg duration Jan 20 13 176 0ms 0ms 4 0ms 2,165 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 #4
Day Hour Count Duration Avg duration Jan 20 13 2,165 0ms 0ms 5 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 #5
Day Hour Count Duration Avg duration Jan 20 13 48 0ms 0ms 6 0ms 4 0ms 0ms 0ms select updaterelevantforrelevantresults ();Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jan 20 13 4 0ms 0ms 7 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 #7
Day Hour Count Duration Avg duration Jan 20 13 18 0ms 0ms 8 0ms 361 0ms 0ms 0ms commit;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Jan 20 13 361 0ms 0ms 9 0ms 335 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 #9
Day Hour Count Duration Avg duration Jan 20 13 335 0ms 0ms 10 0ms 240 0ms 0ms 0ms select count(*), sum(size), extract(epoch from now() - min(modification)) from pg_ls_waldir ();Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jan 20 13 240 0ms 0ms 11 0ms 240 0ms 0ms 0ms select system_identifier from pg_control_system ();Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jan 20 13 240 0ms 0ms 12 0ms 5 0ms 0ms 0ms select groupid, exchange, groupname, symbol, longname from prfsymboltree where brokerid = ? order by groupname, symbol;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jan 20 13 5 0ms 0ms 13 0ms 1 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 #13
Day Hour Count Duration Avg duration Jan 20 13 1 0ms 0ms 14 0ms 10 0ms 0ms 0ms select updatedatafeedslatestrun (?);Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jan 20 13 10 0ms 0ms 15 0ms 1 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 #15
Day Hour Count Duration Avg duration Jan 20 13 1 0ms 0ms 16 0ms 4 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 #16
Day Hour Count Duration Avg duration Jan 20 13 4 0ms 0ms 17 0ms 4 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; 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 #17
Day Hour Count Duration Avg duration Jan 20 13 4 0ms 0ms 18 0ms 311 0ms 0ms 0ms with rar_max as ( 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;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Jan 20 13 311 0ms 0ms 19 0ms 8 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 #19
Day Hour Count Duration Avg duration Jan 20 13 8 0ms 0ms 20 0ms 24 0ms 0ms 0ms select distinct classname, to_char(created_datetime, ?), to_char(cleared_datetime, ?), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = ? or cleared_datetime > current_timestamp - interval ?) order by created_datetime desc;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Jan 20 13 24 0ms 0ms Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 52,190 0ms 0ms 0ms 0ms select ?;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Jan 20 13 52,188 0ms 0ms 14 2 0ms 0ms 2 37,318 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 Jan 20 13 37,318 0ms 0ms 3 10,884 0ms 0ms 0ms 0ms set extra_float_digits = ?;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Jan 20 13 10,884 0ms 0ms 4 10,839 0ms 0ms 0ms 0ms set application_name = ?;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jan 20 13 10,839 0ms 0ms 5 10,762 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 #5
Day Hour Count Duration Avg duration Jan 20 13 10,762 0ms 0ms 6 7,876 0ms 0ms 0ms 0ms insert into executionlogs (executionid, status, message, details, detailtype) values (null, ?, ?, null, null);Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jan 20 13 7,876 0ms 0ms 7 6,055 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 #7
Day Hour Count Duration Avg duration Jan 20 13 6,055 0ms 0ms 8 4,135 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 #8
Day Hour Count Duration Avg duration Jan 20 13 4,135 0ms 0ms 9 3,703 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 #9
Day Hour Count Duration Avg duration Jan 20 13 3,703 0ms 0ms 10 3,400 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 #10
Day Hour Count Duration Avg duration Jan 20 13 3,400 0ms 0ms 11 3,301 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 #11
Day Hour Count Duration Avg duration Jan 20 13 3,301 0ms 0ms 12 2,179 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 #12
Day Hour Count Duration Avg duration Jan 20 13 2,179 0ms 0ms 13 2,165 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 #13
Day Hour Count Duration Avg duration Jan 20 13 2,165 0ms 0ms 14 1,451 0ms 0ms 0ms 0ms update patternresultsrelevance set relevant = ?, saxo_relevant = ?, notrelevantpricedatetime = ?, reason = ? where uniqueindex = ? and relevant = ?;Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jan 20 13 1,451 0ms 0ms 15 1,222 0ms 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 t60 t where t.symbolid = ? and (bsf = ? or bsf is null) and pricedatetime >= ? and pricedatetime <= ? order by pricedatetime desc limit ?;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Jan 20 13 1,222 0ms 0ms 16 1,192 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 #16
Day Hour Count Duration Avg duration Jan 20 13 1,192 0ms 0ms 17 1,166 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 #17
Day Hour Count Duration Avg duration Jan 20 13 1,166 0ms 0ms 18 1,164 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 #18
Day Hour Count Duration Avg duration Jan 20 13 1,164 0ms 0ms 19 584 0ms 0ms 0ms 0ms select downloadersymbol, spike_threshold from price_datafeed_spike_threshold where classname = ?;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Jan 20 13 584 0ms 0ms 20 584 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 #20
Day Hour Count Duration Avg duration Jan 20 13 584 0ms 0ms Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 0ms 0ms 0ms 1 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 Jan 20 13 1 0ms 0ms 2 0ms 0ms 0ms 49 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 Jan 20 13 49 0ms 0ms 3 0ms 0ms 0ms 176 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 #3
Day Hour Count Duration Avg duration Jan 20 13 176 0ms 0ms 4 0ms 0ms 0ms 2,165 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 #4
Day Hour Count Duration Avg duration Jan 20 13 2,165 0ms 0ms 5 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 #5
Day Hour Count Duration Avg duration Jan 20 13 48 0ms 0ms 6 0ms 0ms 0ms 4 0ms select updaterelevantforrelevantresults ();Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jan 20 13 4 0ms 0ms 7 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 #7
Day Hour Count Duration Avg duration Jan 20 13 18 0ms 0ms 8 0ms 0ms 0ms 361 0ms commit;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Jan 20 13 361 0ms 0ms 9 0ms 0ms 0ms 335 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 #9
Day Hour Count Duration Avg duration Jan 20 13 335 0ms 0ms 10 0ms 0ms 0ms 240 0ms select count(*), sum(size), extract(epoch from now() - min(modification)) from pg_ls_waldir ();Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jan 20 13 240 0ms 0ms 11 0ms 0ms 0ms 240 0ms select system_identifier from pg_control_system ();Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jan 20 13 240 0ms 0ms 12 0ms 0ms 0ms 5 0ms select groupid, exchange, groupname, symbol, longname from prfsymboltree where brokerid = ? order by groupname, symbol;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jan 20 13 5 0ms 0ms 13 0ms 0ms 0ms 1 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 #13
Day Hour Count Duration Avg duration Jan 20 13 1 0ms 0ms 14 0ms 0ms 0ms 10 0ms select updatedatafeedslatestrun (?);Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jan 20 13 10 0ms 0ms 15 0ms 0ms 0ms 1 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 #15
Day Hour Count Duration Avg duration Jan 20 13 1 0ms 0ms 16 0ms 0ms 0ms 4 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 #16
Day Hour Count Duration Avg duration Jan 20 13 4 0ms 0ms 17 0ms 0ms 0ms 4 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; 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 #17
Day Hour Count Duration Avg duration Jan 20 13 4 0ms 0ms 18 0ms 0ms 0ms 311 0ms with rar_max as ( 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;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Jan 20 13 311 0ms 0ms 19 0ms 0ms 0ms 8 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 #19
Day Hour Count Duration Avg duration Jan 20 13 8 0ms 0ms 20 0ms 0ms 0ms 24 0ms select distinct classname, to_char(created_datetime, ?), to_char(cleared_datetime, ?), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = ? or cleared_datetime > current_timestamp - interval ?) order by created_datetime desc;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Jan 20 13 24 0ms 0ms Time consuming prepare
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 16s987ms 18,428 0ms 22ms 0ms SELECT ;Times Reported Time consuming prepare #1
Day Hour Count Duration Avg duration Jan 20 13 18,428 16s987ms 0ms -
SELECT ;
Date: 2026-01-20 13:47:18 Duration: 22ms Database: postgres
-
SELECT ;
Date: 2026-01-20 13:56:51 Duration: 14ms Database: postgres
-
SELECT ;
Date: 2026-01-20 13:15:03 Duration: 14ms Database: postgres
2 9s680ms 6,815 0ms 39ms 1ms WITH rar_max as ( ;Times Reported Time consuming prepare #2
Day Hour Count Duration Avg duration 13 6,815 9s680ms 1ms -
WITH rar_max as ( ;
Date: 2026-01-20 13:07:12 Duration: 39ms Database: postgres
-
WITH rar_max as ( ;
Date: 2026-01-20 13:27:03 Duration: 18ms Database: postgres
-
WITH rar_max as ( ;
Date: 2026-01-20 13:27:03 Duration: 17ms Database: postgres
3 1s688ms 1,311 0ms 4ms 1ms SELECT symbolid, ;Times Reported Time consuming prepare #3
Day Hour Count Duration Avg duration 13 1,311 1s688ms 1ms -
SELECT symbolid, ;
Date: 2026-01-20 13:31:50 Duration: 4ms Database: postgres
-
SELECT symbolid, ;
Date: 2026-01-20 13:31:32 Duration: 3ms Database: postgres
-
SELECT symbolid, ;
Date: 2026-01-20 13:17:25 Duration: 3ms Database: postgres
4 1s589ms 10,884 0ms 16ms 0ms SET extra_float_digits = 3;Times Reported Time consuming prepare #4
Day Hour Count Duration Avg duration 13 10,884 1s589ms 0ms -
SET extra_float_digits = 3;
Date: 2026-01-20 13:47:18 Duration: 16ms Database: postgres
-
SET extra_float_digits = 3;
Date: 2026-01-20 13:46:25 Duration: 8ms Database: postgres
-
SET extra_float_digits = 3;
Date: 2026-01-20 13:06:52 Duration: 8ms Database: postgres
5 1s33ms 17,633 0ms 13ms 0ms select 1;Times Reported Time consuming prepare #5
Day Hour Count Duration Avg duration 13 17,633 1s33ms 0ms -
select 1;
Date: 2026-01-20 13:55:58 Duration: 13ms Database: postgres
-
select 1;
Date: 2026-01-20 13:31:28 Duration: 13ms Database: postgres
-
select 1;
Date: 2026-01-20 13:10:47 Duration: 10ms Database: postgres
6 626ms 584 0ms 6ms 1ms SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;Times Reported Time consuming prepare #6
Day Hour Count Duration Avg duration 13 584 626ms 1ms -
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-20 13:00:03 Duration: 6ms Database: postgres
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-20 13:16:56 Duration: 1ms Database: postgres
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-20 13:31:01 Duration: 1ms Database: postgres
7 294ms 3,171 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 #7
Day Hour Count Duration Avg duration 13 3,171 294ms 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: 2026-01-20 13:41:51 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: 2026-01-20 13:11:50 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: 2026-01-20 13:32:03 Duration: 0ms Database: postgres
8 203ms 1,962 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 #8
Day Hour Count Duration Avg duration 13 1,962 203ms 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: 2026-01-20 13:10:34 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: 2026-01-20 13:02:54 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: 2026-01-20 13:17:07 Duration: 0ms Database: postgres
9 201ms 1,166 0ms 4ms 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 #9
Day Hour Count Duration Avg duration 13 1,166 201ms 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: 2026-01-20 13:15:04 Duration: 4ms 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: 2026-01-20 13:15:04 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: 2026-01-20 13:15:04 Duration: 0ms Database: postgres
10 198ms 1,215 0ms 6ms 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 #10
Day Hour Count Duration Avg duration 13 1,215 198ms 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: 2026-01-20 13:46:03 Duration: 6ms 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: 2026-01-20 13:17:55 Duration: 1ms 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: 2026-01-20 13:25:39 Duration: 0ms Database: postgres
11 159ms 10,839 0ms 5ms 0ms SET application_name = 'PostgreSQL JDBC Driver';Times Reported Time consuming prepare #11
Day Hour Count Duration Avg duration 13 10,839 159ms 0ms -
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-20 13:41:33 Duration: 5ms Database: postgres
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-20 13:55:58 Duration: 4ms Database: postgres
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-20 13:16:27 Duration: 3ms Database: postgres
12 82ms 12 4ms 7ms 6ms with sym_info as ( ;Times Reported Time consuming prepare #12
Day Hour Count Duration Avg duration 13 12 82ms 6ms -
with sym_info as ( ;
Date: 2026-01-20 13:36:42 Duration: 7ms Database: postgres
-
with sym_info as ( ;
Date: 2026-01-20 13:51:43 Duration: 7ms Database: postgres
-
with sym_info as ( ;
Date: 2026-01-20 13:36:53 Duration: 7ms Database: postgres
13 46ms 18 1ms 3ms 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 #13
Day Hour Count Duration Avg duration 13 18 46ms 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: 2026-01-20 13:31:01 Duration: 3ms 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: 2026-01-20 13:41:03 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: 2026-01-20 13:51:00 Duration: 2ms Database: postgres
14 45ms 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 45ms 0ms -
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-20 13:14:18 Duration: 2ms Database: postgres
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-20 13:14:18 Duration: 2ms Database: postgres
-
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-20 13:14:43 Duration: 2ms Database: postgres
15 34ms 30 0ms 3ms 1ms WITH last_candle AS ( ;Times Reported Time consuming prepare #15
Day Hour Count Duration Avg duration 13 30 34ms 1ms -
WITH last_candle AS ( ;
Date: 2026-01-20 13:16:00 Duration: 3ms Database: postgres
-
WITH last_candle AS ( ;
Date: 2026-01-20 13:32:01 Duration: 3ms Database: postgres
-
WITH last_candle AS ( ;
Date: 2026-01-20 13:32:00 Duration: 3ms Database: postgres
16 27ms 24 0ms 1ms 1ms select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;Times Reported Time consuming prepare #16
Day Hour Count Duration Avg duration 13 24 27ms 1ms -
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2026-01-20 13:32:20 Duration: 1ms Database: postgres
-
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2026-01-20 13:57:24 Duration: 1ms Database: postgres
-
select distinct classname, to_char(created_datetime, 'yyyy-mm-dd HH24:MI'), to_char(cleared_datetime, 'yyyy-mm-dd HH24:MI'), action_to_take, description, created_datetime from datafeed_restarter_events where (is_current_entry = 1 OR cleared_datetime > current_timestamp - interval '17 hour') order by created_datetime desc;
Date: 2026-01-20 13:46:07 Duration: 1ms Database: postgres
17 23ms 24 0ms 1ms 0ms select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;Times Reported Time consuming prepare #17
Day Hour Count Duration Avg duration 13 24 23ms 0ms -
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2026-01-20 13:17:17 Duration: 1ms Database: postgres
-
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2026-01-20 13:06:03 Duration: 1ms Database: postgres
-
select feedname, to_char(latestrxtime, 'yyyy-mm-dd HH24:MI'), to_char(LatestDBWriteTime, 'yyyy-mm-dd HH24:MI'), to_char(LatestStartupTime, 'yyyy-mm-dd HH24:MI'), StartupTimeInMinutes, dm.source_type, dm.transport_type, case when latestrxtime < (CURRENT_TIMESTAMP - 5 * interval '1 minute') then 'X' else 'OK' end, case when (feedname ilike '%_EOD' OR feedname ilike 'IQFEED_DAILIES' or feedname ilike 'YAHOO%' or feedname ilike 'QUANDL_FUTURES%' or feedname ilike 'BAR_CHART') then case when LatestDBWriteTime < (CURRENT_TIMESTAMP - 24 * interval '1 hour') then 'X' else 'OK' end else case when (LatestDBWriteTime < (CURRENT_TIMESTAMP - 15 * interval '1 minute') and LatestStartupTime < (CURRENT_TIMESTAMP - 30 * interval '1 minute')) OR latestrxtime < CURRENT_TIMESTAMP - interval '2 hour' then 'X' else 'OK' end end as statusDB, comment from datafeeds_latestrun dlr left outer join datafeeds df on dlr.feedname ilike df.name inner join datafeeds_metadata dm on df.metadata_id = dm.id order by feedname;
Date: 2026-01-20 13:57:24 Duration: 1ms Database: postgres
18 14ms 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 #18
Day Hour Count Duration Avg duration 13 6 14ms 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: 2026-01-20 13:00:04 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: 2026-01-20 13:20:04 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: 2026-01-20 13:10:05 Duration: 2ms Database: postgres
19 14ms 24 0ms 0ms 0ms select count(*) from datafeed_restarter_events where is_current_entry = 1;Times Reported Time consuming prepare #19
Day Hour Count Duration Avg duration 13 24 14ms 0ms -
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2026-01-20 13:50:02 Duration: 0ms Database: postgres
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2026-01-20 13:20:03 Duration: 0ms Database: postgres
-
select count(*) from datafeed_restarter_events where is_current_entry = 1;
Date: 2026-01-20 13:00:03 Duration: 0ms Database: postgres
20 14ms 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 #20
Day Hour Count Duration Avg duration 13 6 14ms 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: 2026-01-20 13:40:03 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: 2026-01-20 13:30: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: 2026-01-20 13:50:02 Duration: 2ms Database: postgres
Time consuming bind
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 1m1s 9,846 0ms 57ms 6ms WITH rar_max as ( ;Times Reported Time consuming bind #1
Day Hour Count Duration Avg duration Jan 20 13 9,846 1m1s 6ms -
WITH rar_max as ( ;
Date: 2026-01-20 13:07:12 Duration: 57ms Database: postgres parameters: $1 = '607416018551405301', $2 = '607416018551405301', $3 = '607416018551405301'
-
WITH rar_max as ( ;
Date: 2026-01-20 13:21:09 Duration: 54ms Database: postgres parameters: $1 = 't', $2 = '621', $3 = '7', $4 = '15', $5 = '30', $6 = '60', $7 = '120', $8 = '240', $9 = '480', $10 = '1440', $11 = '0', $12 = '', $13 = '1', $14 = 'EURUSD', $15 = '0', $16 = '', $17 = '0', $18 = '0', $19 = '0', $20 = '0', $21 = '0', $22 = 't', $23 = '10', $24 = '10'
-
WITH rar_max as ( ;
Date: 2026-01-20 13:48:36 Duration: 53ms Database: postgres parameters: $1 = '689', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '0', $10 = 't', $11 = '0', $12 = '0'
2 47s489ms 53,664 0ms 32ms 0ms SELECT ;Times Reported Time consuming bind #2
Day Hour Count Duration Avg duration 13 53,664 47s489ms 0ms -
SELECT ;
Date: 2026-01-20 13:32:03 Duration: 32ms Database: postgres parameters: $1 = '958', $2 = '958', $3 = '515840249413895300'
-
SELECT ;
Date: 2026-01-20 13:47:18 Duration: 31ms Database: postgres parameters: $1 = '958', $2 = '958', $3 = '515840248167442300'
-
SELECT ;
Date: 2026-01-20 13:48:48 Duration: 26ms Database: postgres parameters: $1 = '958', $2 = '958', $3 = '515840233376532300'
3 3s147ms 1,311 1ms 19ms 2ms SELECT symbolid, ;Times Reported Time consuming bind #3
Day Hour Count Duration Avg duration 13 1,311 3s147ms 2ms -
SELECT symbolid, ;
Date: 2026-01-20 13:31:32 Duration: 19ms Database: postgres parameters: $1 = 'MILLENNIUMPF', $2 = '15', $3 = 'USDCHF'
-
SELECT symbolid, ;
Date: 2026-01-20 13:15:03 Duration: 7ms Database: postgres parameters: $1 = 'MILLENNIUMPF', $2 = '15', $3 = 'EURJPY', $4 = 'EURJPY.ID', $5 = 'EURJPY.FX', $6 = 'EURUSD.ID', $7 = 'EURUSD', $8 = 'EURNZD.FX', $9 = 'EURUSD.FX'
-
SELECT symbolid, ;
Date: 2026-01-20 13:17:25 Duration: 4ms Database: postgres parameters: $1 = 'MILLENNIUMPF', $2 = '15', $3 = 'R_SSI'
4 1s349ms 52,076 0ms 11ms 0ms select 1;Times Reported Time consuming bind #4
Day Hour Count Duration Avg duration 13 52,074 1s349ms 0ms 14 2 0ms 0ms -
select 1;
Date: 2026-01-20 13:10:53 Duration: 11ms Database: postgres
-
select 1;
Date: 2026-01-20 13:15:04 Duration: 9ms Database: postgres
-
select 1;
Date: 2026-01-20 13:46:55 Duration: 6ms Database: postgres
5 993ms 584 1ms 2ms 1ms SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;Times Reported Time consuming bind #5
Day Hour Count Duration Avg duration 13 584 993ms 1ms -
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-20 13:31:01 Duration: 2ms Database: postgres parameters: $1 = 'FPMARKETS'
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-20 13:00:03 Duration: 2ms Database: postgres parameters: $1 = 'MILLENNIUMPF'
-
SELECT s.symbolid, dss.downloadfrequency, dss.downloadersymbol;
Date: 2026-01-20 13:00:42 Duration: 2ms Database: postgres parameters: $1 = 'ATFX'
6 518ms 12 28ms 45ms 43ms with sym_info as ( ;Times Reported Time consuming bind #6
Day Hour Count Duration Avg duration 13 12 518ms 43ms -
with sym_info as ( ;
Date: 2026-01-20 13:36:53 Duration: 45ms 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: 2026-01-20 13:51:51 Duration: 44ms Database: postgres parameters: $1 = '627', $2 = 'Forex', $3 = 'Forex', $4 = '627', $5 = 'Forex', $6 = '627', $7 = '627', $8 = 'Forex', $9 = '627'
-
with sym_info as ( ;
Date: 2026-01-20 13:36:42 Duration: 44ms Database: postgres parameters: $1 = '620', $2 = 'Forex', $3 = 'Forex', $4 = '620', $5 = 'Forex', $6 = '620', $7 = '620', $8 = 'Forex', $9 = '620'
7 516ms 1,166 0ms 7ms 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 #7
Day Hour Count Duration Avg duration 13 1,166 516ms 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: 2026-01-20 13:15:04 Duration: 7ms 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: 2026-01-20 13:15:04 Duration: 4ms 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: 2026-01-20 13:15:04 Duration: 1ms Database: postgres
8 516ms 22 0ms 40ms 23ms with wh_patitioned as ( ;Times Reported Time consuming bind #8
Day Hour Count Duration Avg duration 13 22 516ms 23ms -
with wh_patitioned as ( ;
Date: 2026-01-20 13:36:48 Duration: 40ms 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: 2026-01-20 13:16:59 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: 2026-01-20 13:55:01 Duration: 39ms Database: postgres parameters: $1 = '558', $2 = '558', $3 = '558', $4 = '558', $5 = '558', $6 = '558', $7 = '558', $8 = '558', $9 = '558'
9 494ms 100 0ms 56ms 4ms WITH pre_symbols AS ( /* find relevant symbols */ ;Times Reported Time consuming bind #9
Day Hour Count Duration Avg duration 13 100 494ms 4ms -
WITH pre_symbols AS ( /* find relevant symbols */ ;
Date: 2026-01-20 13:15:04 Duration: 56ms 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: 2026-01-20 13:15:03 Duration: 48ms 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: 2026-01-20 13:15:03 Duration: 43ms 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', $1851 = '5'
10 410ms 47 0ms 13ms 8ms WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;Times Reported Time consuming bind #10
Day Hour Count Duration Avg duration 13 47 410ms 8ms -
WITH /*Latest.JapSticks*/ all_results AS ( SELECT ;
Date: 2026-01-20 13:48:35 Duration: 13ms Database: postgres parameters: $1 = '689', $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: 2026-01-20 13:48:16 Duration: 13ms Database: postgres parameters: $1 = '689', $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: 2026-01-20 13:37:40 Duration: 13ms Database: postgres parameters: $1 = '689', $2 = '0', $3 = '0', $4 = '0', $5 = '', $6 = '0', $7 = '', $8 = '0', $9 = '', $10 = '0', $11 = '0'
11 340ms 45 4ms 19ms 7ms WITH last_candle AS ( ;Times Reported Time consuming bind #11
Day Hour Count Duration Avg duration 13 45 340ms 7ms -
WITH last_candle AS ( ;
Date: 2026-01-20 13:56:04 Duration: 19ms Database: postgres parameters: $1 = '667', $2 = '667'
-
WITH last_candle AS ( ;
Date: 2026-01-20 13:32:01 Duration: 13ms Database: postgres parameters: $1 = '558', $2 = '558'
-
WITH last_candle AS ( ;
Date: 2026-01-20 13:16:01 Duration: 13ms Database: postgres parameters: $1 = '558', $2 = '558'
12 275ms 6,054 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 bind #12
Day Hour Count Duration Avg duration 13 6,054 275ms 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: 2026-01-20 13:26:39 Duration: 0ms Database: postgres parameters: $1 = '2026-01-20 13:00:00', $2 = '8775.9', $3 = '8778.9', $4 = '8772.4', $5 = '8777.55', $6 = '1297', $7 = '515840248015086300', $8 = '0', $9 = '2026-01-20 13:26:39.534', $10 = '2026-01-20 13:26:39.45', $11 = '8775.9', $12 = '8778.9', $13 = '8772.4', $14 = '8777.55', $15 = '1297', $16 = '0', $17 = '2026-01-20 13:26:39.534', $18 = '2026-01-20 13:26:39.45'
-
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: 2026-01-20 13:46:24 Duration: 0ms Database: postgres parameters: $1 = '2026-01-16 22:45:00', $2 = '328.675', $3 = '329.205', $4 = '328.295', $5 = '328.89', $6 = '245', $7 = '515840216708637300', $8 = '0', $9 = '2026-01-20 13:46:24.833', $10 = '2026-01-20 13:46:24.729', $11 = '328.675', $12 = '329.205', $13 = '328.295', $14 = '328.89', $15 = '245', $16 = '0', $17 = '2026-01-20 13:46:24.833', $18 = '2026-01-20 13:46:24.729'
-
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: 2026-01-20 13:25:39 Duration: 0ms Database: postgres parameters: $1 = '2026-01-20 12:45:00', $2 = '8773.4', $3 = '8777.9', $4 = '8773.15', $5 = '8775.85', $6 = '943', $7 = '515840248015086300', $8 = '0', $9 = '2026-01-20 13:25:39.17', $10 = '2026-01-20 13:25:39.093', $11 = '8773.4', $12 = '8777.9', $13 = '8773.15', $14 = '8775.85', $15 = '943', $16 = '0', $17 = '2026-01-20 13:25:39.17', $18 = '2026-01-20 13:25:39.093'
13 266ms 3,400 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 #13
Day Hour Count Duration Avg duration 13 3,400 266ms 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: 2026-01-20 13:11:50 Duration: 0ms Database: postgres parameters: $1 = '2026-01-20 12:00:00', $2 = '26326.8', $3 = '26375.8', $4 = '26325.1', $5 = '26369.3', $6 = '5271', $7 = '515840247933633300', $8 = '0', $9 = '2026-01-20 13:11:50.94', $10 = '2026-01-20 13:11:50.794', $11 = '26326.8', $12 = '26375.8', $13 = '26325.1', $14 = '26369.3', $15 = '5271', $16 = '0', $17 = '2026-01-20 13:11:50.94', $18 = '2026-01-20 13:11:50.794'
-
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: 2026-01-20 13:41:51 Duration: 0ms Database: postgres parameters: $1 = '2026-01-20 12:30:00', $2 = '26368.7', $3 = '26383.8', $4 = '26349.8', $5 = '26370.5', $6 = '4005', $7 = '515840247933633300', $8 = '0', $9 = '2026-01-20 13:41:51.501', $10 = '2026-01-20 13:41:51.431', $11 = '26368.7', $12 = '26383.8', $13 = '26349.8', $14 = '26370.5', $15 = '4005', $16 = '0', $17 = '2026-01-20 13:41:51.501', $18 = '2026-01-20 13:41:51.431'
-
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: 2026-01-20 13:15:58 Duration: 0ms Database: postgres parameters: $1 = '2026-01-16 22:30:00', $2 = '130.72', $3 = '131.15', $4 = '130.68', $5 = '131.13', $6 = '500', $7 = '515840249450514300', $8 = '0', $9 = '2026-01-20 13:15:58.283', $10 = '2026-01-20 13:15:58.188', $11 = '130.72', $12 = '131.15', $13 = '130.68', $14 = '131.13', $15 = '500', $16 = '0', $17 = '2026-01-20 13:15:58.283', $18 = '2026-01-20 13:15:58.188'
14 181ms 2,165 0ms 1ms 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,165 181ms 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: 2026-01-20 13:01:00 Duration: 1ms Database: postgres parameters: $1 = '2026-01-20 12:00:00', $2 = '1.28241', $3 = '1.28269', $4 = '1.28203', $5 = '1.28217', $6 = '3444', $7 = '515840217492473300', $8 = '0', $9 = '2026-01-20 13:01:00.862', $10 = '2026-01-20 13:01:00.861', $11 = '1.28241', $12 = '1.28269', $13 = '1.28203', $14 = '1.28217', $15 = '3444', $16 = '0', $17 = '2026-01-20 13:01:00.862', $18 = '2026-01-20 13:01:00.861'
-
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: 2026-01-20 13:01:32 Duration: 0ms Database: postgres parameters: $1 = '2026-01-20 12:00:00', $2 = '0.927115', $3 = '0.927425', $4 = '0.92588', $5 = '0.92597', $6 = '4951', $7 = '515840230468781300', $8 = '0', $9 = '2026-01-20 13:01:32.805', $10 = '2026-01-20 13:01:32.804', $11 = '0.927115', $12 = '0.927425', $13 = '0.92588', $14 = '0.92597', $15 = '4951', $16 = '0', $17 = '2026-01-20 13:01:32.805', $18 = '2026-01-20 13:01:32.804'
-
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: 2026-01-20 13:16:03 Duration: 0ms Database: postgres parameters: $1 = '2026-01-20 12:00:00', $2 = '0.87026', $3 = '0.870495', $4 = '0.869425', $5 = '0.870265', $6 = '4477', $7 = '515840230408963300', $8 = '0', $9 = '2026-01-20 13:16:03.008', $10 = '2026-01-20 13:16:03.008', $11 = '0.87026', $12 = '0.870495', $13 = '0.869425', $14 = '0.870265', $15 = '4477', $16 = '0', $17 = '2026-01-20 13:16:03.008', $18 = '2026-01-20 13:16:03.008'
15 83ms 95 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 95 83ms 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: 2026-01-20 13:50:49 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: 2026-01-20 13:31:54 Duration: 1ms Database: postgres parameters: $1 = '558', $2 = 'XTIUSD', $3 = '558'
-
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: 2026-01-20 13:16:49 Duration: 1ms Database: postgres parameters: $1 = '689', $2 = 'XAUUSD', $3 = '689'
16 60ms 10,884 0ms 2ms 0ms SET extra_float_digits = 3;Times Reported Time consuming bind #16
Day Hour Count Duration Avg duration 13 10,884 60ms 0ms -
SET extra_float_digits = 3;
Date: 2026-01-20 13:31:51 Duration: 2ms Database: postgres
-
SET extra_float_digits = 3;
Date: 2026-01-20 13:42:03 Duration: 1ms Database: postgres
-
SET extra_float_digits = 3;
Date: 2026-01-20 13:50:06 Duration: 0ms Database: postgres
17 53ms 10 3ms 7ms 5ms SELECT DISTINCT ON (basegroupname, symbol) ;Times Reported Time consuming bind #17
Day Hour Count Duration Avg duration 13 10 53ms 5ms -
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2026-01-20 13:16:08 Duration: 7ms Database: postgres parameters: $1 = '667', $2 = '667'
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2026-01-20 13:16:08 Duration: 6ms Database: postgres parameters: $1 = '667', $2 = '667'
-
SELECT DISTINCT ON (basegroupname, symbol) ;
Date: 2026-01-20 13:34:02 Duration: 6ms Database: postgres parameters: $1 = '689', $2 = '689'
18 49ms 1 49ms 49ms 49ms with maxwhid as ( ;Times Reported Time consuming bind #18
Day Hour Count Duration Avg duration 13 1 49ms 49ms -
with maxwhid as ( ;
Date: 2026-01-20 13:22:13 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'
19 43ms 10,839 0ms 0ms 0ms SET application_name = 'PostgreSQL JDBC Driver';Times Reported Time consuming bind #19
Day Hour Count Duration Avg duration 13 10,839 43ms 0ms -
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-20 13:12:46 Duration: 0ms Database: postgres
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-20 13:49:26 Duration: 0ms Database: postgres
-
SET application_name = 'PostgreSQL JDBC Driver';
Date: 2026-01-20 13:31:32 Duration: 0ms Database: postgres
20 25ms 39 0ms 1ms 0ms WITH tr_max AS ( ;Times Reported Time consuming bind #20
Day Hour Count Duration Avg duration 13 39 25ms 0ms -
WITH tr_max AS ( ;
Date: 2026-01-20 13:15:04 Duration: 1ms Database: postgres parameters: $1 = '605679104117541300', $2 = '605679104117541300', $3 = '605679104117541300', $4 = '2', $5 = '2', $6 = '720', $7 = 't', $8 = '720'
-
WITH tr_max AS ( ;
Date: 2026-01-20 13:14:44 Duration: 1ms Database: postgres parameters: $1 = '515840243238020300', $2 = '515840243238020300', $3 = '515840243238020300', $4 = '2', $5 = '2', $6 = '720', $7 = 't', $8 = '720'
-
WITH tr_max AS ( ;
Date: 2026-01-20 13:14:46 Duration: 1ms Database: postgres parameters: $1 = '515840233920750300', $2 = '515840233920750300', $3 = '515840233920750300', $4 = '2', $5 = '2', $6 = '720', $7 = 't', $8 = '720'
-
Events
Log levels
Key values
- 788,201 Log entries
Events distribution
Key values
- 0 PANIC entries
- 0 FATAL entries
- 34 ERROR entries
- 0 WARNING entries
Most Frequent Errors/Events
Key values
- 34 Max number of times the same event was reported
- 34 Total events found
Rank Times reported Error 1 34 ERROR: function fixcandlegaps(...) is not unique
Times Reported Most Frequent Error / Event #1
Day Hour Count Jan 20 13 34 - ERROR: function fixcandlegaps(unknown, boolean) is not unique at character 8
Hint: Could not choose a best candidate function. You might need to add explicit type casts.
Statement: select fixcandlegaps('GLOBALFXMT5', false);Date: 2026-01-20 13:06:01