エラー、バグ、質問 - ページ 2777 1...277027712772277327742775277627772778277927802781278227832784...3185 新しいコメント Stanislav Korotky 2020.06.13 16:12 #27761 Alain Verleyen:アップデート: 最大ピークが本格的に向上しました。 2020.06.13 08:18:25.187 342152(EURGBP, H1) Number = 23520 2020.06.13 08:18:25.187 342152(EURGBP, H1) Min = 33 2020.06.13 08:18:25.187 342152(EURGBP, H1) Max =81011 2020.06.13 08:18:25.187 342152(EURGBP, H1) Avg = 149 実験の純度を高めるため、このスクリプトは複数のチャートと複数のターミナルで並行して実行されなければならない。そして、ハングアップの時間を比較します。 Alain Verleyen 2020.06.13 16:15 #27762 Stanislav Korotky :実験のため、このスクリプトを複数のチャートと複数のターミナルで並行して実行してください。そして、ヒコーキの時間を比較します。 しかし、1つのチャートですでに起こったことであれば、複数のチャートで改善されることはないでしょう。 複数のチャート/ターミナルで実行することで、何がより得られるのでしょうか? Stanislav Korotky 2020.06.13 16:30 #27763 Alain Verleyen:OKですが、1つのチャートですでに起きていることであれば、複数のチャートで改善されることはありません。 複数のチャート/ターミナルで実行することで、何がより得られるのでしょうか? もし、異なる端末で同じになるのであれば、問題はOSのプレーンにあることになります。 Alain Verleyen 2020.06.13 16:37 #27764 Stanislav Korotky :これが異なる端末で同じであれば、OSに問題があることになります。 了解です。試してみます。 Alain Verleyen 2020.06.13 16:48 #27765 Stanislav Korotky :実験のため、このスクリプトを複数のチャートと複数のターミナルで並行して実行してください。そして、ホバリング時間を比較します。 別のTerminalですが、20のチャート(異なるシンボル)が同時に起動しました。 ピークが来るところをAUDUSDで確認しました。 2020.06.13 09:16:35.151 342152 (USDJPY, H1) Number = 240 2020.06.13 09:16:35.151 342152 (USDJPY, H1) Min = 38 2020.06.13 09:16:35.151 342152 (USDJPY, H1) Max = 2235 2020.06.13 09:16:35.151 342152 (USDJPY, H1) Avg = 472 2020.06.13 09:16:35.151 352152 (USDJPY, H1) Min = 38 2020.06.13 09:15:30151 342152 (CADCHF, H1) Avg = 240 2020.06.13 09: 16: 35.151 342152 (CADCHF, H1) Min = 48 2020.06.13 09: 16: 35.151 342152 (CADCHF, H1) Max = 2323 2020.06.14 09: 16: 35.151 342152 (CADCHF, H1) Min = 48 2020.06.14 09: 35.151 342152 (CADCHF) Max = 2323 2020.06.06.13 09: 16: 35.152 342152 (CADCHF, H1) Avg = 606 2020.06.13 09: 16: 35.152 342152 (EURAUD, H1) Quantity = 240 2020.06.13 09: 16: 35.06.13 09: 35.152 342152(EURCHF、H1)数量= 240 2020.06.13 09:16:35.152 342152(GBPCHF、H1)数量= 240 2020.06.13 09:16:35.152 342152(EURCHF、H1)最小= 141 2020.06.13 09:16:35.152 342152(EURGBP、H1)数量= 240 2020.06.13 09:16:35.152342152152 342152 (CHFJPY, H1) Quantity = 240 2020.06.13 09: 16: 35.152 342152 (AUDJPY, H1) Quantity = 240 2020.06.13 09: 16: 35.152 342152 (AUDJPY, H1) Min = 47 2020.06.13 09: 16: 35.152 342152 (EURUSD, H1) Quantity = 240 2020.06.13 09: 16: 35.152 342152 (EURUSD, H1) Min.= 23 2020.06.13 09: 16: 35.152 342152 (EURUSD, H1) Max = 2368 2020.06.13 09: 16: 35.152 342152 (AUDUSD, H1) Quantity = 240 2020.06.13 09: 16: 35.152 342152 (EURUSD, H1) Avg = 607 2020.06.13 09: 16: 35.152 342152 (AUDUSD, H1) Min = 74 2020.06.13 09: 16: 35.152 342152 (GBPJPY, H1) Avg = 240 2020.06.13 09: 16: 35.152 342152 (AUDNZD, H1) Avg = 240 2020.06.13 09: 16: 35.152 342152 (USDCHF, H1) Avg = 240 2020年。06.06.13 09: 16: 35.152 342152 (AUDNZD, H1) Min = 122 2020.06.13 09: 16: 35.152 342152 (AUDCHF, H1) Quantity = 240 2020.06.13 09: 16: 35.152 342152 (AUDNZD, H1) Max = 2402 2020.06.13 09: 16: 35.152 342152 (AUDNZD, H1) Avg = 660 2020年.06.06.13 09: 16: 35.152 342152 (AUDCHF, H1) Min = 157 2020.06.13 09: 16: 35.152 342152 (AUDCHF, H1) Max = 2354 2020.06.13 09: 16: 35.152 342152 (AUDCHF, H1) Avg = 663 2020.06.13 09: 16: 35.152 342152 (GBPCHF, H1) Min = 32 2020.06.13 06: 16: 35.152 352152 (AUDCHF, H2) Min = 157 2020.06.12.16:35.152342152(豪ドル円) 2020.06.06.13 09: 16: 35.152 342152 (GBPCHF, H1) Max = 2380 2020.06.13 09: 16: 35.152 342152 (GBPCHF, H1) Avg = 616 2020.06.13 09: 16: 35.152 342152 (EURCHF, H1) Max = 2327 2020.06.13 09: 16: 35.152 342152 (EURCHF, H1) Avg = 618 2020年.06.13 09:16:35.152 342152 (EURGBP, H1) Min = 36 2020.06.13 09:16:35.152 342152 (EURGBP, H1) Max = 2233 2020.06.13 09:16:35.152 342152 (EURGBP, H1) Avg = 503 2020.06.13 09:16:35.152 342152 (CHFJPY, H1) Min = 11 2020.06.13 09:16:35.152 342152 (EURGBP, H1)13 09: 16: 35.152 342152 (CHFJPY, H1) Max = 2387 2020.06.13 09: 16: 35.152 342152 (CHFJPY, H1) Avg = 657 2020.06.13 09: 16: 35.152 342152 (AUDJPY, H1) Max = 2292 2020.06.13 09: 16: 35.152 342152 (AUDJPY, H1) Avg = 612 2020.06.13 09:16: 35.151 342152 (CHFJPY) Max = 249 2020.06.13 09: 16: 35.152 342152 (EURNZD, H1) 数量 = 240 2020.06.13 09: 16: 35.152 342152 (EURNZD, H1) Min = 54 2020.06.13 09: 16: 35.152 342152 (EURNZD, H1) Max = 2361 2020.06.13 09: 16: 35.152 342152 (EURNZD, H1) Avg = 612 2020.06.13 09: 16: 35.1543425 (EURNZD, H2) Avg = 512 2020.06.14 09: 16: 16 35.154342154 (EURNZD, H3) 数量 = 550 2020.06.14 10: 35.16335 (EURNZD, H3)06.06.13 09: 16: 35.152 342152 (AUDCAD, H1) Avg = 240 2020.06.13 09: 16: 35.152 342152 (AUDCAD, H1) Min = 121 2020.06.13 09: 16: 35.152 342152 (EURCAD, H1) Avg = 240 2020.06.13 09: 16: 35.35.3422 (AUDCAD, H2) Avg = 240 152 342152 (AUDCAD, H1) Max = 2328 2020.06.13 09: 16: 35.152 342152 (AUDCAD, H1) Avg = 605 2020.06.13 09: 16: 35.152 342152 (AUDUSD, H1) Max = 2361 2020.06.13 09: 16: 35.152 342152 (AUDUSD, H1) Avg = 611 2020.06.13 09: 16: 35.155.352342152 (AUDUSD, H1)最大 = 2328 20:05: 16: 35.155 2020.06.13 10: 16: 16:35.155 342152 (AUDUSD, H1)平均 = 611 2020.06.13 09: 16: 35.155152 342152(GBPJPY、H1) Min = 13 2020.06.13 09: 16: 35.152 342152(GBPJPY、H1) Max = 2411 2020.06.13 09: 16: 35.152 342152(GBPJPY、H1) Avg = 661 2020.06.13 09: 16: 35.153 342152(GBPUSD, H1)アベグ= 240 2020.06.13 09: 16: 35.158.13 09: 16: 35.153 342152 (GBPUSD, H1) Min = 113 2020.06.13 09: 16: 35.153 342152 (GBPUSD, H1) Max = 2362 2020.06.13 09: 16: 35.153 342152 (GBPUSD, H1) Avg = 667 2020.06.13 09: 16: 35.153 342152 (USDCAD, H1) 数量= 240 2020.06.06.13 09: 16: 35.153 342152 (USDCAD, H1) Min = 151 2020.06.13 09: 16: 35.153 342152 (USDCAD, H1) Max = 2386 2020.06.13 09: 16: 35.153 342152 (EURAUD, H1) Min = 35 2020.06.13 09: 16: 35.153 342152 (USDCAD, H1) Avg = 671 2020.06.13 09: 15: 15: 35.153 352152 (USDCAD, H2) Min = 35 2020.06.13 09: 16: 35.153 342152 (EURAUD, H1) Max = 2233 2020.06.13 09: 16: 35.153 342152 (EURAUD, H1) Avg = 478 2020.06.13 09: 16: 35.153 342152 (EURJPY, H1) Quantity = 240 2020.06.13 09: 16: 35.153 342152 (EURJPY, H1) Min = 10 2020.06.13 10: 35.153 35252 (EURAUD, H2) Avg = 2233 2020.06.14 09: 16:30 35.153 3424 (UVRAUD, H1) Avg = 2233 2020.06.15 09: 16: 35.15434215106.06.13 09: 16: 35.153 342152 (EURCAD, H1) Min = 123 2020.06.13 09: 16: 35.153 342152 (EURCAD, H1) Max = 2384 2020.06.13 09: 16: 35.153 342152 (EURCAD, H1) Avg = 658 2020.06.13 09: 16: 35.153 342152 (USDCHF, H1) Min = 32 2020.06.13 06: 16: 35.153 352152 (EURCAD, H2) Min = 234 2020.06.13 06: 16: 35.153 342152 (USDCHF) Avg = 234 2020.06.13 06: 16: 35.153 342152 (EURCAD, H1)06.06.13 09: 16: 35.153 342152 (USDCHF, H1) Max = 2369 2020.06.13 09: 16: 35.153 342152 (USDCHF, H1) Avg = 614 2020.06.13 09: 16: 35.153 342152 (EURJPY, H1) Max = 2344 2020.06.13 09: 16: 35.153 342152 (EURJPY, H1) Avg = 658 そして、この時に登場するのがトップスです。 2020.06.13 09:17:35.151 342152 (USDJPY, H1) Avg = 480 2020.06.13 09:17:35.151 342152 (USDJPY, H1) Min = 38 2020.06.13 09:17:35.151 342152 (USDJPY, H1) Max = 17421 2020年.06.06.13 09: 17: 35.151 342152 (USDJPY, H1) Avg = 533 2020.06.13 09: 17: 35.151 342152 (EURAUD, H1) Quantity = 480 2020.06.13 09: 17: 35.151 342152 (EURAUD, H1) Min = 35 2020.06.13 06: 17: 35.151 342152 (EURAUD, H1) Avg = 532 (USDJPY) Min: 35 2020.06.13 09: 17: 342151 (USDJPY, H1) Avg = 532 06.06.13 09: 17: 35.151 342152 (EURAUD, H1) Max = 17406 2020.06.13 09: 17: 35.151 342152 (EURAUD, H1) Avg = 518 2020.06.13 09: 17: 35.151 342152 (EURGBP, H1) 数量 = 480 2020.06.13 06: 17: 35.151 342152 (EURAUD, H2) Avg = 518 2020.06.13 06: 16: 35.151 342152 (EURGBP, H2) 数量 = 480 2020.06.13 09:17:35.151 342152(EURGBP, H1) Min = 36 2020.06.13 09:17:35.151 342152(EURGBP, H1) Max = 17425 2020.06.13 09:17:35.151 342152(EURGBP, H1) Avg = 515 2020.06.13 09:17:35.151 342152(EURUSD、H1)数量= 480 2020.06.13 09:17:35.151 342152(EURUSD、H1)最小= 18 2020.06.13 09:17:35.151 342152(EURUSD、H1)最大= 17366 2020.06.13 09:17:35.151 352152(EURUSD、H1)最小= 18 2020.06.13 09:18:35.151 342152(EURUSD、H1)最小= 17366 2020.06.14 09:17:35.151 342152(EURCHF、H1)マックス= 480 2020.06.13 09:17:35.151 342152(EURUSD、H1)平均= 618 2020.06.13 09:17:35.151 342152(AUDCHF、H1)マックス= 480 2020.06.13 09:17:35.151 3.151 342152(USDCHF、H1) 数量=480 2020.06.13 09:17:35.151 342152(AUDCHF、H1) Min=126 2020.06.13 09:17:35.151 342152(CADCHF, H1)数量=480 2020.06.13 09:17:35.151 3.151 342152(AUDCHF、H1)マックス= 10477 2020.06.13 09:17:35.151 342152(EURCAD、H1)数量= 480 2020.06.13 09:17:35.151 342152(GBPUSD、H1)数量= 480 2020.06.13.13 09:17:35.152 342152(EURCAD、H1) Min = 123 2020.06.13 09:17:35.152 342152(GBPUSD、H1) Min = 112 2020.06.13 09:17:35.152 342152(ERCAD, H1) Max = 10485 2020.06.13 09:17:35.152 342152 (EURCAD, H1) Avg = 663 2020.06.13 09: 17: 35.152 342152 (GBPUSD, H1) Max = 10435 2020.06.13 09: 17: 35.152 342152 (GBPUSD, H1) Avg = 661 2020.06.13 09: 17: 35.152 342152 (EURCHF, H1) Min = 71 2020年.06.06.13 09: 17: 35.152 342152 (EURJPY, H1) Avg = 480 2020.06.13 09: 17: 35.152 342152 (USDCAD, H1) Avg = 480 2020.06.13 09: 17: 35.152 342152 (USDCAD, H1) Min = 54 2020.06.13 09: 17: 35.152 342152 (USDJPY, H1) Avg = 480 2020.06.13 09: 17: 35.152 352152 (USDJPY) Avg = 480 2020.06.13 09: 17: 35.152 342152 (EURJPY, H1) Min = 10 2020.06.13 09: 17: 35.152 342152 (EURJPY, H1) Max = 10487 2020.06.13 09: 17: 35.152 342152 (EURJPY, H1) Avg = 664 2020.06.13 09: 17: 35.152 342152 (EURJPY, H1) Avg = 664. "EuroJPYは、EURJPYとH1" "EURJPY は、"ユーロ円" "EURJPYは、" "ユーロ円" "ユーロ円" "H1 "です。13 09: 17: 35.152 342152 (EURNZD, H1) 数量 = 480 2020.06.13 09: 17: 35.152 342152 (EURNZD, H1) Min = 54 2020.06.13 09: 17: 35.152 342152 (EURNZD, H1) Max = 17426 2020.06.13 09: 16: 35.152342152 (EURNZD, H1) 数量 = 480 2020.06.14 09: 16: 35.163342152 (EURNZD) Max = 17442 06.06.13 09:17:35.152 342152 (EURNZD, H1) Avg = 620 2020.06.13 09:17:35.152 342152 (USDCHF, H1) Min = 32 2020.06.13 09:17:35.152 342152 (USDCHF, H1) Max = 17427 2020.06.13 09:17:35.152 342152 (USDCHF, H1) Avg = 649 2020.06.13 09: 17: 35.152 342152 (GBPCHF, H1) Max = 480 2020.06.13 09: 17: 35.152 342152 (GBPCHF, H1) Min = 32 2020.06.13 09: 17: 35.152342152 (GBPCHF、H1)Min = 32。152 342152 (GBPCHF, H1) Max = 17433 2020.06.13 09: 17: 35.152 342152 (GBPCHF, H1) Avg = 647 2020.06.13 09: 17: 35.152 342152 (AUDJPY, H1) Min = 480 2020.06.13 09: 17: 35.152 342152 (AUDJPY, H1) Min.= 47 2020.06.13 09: 17: 35.152 342152 (AUDJPY, H1) Max = 17415 2020.06.13 09: 17: 35.152 342152 (AUDJPY, H1) Avg = 640 2020.06.13 09: 17: 35.152 342152 (CADCHF, H1) Min = 48 2020.06.13 09: 17: 35.352342152 (ADCHF) H1.152 342152 (CADCHF, H1) Max = 17435 2020.06.13 09: 17: 35.152 342152 (CADCHF, H1) Avg = 637 2020.06.13 09: 17: 35.152 342152 (AUDCHF, H1) Avg = 662 2020.06.13 09: 17: 35.152 342152 (AUDUSD, H1) 数量 = 480 2020.06.13 09: 17: 35.152 342152 (CADCHF, H1) Evg = 762 2020.06.13 10: 17: 35.152342151 2020.06.13 09: 17: 35.152 342152 (AUDCHF) Avg = 762152 342152 (AUDUSD, H1) Min = 43 2020.06.13 09: 17: 35.152 342152 (AUDUSD, H1) Max = 17416 2020.06.13 09: 17: 35.152 342152 (AUDUSD, H1) Avg = 620 2020.06.13 09: 17: 35.152 342152 (GBPJPY, H1) 数量 = 480 2020.06.13 09: 17: 35.152342152 (BUDUSD) H2.13 09: 17: 35.152 342152 (GBPJPY, H1) Min = 13 2020.06.13 09: 17: 35.152 342152 (GBPJPY, H1) Max = 10468 2020.06.13 09: 17: 35.152 342152 (GBPJPY, H1) Avg = 660 2020.06.13 09: 17: 35.152 342152 (CHFJPY, H1) 数量 = 480 2020.06.06.13 09: 17: 35.152 342152 (CHFJPY, H1) Min = 11 2020.06.13 09: 17: 35.152 342152 (CHFJPY, H1) Max = 10474 2020.06.13 09: 17: 35.152 342152 (AUDNZD, H1) 数量=480 2020.06.13 09: 17: 35.152 342152 (AUDNZD, H1) Min = 61 2020.06.13 09: 17: 35.152 342152 (AUDNZD, H1) Max = 10491 2020.06.13 09: 17: 35.152 342152 (AUDNZD, H1) Avg = 663 2020.06.13 09: 17: 35.152 342152 (EURCHF, H1) Max = 17414 2020.06.13 09: 17: 35.152 352152 (AUDNZD, H1) Avg = 663 2020.06.14 10: 17: 35.152 352152 (AUDNZD, H1) Max = 664 20: 06.14 09: 16: 18: 16: 18: 18: 17152 342152 (EURCHF, H1) Avg = 646 2020.06.13 09: 17: 35.152 342152 (AUDCAD, H1) Max = 480 2020.06.13 09: 17: 35.152 342152 (AUDCAD, H1) Min = 100 2020.06.13 09: 17: 35.152 342152 (AUDCAD, H1) Max = 17421 2020年.06.06.13 09: 17: 35.152 342152 (AUDCAD, H1) Avg = 638 2020.06.13 09: 17: 35.152 342152 (USDCAD, H1) Max = 10488 2020.06.13 09: 17: 35.152 342152 (USDCAD, H1) Avg = 666 2020.06.13 09: 17: 35.152 342152 (CHFJPY, H1) Avg = 656 だから、すべてが同時に起こったのです。しかし、これはまだMT5の問題である可能性があります。他の同時接続端末で確認します。 Errors, bugs, questions Forex Correlation Theory Experts: Dealers Trade v Sergey Dzyublik 2020.06.13 17:20 #27766 Stanislav Korotky:もし、異なる端末で同じになるのであれば、問題はOSのプレーンにあることになります。 MT5 (ビルド2009)で確認したところ、すべてが高速で、実行時間は5ms以下 MT5 (ビルド2485)では、すべてが遅くなり、実行時間はしばしば200msを超える(特に50以上のチャートを開いている場合) 問題点の説明からコードを使用してみました: https://www.mql5.com/en/forum/342152 MT5 2009とMT5 2485の二つのバージョンのChartGetInteger関数実現を比較してみました、多分問題があるかと: 1............。 mfence; lock mov eax,[rax+2C]; 2009年版では、次のようにしています。 2.また、ntdll_RtlEnterCriticalSectionのロジックと可能な滞留時間が大幅に変更されたようです。 以前(2009年)は、クリティカルセクションは受信値のペアをチェックするだけで、アトミックな操作は一切ありませんでした。 そして2485では、チャートのリンクリストオブジェクトをさらに列挙することができるようになった。 おそらく、新しいコンパイラへの移行の一環として、チャート関数で作業する際のクラッシュが修正されたとき(約2-3ヶ月前)に、この問題が発生する可能性があります。 MT5(build 2485)のChartGetInteger呼び出しの アセンブラコードを添付します。 Alain Verleyen 2020.06.13 20:14 #27767 Sergey Dzyublik : MT5 (ビルド2009)で確認したところ、すべてが高速で、実行時間は5ms以下 MT5 (ビルド2485)では、すべてが遅くなり、実行時間はしばしば200msを超える(特に50以上のチャートを開いている場合) 問題記述のコードを使用しました https://www.mql5.com/en/forum/342152 ChartGetInteger関数の実現をMT5 2009とMT5 2485の2バージョンで比較しましたが、おそらく問題があると思います: 1.............。 mfence; lock mov eax,[rax+2C]; 2009年版では、次のようにしています。2.また、ntdll_RtlEnterCriticalSectionのロジックと可能な滞留時間が大幅に変更されたようです。 以前(2009年)は、クリティカルセクションは受信値のペアをチェックするだけで、アトミック演算は行わなかった。 そして2485では、チャート内のリンクリストオブジェクトをさらに列挙することができるようになった。おそらく、新しいコンパイラへの移行の一環として、チャート関数で作業する際のクラッシュが修正されたとき(約2-3ヶ月前)に、この問題が発生する可能性があります。 MT5(build 2485)のChartGetInteger呼び出しの アセンブラコードを添付します。 公式ビルドは2005年ビルド、そして2085年ビルドとありますが、何かありますか?2007 Buildしか持ってない。 Nikolai Semko 2020.06.14 08:23 #27768 Sergey Dzyublik:非同期と同期という言葉を何か勘違いしているようですね。 ある関数が非同期であると言う場合、その関数は現在の実行スレッドではなく、他のスレッドで実行されることを意味します。メインスレッドから非同期のChartSetInteger関数を呼び出すと、実際の実行は別のスレッドで行われるため高速に実行できます。 一方、ChartGetIntegerの同期関数を呼び出すと、スレッドの同期が必要となり、さらに時間がかかる場合があります。 この遅延は、並列スレッドがチャート構造体のデータを常に更新している場合(例えば、ユーザーがチャートウィンドウを移動したり、履歴をスクロールしたりした場合)に特に顕著になります。 ほとんどの場合、シンプルさと信頼性のために、そのチャートデータ構造には1つの同期オブジェクトが使用されます。 データの細分化」で実行速度を向上させようとすると、今度はデッドロックが発生したり、データが更新されなかったり、もっと重要な場所で速度低下が発生したりすることがあるのです。 一般的に、すでに安定して動いているものには手を出さないほうがいいと言われています。 イリヤス: ピークがチャート・コメントをレンダリングしていると仮定します。そうでなければ、チャート・キューが空のとき、ChartGetXXX関数呼び出し(注、同期を伴う呼び出し)は0.13ミリ秒かかります。 例えば、こんなインジケータをスケッチしてみました。 ChartGetInteger(0,CHART_FIRST_VISIBLE_BAR, 0)はマウス移動時に実行されます。 赤いグラフはこの関数の実行時間統計です。 画面全体をクリアにし、数千行のチャートを形成し、スケールを描き、テキスト情報ブロックを形成して画面に表示するBildChart関数に比べ、1桁の単純なクエリは何倍も遅く実行されます。 シンクロニシティ・アシンクロニシティによってそうなるはずだという学術的な話は、すべて「ブラック・イズ・ホワイト」として認識されています。 相場表の完全な配列があれば、カンヴァスをベースにした独自のチャートを作成し、そのチャートの特性の完全なテーブルを持ち、ナノ秒単位でアクセスすることができますので、問題ありません。そしてそれとともに、チャートのカンヴァスは別のスレッドでレンダリングされます。 ファイル: TestChartGet.mq5 8 kb TestChartGet.ex5 68 kb fxsaber 2020.06.14 08:59 #27769 この行でコンパイラが何を嫌っているのか理解できず、長い間呆然としていました。 else (Type != -1) // expression has no effectifを書くのを忘れた。そんなアホな人に向けて、メッセージを綴るのはいかがなものかと。 Alexey Navoykov 2020.06.14 09:59 #27770 Nikolai Semko:単純に一桁の数字を問い合わせるだけでも、画面全体をクリアにして数千行のグラフを形成し、スケールを描き、テキスト情報ブロックを形成して画面に出力するBildChart関数より何倍も遅いのです。 私の知る限り、ChartRedrawを呼び出しても、すぐに再描画は行われず、何らかのGetメソッドが呼び出されたときに再描画が行われます。また、ChartRedrawも基本的に同じ非同期メソッドなので、BuildChartの測定は信頼できません。 1...277027712772277327742775277627772778277927802781278227832784...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
アップデート:
最大ピークが本格的に向上しました。
2020.06.13 08:18:25.187 342152(EURGBP, H1) Number = 23520
2020.06.13 08:18:25.187 342152(EURGBP, H1) Min = 33
2020.06.13 08:18:25.187 342152(EURGBP, H1) Max =81011
2020.06.13 08:18:25.187 342152(EURGBP, H1) Avg = 149
実験の純度を高めるため、このスクリプトは複数のチャートと複数のターミナルで並行して実行されなければならない。そして、ハングアップの時間を比較します。
実験のため、このスクリプトを複数のチャートと複数のターミナルで並行して実行してください。そして、ヒコーキの時間を比較します。
しかし、1つのチャートですでに起こったことであれば、複数のチャートで改善されることはないでしょう。
複数のチャート/ターミナルで実行することで、何がより得られるのでしょうか?
OKですが、1つのチャートですでに起きていることであれば、複数のチャートで改善されることはありません。
複数のチャート/ターミナルで実行することで、何がより得られるのでしょうか?
もし、異なる端末で同じになるのであれば、問題はOSのプレーンにあることになります。
これが異なる端末で同じであれば、OSに問題があることになります。
実験のため、このスクリプトを複数のチャートと複数のターミナルで並行して実行してください。そして、ホバリング時間を比較します。
別のTerminalですが、20のチャート(異なるシンボル)が同時に起動しました。
ピークが来るところをAUDUSDで確認しました。
2020.06.13 09:16:35.151 342152 (USDJPY, H1) Number = 240
2020.06.13 09:16:35.151 342152 (USDJPY, H1) Min = 38
2020.06.13 09:16:35.151 342152 (USDJPY, H1) Max = 2235
2020.06.13 09:16:35.151 342152 (USDJPY, H1) Avg = 472
2020.06.13 09:16:35.151 352152 (USDJPY, H1) Min = 38 2020.06.13 09:15:30151 342152 (CADCHF, H1) Avg = 240
2020.06.13 09: 16: 35.151 342152 (CADCHF, H1) Min = 48
2020.06.13 09: 16: 35.151 342152 (CADCHF, H1) Max = 2323
2020.06.14 09: 16: 35.151 342152 (CADCHF, H1) Min = 48 2020.06.14 09: 35.151 342152 (CADCHF) Max = 2323 2020.06.06.13 09: 16: 35.152 342152 (CADCHF, H1) Avg = 606
2020.06.13 09: 16: 35.152 342152 (EURAUD, H1) Quantity = 240
2020.06.13 09: 16: 35.06.13 09: 35.152 342152(EURCHF、H1)数量= 240
2020.06.13 09:16:35.152 342152(GBPCHF、H1)数量= 240
2020.06.13 09:16:35.152 342152(EURCHF、H1)最小= 141
2020.06.13 09:16:35.152 342152(EURGBP、H1)数量= 240
2020.06.13 09:16:35.152342152152 342152 (CHFJPY, H1) Quantity = 240
2020.06.13 09: 16: 35.152 342152 (AUDJPY, H1) Quantity = 240
2020.06.13 09: 16: 35.152 342152 (AUDJPY, H1) Min = 47
2020.06.13 09: 16: 35.152 342152 (EURUSD, H1) Quantity = 240
2020.06.13 09: 16: 35.152 342152 (EURUSD, H1) Min.= 23
2020.06.13 09: 16: 35.152 342152 (EURUSD, H1) Max = 2368
2020.06.13 09: 16: 35.152 342152 (AUDUSD, H1) Quantity = 240
2020.06.13 09: 16: 35.152 342152 (EURUSD, H1) Avg = 607
2020.06.13 09: 16: 35.152 342152 (AUDUSD, H1) Min = 74
2020.06.13 09: 16: 35.152 342152 (GBPJPY, H1) Avg = 240
2020.06.13 09: 16: 35.152 342152 (AUDNZD, H1) Avg = 240
2020.06.13 09: 16: 35.152 342152 (USDCHF, H1) Avg = 240
2020年。06.06.13 09: 16: 35.152 342152 (AUDNZD, H1) Min = 122
2020.06.13 09: 16: 35.152 342152 (AUDCHF, H1) Quantity = 240
2020.06.13 09: 16: 35.152 342152 (AUDNZD, H1) Max = 2402
2020.06.13 09: 16: 35.152 342152 (AUDNZD, H1) Avg = 660
2020年.06.06.13 09: 16: 35.152 342152 (AUDCHF, H1) Min = 157
2020.06.13 09: 16: 35.152 342152 (AUDCHF, H1) Max = 2354
2020.06.13 09: 16: 35.152 342152 (AUDCHF, H1) Avg = 663
2020.06.13 09: 16: 35.152 342152 (GBPCHF, H1) Min = 32
2020.06.13 06: 16: 35.152 352152 (AUDCHF, H2) Min = 157 2020.06.12.16:35.152342152(豪ドル円) 2020.06.06.13 09: 16: 35.152 342152 (GBPCHF, H1) Max = 2380
2020.06.13 09: 16: 35.152 342152 (GBPCHF, H1) Avg = 616
2020.06.13 09: 16: 35.152 342152 (EURCHF, H1) Max = 2327
2020.06.13 09: 16: 35.152 342152 (EURCHF, H1) Avg = 618
2020年.06.13 09:16:35.152 342152 (EURGBP, H1) Min = 36
2020.06.13 09:16:35.152 342152 (EURGBP, H1) Max = 2233
2020.06.13 09:16:35.152 342152 (EURGBP, H1) Avg = 503
2020.06.13 09:16:35.152 342152 (CHFJPY, H1) Min = 11
2020.06.13 09:16:35.152 342152 (EURGBP, H1)13 09: 16: 35.152 342152 (CHFJPY, H1) Max = 2387
2020.06.13 09: 16: 35.152 342152 (CHFJPY, H1) Avg = 657
2020.06.13 09: 16: 35.152 342152 (AUDJPY, H1) Max = 2292
2020.06.13 09: 16: 35.152 342152 (AUDJPY, H1) Avg = 612
2020.06.13 09:16: 35.151 342152 (CHFJPY) Max = 249 2020.06.13 09: 16: 35.152 342152 (EURNZD, H1) 数量 = 240
2020.06.13 09: 16: 35.152 342152 (EURNZD, H1) Min = 54
2020.06.13 09: 16: 35.152 342152 (EURNZD, H1) Max = 2361
2020.06.13 09: 16: 35.152 342152 (EURNZD, H1) Avg = 612
2020.06.13 09: 16: 35.1543425 (EURNZD, H2) Avg = 512 2020.06.14 09: 16: 16 35.154342154 (EURNZD, H3) 数量 = 550 2020.06.14 10: 35.16335 (EURNZD, H3)06.06.13 09: 16: 35.152 342152 (AUDCAD, H1) Avg = 240
2020.06.13 09: 16: 35.152 342152 (AUDCAD, H1) Min = 121
2020.06.13 09: 16: 35.152 342152 (EURCAD, H1) Avg = 240
2020.06.13 09: 16: 35.35.3422 (AUDCAD, H2) Avg = 240 152 342152 (AUDCAD, H1) Max = 2328
2020.06.13 09: 16: 35.152 342152 (AUDCAD, H1) Avg = 605
2020.06.13 09: 16: 35.152 342152 (AUDUSD, H1) Max = 2361
2020.06.13 09: 16: 35.152 342152 (AUDUSD, H1) Avg = 611
2020.06.13 09: 16: 35.155.352342152 (AUDUSD, H1)最大 = 2328 20:05: 16: 35.155 2020.06.13 10: 16: 16:35.155 342152 (AUDUSD, H1)平均 = 611 2020.06.13 09: 16: 35.155152 342152(GBPJPY、H1) Min = 13
2020.06.13 09: 16: 35.152 342152(GBPJPY、H1) Max = 2411
2020.06.13 09: 16: 35.152 342152(GBPJPY、H1) Avg = 661
2020.06.13 09: 16: 35.153 342152(GBPUSD, H1)アベグ= 240
2020.06.13 09: 16: 35.158.13 09: 16: 35.153 342152 (GBPUSD, H1) Min = 113
2020.06.13 09: 16: 35.153 342152 (GBPUSD, H1) Max = 2362
2020.06.13 09: 16: 35.153 342152 (GBPUSD, H1) Avg = 667
2020.06.13 09: 16: 35.153 342152 (USDCAD, H1) 数量= 240
2020.06.06.13 09: 16: 35.153 342152 (USDCAD, H1) Min = 151
2020.06.13 09: 16: 35.153 342152 (USDCAD, H1) Max = 2386
2020.06.13 09: 16: 35.153 342152 (EURAUD, H1) Min = 35
2020.06.13 09: 16: 35.153 342152 (USDCAD, H1) Avg = 671
2020.06.13 09: 15: 15: 35.153 352152 (USDCAD, H2) Min = 35 2020.06.13 09: 16: 35.153 342152 (EURAUD, H1) Max = 2233
2020.06.13 09: 16: 35.153 342152 (EURAUD, H1) Avg = 478
2020.06.13 09: 16: 35.153 342152 (EURJPY, H1) Quantity = 240
2020.06.13 09: 16: 35.153 342152 (EURJPY, H1) Min = 10
2020.06.13 10: 35.153 35252 (EURAUD, H2) Avg = 2233 2020.06.14 09: 16:30 35.153 3424 (UVRAUD, H1) Avg = 2233 2020.06.15 09: 16: 35.15434215106.06.13 09: 16: 35.153 342152 (EURCAD, H1) Min = 123
2020.06.13 09: 16: 35.153 342152 (EURCAD, H1) Max = 2384
2020.06.13 09: 16: 35.153 342152 (EURCAD, H1) Avg = 658
2020.06.13 09: 16: 35.153 342152 (USDCHF, H1) Min = 32
2020.06.13 06: 16: 35.153 352152 (EURCAD, H2) Min = 234 2020.06.13 06: 16: 35.153 342152 (USDCHF) Avg = 234 2020.06.13 06: 16: 35.153 342152 (EURCAD, H1)06.06.13 09: 16: 35.153 342152 (USDCHF, H1) Max = 2369
2020.06.13 09: 16: 35.153 342152 (USDCHF, H1) Avg = 614
2020.06.13 09: 16: 35.153 342152 (EURJPY, H1) Max = 2344
2020.06.13 09: 16: 35.153 342152 (EURJPY, H1) Avg = 658
そして、この時に登場するのがトップスです。
2020.06.13 09:17:35.151 342152 (USDJPY, H1) Avg = 480
2020.06.13 09:17:35.151 342152 (USDJPY, H1) Min = 38
2020.06.13 09:17:35.151 342152 (USDJPY, H1) Max = 17421
2020年.06.06.13 09: 17: 35.151 342152 (USDJPY, H1) Avg = 533
2020.06.13 09: 17: 35.151 342152 (EURAUD, H1) Quantity = 480
2020.06.13 09: 17: 35.151 342152 (EURAUD, H1) Min = 35
2020.06.13 06: 17: 35.151 342152 (EURAUD, H1) Avg = 532 (USDJPY) Min: 35 2020.06.13 09: 17: 342151 (USDJPY, H1) Avg = 532 06.06.13 09: 17: 35.151 342152 (EURAUD, H1) Max = 17406
2020.06.13 09: 17: 35.151 342152 (EURAUD, H1) Avg = 518
2020.06.13 09: 17: 35.151 342152 (EURGBP, H1) 数量 = 480
2020.06.13 06: 17: 35.151 342152 (EURAUD, H2) Avg = 518 2020.06.13 06: 16: 35.151 342152 (EURGBP, H2) 数量 = 480 2020.06.13 09:17:35.151 342152(EURGBP, H1) Min = 36
2020.06.13 09:17:35.151 342152(EURGBP, H1) Max = 17425
2020.06.13 09:17:35.151 342152(EURGBP, H1) Avg = 515
2020.06.13 09:17:35.151 342152(EURUSD、H1)数量= 480
2020.06.13 09:17:35.151 342152(EURUSD、H1)最小= 18
2020.06.13 09:17:35.151 342152(EURUSD、H1)最大= 17366
2020.06.13 09:17:35.151 352152(EURUSD、H1)最小= 18 2020.06.13 09:18:35.151 342152(EURUSD、H1)最小= 17366 2020.06.14 09:17:35.151 342152(EURCHF、H1)マックス= 480
2020.06.13 09:17:35.151 342152(EURUSD、H1)平均= 618
2020.06.13 09:17:35.151 342152(AUDCHF、H1)マックス= 480
2020.06.13 09:17:35.151 3.151 342152(USDCHF、H1) 数量=480
2020.06.13 09:17:35.151 342152(AUDCHF、H1) Min=126
2020.06.13 09:17:35.151 342152(CADCHF, H1)数量=480
2020.06.13 09:17:35.151 3.151 342152(AUDCHF、H1)マックス= 10477
2020.06.13 09:17:35.151 342152(EURCAD、H1)数量= 480
2020.06.13 09:17:35.151 342152(GBPUSD、H1)数量= 480
2020.06.13.13 09:17:35.152 342152(EURCAD、H1) Min = 123
2020.06.13 09:17:35.152 342152(GBPUSD、H1) Min = 112
2020.06.13 09:17:35.152 342152(ERCAD, H1) Max = 10485
2020.06.13 09:17:35.152 342152 (EURCAD, H1) Avg = 663
2020.06.13 09: 17: 35.152 342152 (GBPUSD, H1) Max = 10435
2020.06.13 09: 17: 35.152 342152 (GBPUSD, H1) Avg = 661
2020.06.13 09: 17: 35.152 342152 (EURCHF, H1) Min = 71
2020年.06.06.13 09: 17: 35.152 342152 (EURJPY, H1) Avg = 480
2020.06.13 09: 17: 35.152 342152 (USDCAD, H1) Avg = 480
2020.06.13 09: 17: 35.152 342152 (USDCAD, H1) Min = 54
2020.06.13 09: 17: 35.152 342152 (USDJPY, H1) Avg = 480 2020.06.13 09: 17: 35.152 352152 (USDJPY) Avg = 480 2020.06.13 09: 17: 35.152 342152 (EURJPY, H1) Min = 10
2020.06.13 09: 17: 35.152 342152 (EURJPY, H1) Max = 10487
2020.06.13 09: 17: 35.152 342152 (EURJPY, H1) Avg = 664
2020.06.13 09: 17: 35.152 342152 (EURJPY, H1) Avg = 664. "EuroJPYは、EURJPYとH1" "EURJPY は、"ユーロ円" "EURJPYは、" "ユーロ円" "ユーロ円" "H1 "です。13 09: 17: 35.152 342152 (EURNZD, H1) 数量 = 480
2020.06.13 09: 17: 35.152 342152 (EURNZD, H1) Min = 54
2020.06.13 09: 17: 35.152 342152 (EURNZD, H1) Max = 17426
2020.06.13 09: 16: 35.152342152 (EURNZD, H1) 数量 = 480 2020.06.14 09: 16: 35.163342152 (EURNZD) Max = 17442 06.06.13 09:17:35.152 342152 (EURNZD, H1) Avg = 620
2020.06.13 09:17:35.152 342152 (USDCHF, H1) Min = 32
2020.06.13 09:17:35.152 342152 (USDCHF, H1) Max = 17427
2020.06.13 09:17:35.152 342152 (USDCHF, H1) Avg = 649
2020.06.13 09: 17: 35.152 342152 (GBPCHF, H1) Max = 480
2020.06.13 09: 17: 35.152 342152 (GBPCHF, H1) Min = 32
2020.06.13 09: 17: 35.152342152 (GBPCHF、H1)Min = 32。152 342152 (GBPCHF, H1) Max = 17433
2020.06.13 09: 17: 35.152 342152 (GBPCHF, H1) Avg = 647
2020.06.13 09: 17: 35.152 342152 (AUDJPY, H1) Min = 480
2020.06.13 09: 17: 35.152 342152 (AUDJPY, H1) Min.= 47
2020.06.13 09: 17: 35.152 342152 (AUDJPY, H1) Max = 17415
2020.06.13 09: 17: 35.152 342152 (AUDJPY, H1) Avg = 640
2020.06.13 09: 17: 35.152 342152 (CADCHF, H1) Min = 48
2020.06.13 09: 17: 35.352342152 (ADCHF) H1.152 342152 (CADCHF, H1) Max = 17435
2020.06.13 09: 17: 35.152 342152 (CADCHF, H1) Avg = 637
2020.06.13 09: 17: 35.152 342152 (AUDCHF, H1) Avg = 662
2020.06.13 09: 17: 35.152 342152 (AUDUSD, H1) 数量 = 480
2020.06.13 09: 17: 35.152 342152 (CADCHF, H1) Evg = 762 2020.06.13 10: 17: 35.152342151 2020.06.13 09: 17: 35.152 342152 (AUDCHF) Avg = 762152 342152 (AUDUSD, H1) Min = 43
2020.06.13 09: 17: 35.152 342152 (AUDUSD, H1) Max = 17416
2020.06.13 09: 17: 35.152 342152 (AUDUSD, H1) Avg = 620
2020.06.13 09: 17: 35.152 342152 (GBPJPY, H1) 数量 = 480
2020.06.13 09: 17: 35.152342152 (BUDUSD) H2.13 09: 17: 35.152 342152 (GBPJPY, H1) Min = 13
2020.06.13 09: 17: 35.152 342152 (GBPJPY, H1) Max = 10468
2020.06.13 09: 17: 35.152 342152 (GBPJPY, H1) Avg = 660
2020.06.13 09: 17: 35.152 342152 (CHFJPY, H1) 数量 = 480
2020.06.06.13 09: 17: 35.152 342152 (CHFJPY, H1) Min = 11
2020.06.13 09: 17: 35.152 342152 (CHFJPY, H1) Max = 10474
2020.06.13 09: 17: 35.152 342152 (AUDNZD, H1) 数量=480
2020.06.13 09: 17: 35.152 342152 (AUDNZD, H1) Min = 61
2020.06.13 09: 17: 35.152 342152 (AUDNZD, H1) Max = 10491
2020.06.13 09: 17: 35.152 342152 (AUDNZD, H1) Avg = 663
2020.06.13 09: 17: 35.152 342152 (EURCHF, H1) Max = 17414
2020.06.13 09: 17: 35.152 352152 (AUDNZD, H1) Avg = 663 2020.06.14 10: 17: 35.152 352152 (AUDNZD, H1) Max = 664 20: 06.14 09: 16: 18: 16: 18: 18: 17152 342152 (EURCHF, H1) Avg = 646
2020.06.13 09: 17: 35.152 342152 (AUDCAD, H1) Max = 480
2020.06.13 09: 17: 35.152 342152 (AUDCAD, H1) Min = 100
2020.06.13 09: 17: 35.152 342152 (AUDCAD, H1) Max = 17421
2020年.06.06.13 09: 17: 35.152 342152 (AUDCAD, H1) Avg = 638
2020.06.13 09: 17: 35.152 342152 (USDCAD, H1) Max = 10488
2020.06.13 09: 17: 35.152 342152 (USDCAD, H1) Avg = 666
2020.06.13 09: 17: 35.152 342152 (CHFJPY, H1) Avg = 656
だから、すべてが同時に起こったのです。しかし、これはまだMT5の問題である可能性があります。他の同時接続端末で確認します。
もし、異なる端末で同じになるのであれば、問題はOSのプレーンにあることになります。
MT5 (ビルド2009)で確認したところ、すべてが高速で、実行時間は5ms以下
MT5 (ビルド2485)では、すべてが遅くなり、実行時間はしばしば200msを超える(特に50以上のチャートを開いている場合)
問題点の説明からコードを使用してみました: https://www.mql5.com/en/forum/342152
MT5 2009とMT5 2485の二つのバージョンのChartGetInteger関数実現を比較してみました、多分問題があるかと:
1............。
mfence; lock mov eax,[rax+2C];
2009年版では、次のようにしています。
2.また、ntdll_RtlEnterCriticalSectionのロジックと可能な滞留時間が大幅に変更されたようです。
以前(2009年)は、クリティカルセクションは受信値のペアをチェックするだけで、アトミックな操作は一切ありませんでした。
そして2485では、チャートのリンクリストオブジェクトをさらに列挙することができるようになった。
おそらく、新しいコンパイラへの移行の一環として、チャート関数で作業する際のクラッシュが修正されたとき(約2-3ヶ月前)に、この問題が発生する可能性があります。
MT5(build 2485)のChartGetInteger呼び出しの アセンブラコードを添付します。
MT5 (ビルド2009)で確認したところ、すべてが高速で、実行時間は5ms以下
MT5 (ビルド2485)では、すべてが遅くなり、実行時間はしばしば200msを超える(特に50以上のチャートを開いている場合)
問題記述のコードを使用しました https://www.mql5.com/en/forum/342152
ChartGetInteger関数の実現をMT5 2009とMT5 2485の2バージョンで比較しましたが、おそらく問題があると思います:
1.............。
mfence; lock mov eax,[rax+2C];
2009年版では、次のようにしています。
2.また、ntdll_RtlEnterCriticalSectionのロジックと可能な滞留時間が大幅に変更されたようです。
以前(2009年)は、クリティカルセクションは受信値のペアをチェックするだけで、アトミック演算は行わなかった。
そして2485では、チャート内のリンクリストオブジェクトをさらに列挙することができるようになった。
おそらく、新しいコンパイラへの移行の一環として、チャート関数で作業する際のクラッシュが修正されたとき(約2-3ヶ月前)に、この問題が発生する可能性があります。
MT5(build 2485)のChartGetInteger呼び出しの アセンブラコードを添付します。
非同期と同期という言葉を何か勘違いしているようですね。
ある関数が非同期であると言う場合、その関数は現在の実行スレッドではなく、他のスレッドで実行されることを意味します。
メインスレッドから非同期のChartSetInteger関数を呼び出すと、実際の実行は別のスレッドで行われるため高速に実行できます。
一方、ChartGetIntegerの同期関数を呼び出すと、スレッドの同期が必要となり、さらに時間がかかる場合があります。
この遅延は、並列スレッドがチャート構造体のデータを常に更新している場合(例えば、ユーザーがチャートウィンドウを移動したり、履歴をスクロールしたりした場合)に特に顕著になります。
ほとんどの場合、シンプルさと信頼性のために、そのチャートデータ構造には1つの同期オブジェクトが使用されます。
データの細分化」で実行速度を向上させようとすると、今度はデッドロックが発生したり、データが更新されなかったり、もっと重要な場所で速度低下が発生したりすることがあるのです。
一般的に、すでに安定して動いているものには手を出さないほうがいいと言われています。
ピークがチャート・コメントをレンダリングしていると仮定します。そうでなければ、チャート・キューが空のとき、ChartGetXXX関数呼び出し(注、同期を伴う呼び出し)は0.13ミリ秒かかります。
例えば、こんなインジケータをスケッチしてみました。
ChartGetInteger(0,CHART_FIRST_VISIBLE_BAR, 0)はマウス移動時に実行されます。
赤いグラフはこの関数の実行時間統計です。
画面全体をクリアにし、数千行のチャートを形成し、スケールを描き、テキスト情報ブロックを形成して画面に表示するBildChart関数に比べ、1桁の単純なクエリは何倍も遅く実行されます。
シンクロニシティ・アシンクロニシティによってそうなるはずだという学術的な話は、すべて「ブラック・イズ・ホワイト」として認識されています。
相場表の完全な配列があれば、カンヴァスをベースにした独自のチャートを作成し、そのチャートの特性の完全なテーブルを持ち、ナノ秒単位でアクセスすることができますので、問題ありません。そしてそれとともに、チャートのカンヴァスは別のスレッドでレンダリングされます。
ifを書くのを忘れた。そんなアホな人に向けて、メッセージを綴るのはいかがなものかと。
単純に一桁の数字を問い合わせるだけでも、画面全体をクリアにして数千行のグラフを形成し、スケールを描き、テキスト情報ブロックを形成して画面に出力するBildChart関数より何倍も遅いのです。