まあ、手に入ったら比較ベンチマークをやってみるよ。
MQL5BookのToyJson3を含む4つのライブラリの速度を比較した。サンプルjsonとして、Binanceの "exchangeInfo "に対する768Kbのサイズのレスポンスを取りました。ライブラリが文字列からそれを読み取るとき、それは全体として解析され、その後、私は1つのシンボルを選択し、そのすべてのデータを読み込みます。ループで100回。
MetaTrader 5 x64 build 5370 started for MetaQuotes Ltd. Windows 10 build 19045, 4 x AMD Ryzen 3 PRO 3200 GE w/ Radeon Vega, AVX2, 6 / 13 Gb memory, 241 / 427 Gb disk, UAC, GMT+3 cpu='AVX2 + FMA3'
結果(クエリー処理時間):
99.5 ms - JAson 1.12(https://www.mql5.com/ja/code/13663)
85.5 ms - JAson 1.13
46.9 ms - ToyJson3 (https://www.mql5.com/ru/forum/459079/page4#comment_57805801)
41 ms - JSON(https://www.mql5.com/ja/code/53107)
1132 ms - JsonNode (このライブラリ)
38 ms - JSONに基づく私の実装
追記:むかしむかし、ここに別の、非常にシンプルなライブラリが登場したようだ。しかし、もう見失ってしまった。
追記:計測用のスクリプトは公開していない。コードはまったく見苦しい形になっている。
MQL5BookのToyJson3を含む4つのライブラリの速度を比較した。サンプルjsonとして、Binanceの "exchangeInfo "に対する768Kbのサイズのレスポンスを取りました。ライブラリが文字列からそれを読み取るとき、それは全体として解析され、その後、私は1つのシンボルを選択し、そのすべてのデータを読み込みます。100回のループで。
結果(クエリー処理時間):
99.5 ms - JAson 1.12(https://www.mql5.com/ja/code/13663)
85.5 ms - JAson 1.13
46.9 ms - ToyJson3 (https://www.mql5.com/ru/forum/459079/page4#comment_57805801)
41 ms - JSON(https://www.mql5.com/ja/code/53107)
1132 ms - JsonNode (このライブラリ)
38 ms - JSONに基づく私の実装
追記:むかしむかし、ここに別の、非常に簡素化されたライブラリが出現したようだ。しかし、もう見失ってしまった。
追記:計測用のスクリプトは公開していない。コードはまったく見苦しい形になっている。
json文字列またはファイルを投稿してもらえますか?
https://fapi.binance.com/fapi/v1/exchangeInfo
https://eapi.binance.com/eapi/v1/exchangeInfo
778 KB (796,729 バイト)。
json文字列またはファイルを投稿してもらえますか?
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事「JSONをマスターする:MQL5で独自のJSONリーダーをゼロから作成する」はパブリッシュされました:
本記事では、そのギャップを埋めるべく、MQL5で自作のJSONリーダーを作成する方法を紹介します。その過程で、JSONを解析するための基本概念を解説し、さまざまなJSON要素(オブジェクト、配列、文字列、数値、ブール値、null値など)を柔軟に扱えるクラス構造の作り方を一歩一歩説明します。最終的には、MetaTrader 5環境でJSON文字列を自在に解析・操作できるようになることを目指します。
本記事の構成は、他のMQL5関連記事と同様の流れに沿いながらも、JSONの解析と活用に特化した内容となっています。本記事は全体で5つの主要セクションに分かれています。「はじめに」(今ご覧いただいているこのセクション)に始まり、JSONの基礎とそれがMQL5においてどのように活用できるかを深掘りした解説へと続きます。その後、基本的なJSONパーサーをゼロから構築するためのステップバイステップのガイドを紹介し、さらにJSONを扱う上での高度な機能について探っていきます。最後に、全体のコードリストとまとめを掲載し、記事を締めくくります。
作者: Sahil Bagdi