JP2011010124A - 市況データ圧縮システム及びプログラム - Google Patents

市況データ圧縮システム及びプログラム Download PDF

Info

Publication number
JP2011010124A
JP2011010124A JP2009152831A JP2009152831A JP2011010124A JP 2011010124 A JP2011010124 A JP 2011010124A JP 2009152831 A JP2009152831 A JP 2009152831A JP 2009152831 A JP2009152831 A JP 2009152831A JP 2011010124 A JP2011010124 A JP 2011010124A
Authority
JP
Japan
Prior art keywords
data
bit string
bit
value
compression
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009152831A
Other languages
English (en)
Other versions
JP5044614B2 (ja
Inventor
Yukitake Yatsu
如健 矢津
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2009152831A priority Critical patent/JP5044614B2/ja
Publication of JP2011010124A publication Critical patent/JP2011010124A/ja
Application granted granted Critical
Publication of JP5044614B2 publication Critical patent/JP5044614B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】市況データを比較的簡素な演算処理で高速に圧縮する。
【解決手段】市況データから売気配1値段〜5値段を抽出し、この圧縮グループに属するデータの数を示す可変長のビット列を生成し、その先頭にビット幅を定義する固定長のビット列を付加してデータ数表現用のビット列を生成し、売気配1値段を基準値とし、これを可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加して基準値表現用のビット列を生成し、売気配2の値段を基準値との差分のビット列に置き換え、売気配3の値段を売気配2値段との差分のビット列に置き換え、売気配4の値段を売気配3値段との差分のビット列に置き換え、売気配5の値段を売気配4値段との差分のビット列に置き換え、基準値以外のビット列を接続し、その先頭に各ビット列のビット幅を定義する固定長のビット列を付加して後続データ表現用のビット列を生成し、各ビット列を接続して圧縮データを生成する市況データ圧縮システム10。
【選択図】図6

Description

この発明は市況データ圧縮システム及びプログラムに係り、特に、証券取引所から送信された株取引に係る市況データを高速に圧縮する技術に関する。
証券取引所のコンピュータからは、株式の売買取引に係る様々なデータがほぼリアルタイムで情報ベンダーのコンピュータに送信され、金融機関や証券会社等のコンピュータは、この情報ベンダーのコンピュータを介して市況データを逐次取得している。
この市況データは、一旦所定の記憶手段に格納された後、株式投資の判断材料として、あるいは取引終了後における執行評価の比較資料として利用される。また、この市況データに基づいて仮想の注文情報が生成され、株取引のシミュレーションに利用することも行われている。
この市況データは、各銘柄の板情報(気配値、数量、現在値、出来高等)に変化が生じる度に送信されるものであり、1日で数百万件のレコード数に達するため、記憶手段に格納する際には当然ながら圧縮処理が施されている。
ただし、既存の一般的な圧縮エンジンの場合、圧縮処理の高速化よりも圧縮率の向上に重点が置かれており、そのために複雑な演算処理が実行されるため、ミリ秒単位で送信される株式市況データの圧縮には不向きであり、処理には遅延が生じていた。
これに対し、特許文献1には、株価データの特性に着目することで、より効率的なデータ圧縮を企図した圧縮方法が開示されている。
この圧縮方法は、株価データに含まれる始値、高値、安値、終値の値の関係と出来高の値とに基づいて2種類の分類パターンを予め設定しておき、入力された株価データが第1分類のどのパターンに属するかを識別してそのパターンを示す第1分類情報を生成し、この株価データが第2分類のどのパターンに属するかを識別してそのパターンを示す第2分類情報を生成し、生成された第1分類情報と第2分類情報とを組み合わせて一つの分類識別データCを生成し、上記株価データから安値の数値データLを抽出し、上記株価データに基づき、始値と安値の差の数値データD1(D1 =S−L)と、高値と安値の差の数値データD2(D2 =H−L)と、及び終値と安値の差の数値データD3(D3 =E−L)を生成し、始値、高値、安値及び終値の数値データのうち同値がk個(k=2,3,又は4)ある場合、前記数値データD1 ,D2 ,D3 のうち(4−k)個の異なる数値データD4 を抽出し、上記株価データから出来高の数値データTを抽出し、生成された上記分類識別データCと、抽出された安値の数値データL、(4−k)個の異なる数値データD4 及び出来高の数値データTから、1つの銘柄の株価データに関するバイナリーデータを生成するものである。
特許第3307909号
しかしながら、特許文献1に記載された圧縮方法の場合には、「株価データ」の圧縮と謳いながらも、始値、高値、安値、終値のみが圧縮対象であり、気配情報に関する圧縮処理が対象外とされている点で、市況データの圧縮技術としての利用価値に限界があった。すなわち、市況データには、「売注文」と「買注文」毎に複数(最大で5つ)の気配値段、気配数量及び時刻情報が含まれており、この市況データ中で最も大きな割合を占める気配情報の圧縮に適用できない点で、実用性に欠ける技術であると評価せざるを得ない。
また、始値、高値、安値、終値の圧縮にしても、事前に数多くのパターンを設定しておく必要があり、圧縮処理時にはパターンマッチングや中間データの生成処理を何度も繰り返す必要があることから、圧縮率の向上については兎も角、処理速度の向上には疑問が残ると言わざるを得ない。
この発明は、このような従来の問題を解決するために案出されたものであり、市況データ中の気配情報を含めた各データの特性にマッチした圧縮ロジックを適用することにより、全体として比較的簡素な演算処理で済むようにし、この結果、圧縮処理の高速化を実現することを目的としている。
上記の目的を達成するため、請求項1に記載した市況データ圧縮システムは、証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、相互の値の大きさに一定の順序性を備えた所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段と、当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段と、この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段と、各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段と、上記基準値と、2番目に値の小さいデータとの差分を算出し、当該データの値をこの差分を示すビット列に置き換える手段と、この2番目に値の小さいデータ以外にもデータが存在する場合には、各データを値の小さい順に並べて相互間の差分を算出し、この差分を示すビット列によって値の大きい方のデータの値を置き換える手段と、この差分を示すビット列の中で最もビット幅の広いものを特定する手段と、この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段と、このビット幅が揃えられたビット列を一定の順序で接続する手段と、この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段と、上記の各ビット列を所定の順序で接続して圧縮データを生成する手段を備えたことを特徴としている。
請求項2に記載した市況データ圧縮システムは、証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段と、当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段と、この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段と、各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段と、上記基準値と、他のデータの値との差分を算出し、それぞれのデータの値をこの差分を示すビット列に置き換える手段と、この差分を示すビット列の中で最もビット幅の広いものを特定する手段と、この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段と、このビット幅が揃えられたビット列を一定の順序で接続する手段と、この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段と、上記の各ビット列を所定の順序で接続して圧縮データを生成する手段を備えたことを特徴としている。
請求項3に記載した市況データ圧縮システムは、請求項2のシステムであって、さらに、上記基準値に認定されたデータの位置を示す可変長のビット列を生成する手段と、この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値位置表現用のビット列を生成する手段と、この基準値位置表現用のビット列を、上記圧縮データの所定の位置に挿入する手段を備えたことを特徴としている。
請求項4に記載した市況データ圧縮システムは、請求項1〜3のシステムであって、上記市況データに含まれる各種データ項目の中から複数のデータ項目の値を同一の圧縮グループを構成するデータとして抽出した後に、この圧縮グループに含まれる各データの値間に10のn乗の最大公約数が存在するか否かが判定され、この10のn乗の最大公約数が存在する場合に、各データの値が、当該最大公約数でそれぞれの値を除した商に置き換えられ、上記基準値表現用のビット列及び上記後続データ表現用のビット列が、この商に基づいて生成され、さらに、上記10のn乗のnを表す固定長のビット列が、上記圧縮データの所定の位置に挿入されることを特徴としている。
請求項5に記載した市況データ圧縮システムは、請求項1〜4のシステムであって、上記ビット幅を定義する固定長のビット列が、「ビット幅−1」を示すビット列よりなることを特徴としている。
請求項6に記載した市況データ圧縮システムは、請求項1〜5のシステムであって、さらに、上記市況データに含まれる各種データ項目の中で、所定のデータ項目に係る固定長のデータを個別圧縮の対象として抽出する手段と、この固定長データの先頭部に付加された0を除去して、可変長のビット列に変換する手段と、このビット列の先頭に、そのビット幅を定義する固定長のビット列を付加して圧縮データを生成する手段を備えたことを特徴としている。
請求項7に記載した市況データ圧縮プログラムは、コンピュータを、証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、相互の値の大きさに一定の順序性を備えた所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段、当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段、この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段、各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段、上記基準値と、2番目に値の小さいデータとの差分を算出し、当該データの値をこの差分を示すビット列に置き換える手段、この2番目に値の小さいデータ以外にもデータが存在する場合には、各データを値の小さい順に並べて相互間の差分を算出し、この差分を示すビット列によって値の大きい方のデータの値を置き換える手段、この差分を示すビット列の中で最もビット幅の広いものを特定する手段、この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段、このビット幅が揃えられたビット列を一定の順序で接続する手段、この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段、上記の各ビット列を所定の順序で接続して圧縮データを生成する手段として機能させることを特徴としている。
請求項8に記載した市況データ圧縮プログラムは、コンピュータを、証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段、当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段、この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段、各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段、上記基準値と、他のデータの値との差分を算出し、それぞれのデータの値をこの差分を示すビット列に置き換える手段、この差分を示すビット列の中で最もビット幅の広いものを特定する手段、この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段、このビット幅が揃えられたビット列を一定の順序で接続する手段、この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段、上記の各ビット列を所定の順序で接続して圧縮データを生成する手段として機能させることを特徴としている。
請求項1に記載した市況データ圧縮システム及び請求項7に記載した市況データ圧縮プログラムにあっては、気配値段のように異なるデータ項目の値の大きさに順序性が存在する複数のデータに関して、最も小さい値を基準値と認定し、他のデータを相互間の差分として表現することにより、極めて単純な演算処理によって複数のデータをまとめて圧縮することができる。この結果、株式市況データをほぼリアルタイムで圧縮することが可能となる。
請求項2に記載した市況データ圧縮システム及び請求項8に記載した市況データ圧縮プログラムにあっては、複数のデータ項目の値が同一の圧縮グループを構成する値として抽出され、その中で最も小さい値を基準値と認定し、他のデータを当該基準値との差分として表現することにより、極めて単純な演算処理によって複数のデータをまとめて圧縮することができる。この結果、株式市況データをほぼリアルタイムで圧縮することが可能となる。
請求項2の圧縮システムの場合、同一の圧縮グループに属するデータの特性から基準値が一意に定まるのであれば、復元時に基準値がどのデータ項目に該当するかを判別可能となるが、データ間の大きさについてこのような規則性が存在しない圧縮グループについては、復元時に基準値がどのデータ項目に該当するのかが判別できなくなる。
これに対し、請求項3の圧縮システムにあっては、圧縮データが基準値位置表現用のビット列を備えているため、復元時に基準値がどのデータ項目に該当するのかが明確となる。
請求項4の圧縮システムの場合、圧縮グループに属する各データに10のn乗の最大公約数が存在する場合には、事前に各データの値が当該最大公約数で除算され、その商に置き換えられるため、最終的な圧縮データの容量をさらに低減することが可能となる。株式の値段については、10円単位や100円単位のように刻み幅が限定されている銘柄が多く存在し、株式の取引数量についても、100株単位や1000株単位のように単元株数ごとの取引となるため、予め10のn乗の最大公約数で割り算しておくことが有効である。
請求項5の圧縮システムのように、可変長のビット列のビット幅を固定長のビット列で定義するに際し、ビット幅そのものではなく「ビット幅−1」で表現することにより、この固定長のビット列自身のビット幅を節約することが可能となる。
請求項6に記載した市況データ圧縮システムによれば、市況データの中でグループ圧縮の対象外となるものについても、可変長のビット列に変換することにより、その冗長性を個別に排除することが可能となる。
図1は、この発明に係る市況データ圧縮システム10の全体構成を示すブロック図であり、市況データ取得部11と、市況データ記憶部13と、市況データ圧縮部12と、圧縮データ記憶部14と、圧縮データ送信部15とを備えている。
上記の市況データ取得部11、市況データ圧縮部12及び圧縮データ送信部15は、コンピュータのCPUが、OS及び専用のアプリケーションプログラムに従って必要な処理を実行することにより実現される。また、市況データ記憶部13及び圧縮データ記憶部14は、同コンピュータのハードディスク内に設けられている。
市況データ取得部11には、通信ネットワークを介して情報ベンダーのコンピュータ18が接続されており、証券取引所のホストコンピュータ19から提供された市況データ(ティックデータ)が、同コンピュータ18を経由して断続的に送信される。市況データ取得部11は、この市況データを市況データ記憶部13に格納する。
市況データ圧縮部12は、この情報ベンダーのコンピュータ18から送信された市況データに対し、後述の圧縮処理を順次施して圧縮データを生成した後、圧縮データ記憶部14に格納する。
この圧縮データ記憶部14に格納された圧縮データは、圧縮データ送信部15により、ネットワークを介して接続されたクライアント端末22や注文情報生成システム20に送信される。
クライアント端末22では、この送信された圧縮データが圧縮データ解凍部25によって解凍される。そして、この解凍された市況データは、専用のアプリケーションによって加工され、リアルタイムの株価情報としてディスプレイに表示される。この株価情報を参照することにより、トレーダは株取引を執行する。
また、注文情報生成システム20では、圧縮データ送信部15から送信された圧縮データが圧縮データ解凍部21によって解凍され、市況データ記憶部23に格納される。そして、この解凍された市況データに基づき、仮想の注文情報が注文情報生成部24によって推定的に生成され、注文情報記憶部26に格納される。
この注文情報記憶部26内に蓄積された多数の注文情報は、仮想取引システム28に提供され、クライアント端末22との間で展開される株取引シミュレーションに利用される。
上記のクライアント端末22の圧縮データ解凍部25は、市況データ圧縮部12による圧縮処理とは逆の工程を経ることにより、圧縮データを元の市況データに復元する機能を備えており、予め同端末22にセットアップされている。
また、上記注文情報生成システム20の圧縮データ解凍部21も同様に、市況データ圧縮部12による圧縮処理と逆の工程を経ることにより、圧縮データを元の市況データに復元する機能を備えており、予め同システム20内にセットアップされている。
図2は、情報ベンダーのコンピュータ18から送信される市況データの中で、市況データ取得部11によって抽出され、市況データ記憶部13内に格納されるデータ項目を例示するものであり、送信時刻、銘柄コード、市場区分、現在値、現在値時刻、始値、始値時刻、高値、高値時刻、安値、安値時刻、累積出来高、累積約定金額、日中VWAP、売気配1値段、売気配1数量、売気配1時刻、売気配2値段、売気配2数量、売気配2時刻、売気配3値段、売気配3数量、売気配3時刻、売気配4値段、売気配4数量、売気配4時刻、売気配5値段、売気配5数量、売気配5時刻、買気配1値段、買気配1数量、買気配1時刻、買気配2値段、買気配2数量、買気配2時刻、買気配3値段、買気配3数量、買気配3時刻、買気配4値段、買気配4数量、買気配4時刻、買気配5値段、買気配5数量、買気配5時刻…等の多数のデータ項目を備えている。
理解の便宜上、各データ項目の値欄には10進数に換算した数値が表記されているが、実際には2進数の数値が固定長(64bit、32bit等)で各値欄に格納されている。
情報ベンダーのコンピュータ18からは、市況に変化が生じる度に新たな市況データが送信され、これを受け取った市況データ取得部11は、図2のデータを最新の状態に更新する。
つぎに、市況データの特性について説明する。
(1)「値段」について
株式の取引所取引では、売買や気配の値段は呼値の刻みごとになる。例えば、値段が3,000円を超えて30,000円以下の場合は、呼値の刻みは10円となり、売買値段は10円の倍数となる。
また、取引は「制限値幅」という一定の範囲内でのみ行われる。実際には値段は制限値幅の範囲の中の、一部の領域に固まっている場合が多い。
さらに、気配値段には順序に応じた大小関係が存在する。すなわち、売の場合は最良気配がもっとも安く、第2気配、第3気配、第4気配…と順に高くなってゆき、買はその逆となる。
(2)「数量」について
株式の取引所取引では、売買の数量は、銘柄ごとに決まった単元株数の倍数で行われる。例えば、株式会社野村総合研究所の株は、100株単位での売買となる。
(3)「時刻」について
時刻は、取引所の開いている時間帯内の値となる。また、活発に取引が行われるような銘柄(=板情報のレコード数が多い銘柄)については、時刻の値自体が近い範囲に固まっていることが多い。
(4) システム的特性
固定bit幅の整数値として表現される項目(値段、数量、時刻等)は、それぞれの項目の値がとり得る最大値を格納できるように、十分な広さのbit幅が採用されている。しかしながら、多くの場合は採用したbit幅の一部のみを使用するだけの小さな値が設定される。
例えば、「数量」は32bit整数の場合で43億弱までの値が表現可能であるが、多くの取引では10万株などといったレベルの値が使われるだけである。
以上に掲げた市況データの特性を踏まえた上で、市況データ圧縮部12による圧縮処理を具体的に説明する。
図3は、「累積出来高」の圧縮工程を模式的に示すものであり、10進数で「7526200」、2進数で「00000000011100101101011100111000」の数値(32bit)が、可変ビット化圧縮処理により、「1011011100101101011100111000」の数値(28bit)に変換される様子が描かれている。
すなわち、累積出来高項目の値には予め32 bit固定のbit幅が設定されているため、「7526200」を2進数で表現する場合、本来は「11100101101011100111000(23 bit)」で済むところ、先頭部分に余計な「000000000」を挿入することにより、32 bitに調整されている。
そこで市況データ圧縮部12は、まず先頭の「000000000」を除去した数値「11100101101011100111000」を、可変bit幅のデータとして、メモリ上に設定されたデータ部30に格納する。
同時に市況データ圧縮部12は、データ部30に格納されたデータのbit幅を定義する5bit固定の数値を、メモリ上に設定された「データ部幅−1」の項目31に設定する。
図においては、23bitのビット列である「11100101101011100111000」がデータ部30に格納されているため、「23−1=22」を表す「10110」のビット列が「データ部幅−1」の項目31に充填されている。
固定bit幅で表現された数値を可変bit幅で表現し直すことで、余計な0詰めを除去してデータ量自体を低減することができるが、これだけでは復元時にデータ間の区切りが判別できなくなるため、上記のように可変bit幅を特定するための5bit固定のビット列を「データ部幅−1」に設定することとしている。
ここで、単純に「データ部幅」とせず「データ部幅−1」としているのは、消費するbit幅を節約するためである。すなわち、32 bit固定のデータ項目の場合、データ部30に格納されるデータの最大bit幅は当然に32 bitであり、「32」を2進数で表現すると「100000」となり、6桁が必要となる。これに対し、「データ部幅−1」としておけば、「32−1=31」となり、「31」の2進数表現は「11111(5桁)」であることから、1桁分の節約となる。
図4は、圧縮前の固定bit幅と「データ部幅−1」のbit幅との対応関係を表すテーブルであり、圧縮前の固定bit幅が8bitの場合には3bit固定で表現され、圧縮前の固定bit幅が16 bitの場合には4bit固定で表現され、圧縮前の固定bit幅が64 bitの場合には6bit固定で表現されることが示されている。
復元時には、当該データ項目の固定bit幅が32 bitであることから、先頭5桁の「10110」が「データ部幅−1」の値であると認定され、これに続く23桁の数値「11100101101011100111000」がデータ部30に格納されたデータ本体の値であると認定される。あとは、「11100101101011100111000」の先頭に「000000000」を挿入することにより、元の32 bit固定のデータが復元される。
図5は、「累積約定金額」の圧縮工程を模式的に示すものであり、10進数で「14120170200」、2進数で「0000000000000000000000000000000101010000101001101010110111110000」の数値(64 bit)が、可変ビット化圧縮処理により「011111 10101000010100110101011011111000」のビット列(38 bit)に変換される様子が描かれている。
すなわち、市況データ圧縮部12は、まず「14120170200」を64 bit固定の2進数で表現した上記の値から余計なゼロ詰め部分を除去した数値(32 bit)をデータ部30に格納すると共に、「データ部幅−1」の項目31に「32−1=31」を6bit固定の2進数で表現した「011111」を設定している。
図6は、「売気配値段(整数部)」の圧縮工程を模式的に示すものである。
図2に示したように、元の市況データに含まれる各種値段には、小数点以下の数値が含まれているため、市況データ圧縮部12は、まずは整数部の数値と小数部の数値を分けて圧縮処理することとしている(小数部の圧縮については、後に詳述する)。
また、売気配1値段〜売気配5値段には、値が順に大きくなっていくという規則性があるため、同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
まず市況データ圧縮部12は、図6(a)及び(b)に示すように、売気配1値段〜売気配5値段の値である1869、1870、1871、1872、1873について、共通除数圧縮処理を施す。
ここで「共通除数圧縮」とは、10のn乗の最大公約数が存在する場合には、それぞれの値を当該最大公約数で除した商に変換する処理を意味している。
図6(a)に示した例では、各値段間に10のn乗の最大公約数が存在しないため、圧縮前(図6(a))と圧縮後(図6(b))で値に変化が現れていないが、図7に示すように、売気配1値段〜売気配5値段の各値段である3700、3710、3720、3730、3740間に10の1乗の最大公約数が存在している場合には、共通除数圧縮処理により、それぞれの値が「370、371、372、373、374」に圧縮される。
呼値(値付けの単位)が10円、100円、1000円等に限定されている価格帯の銘柄の場合には、上記のように各気配の値段間に10のn乗の最大公約数が存在することになり、圧縮効果が現れる。
つぎに市況データ圧縮部12は、図6(c)に示すように、各値に対して順序差分圧縮処理を施す。
ここで「順序差分圧縮」とは、同じ圧縮グループに属する項目間に値の大小に係る順序性が存在する場合に、最も値が小さくなる項目の値を基準値と認定し、それ以外の値を相互間の差分で表現する圧縮処理を意味している。
図6(b)の例では、売気配1値段が「1869」で最も小さいため、そのまま基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し売気配2値段は「1870」であり、基準値に対して「+1」であるため、値として差分の「1」が格納される。また、売気配3値段は「1871」であり、売気配2の値に対して「+1」であるため、値として差分の「1」が格納される。また、売気配4値段は「1872」であり、売気配3の値に対して「+1」であるため、値として差分の「1」が格納される。さらに、売気配5値段は「1873」であり、売気配4の値に対して「+1」であるため、値として差分の「1」が格納される。
「データ数」の項目33には、当該圧縮グループに属する項目の総数である「5」が設定されている。
また「基準値位置」の項目34には、先頭の項目(売気配1値段)を示す「0」が設定されている。もっとも、売気配値段の場合には売気配1値段の値が必ず基準値として認定されるため、基準値位置の設定を省略することも可能である。
なお、図6(a)〜(c)においては、理解の便宜上、各値を10進数で表現しているが、市況データ圧縮部12は、実際には2進数の値に対して上記の圧縮処理を施す(以下同様)。
つぎに市況データ圧縮部12は、図6(d)に示すように、これまでの圧縮処理の結果を接続することにより、以下のビット列を生成する。
「100000101010010101110100110100001111」(36bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「10」は、圧縮方法が「共通除数圧縮+順序差分圧縮」であることを示す識別コードである。
また、次の「10のn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定するビット列を記述する部分であり、今回は10のn乗の最大公約数が存在しなかったため、「000」が充填されている。これに対し、仮に10のn乗のnが「1」であった場合には、「001」が充填されることとなる。
「データ数/データ部」の項目38には、当該圧縮グループに含まれるデータ数である「5」の2進数表現である「101」が充填されている。
また、この「データ数/データ部」の項目38は可変bit幅であり、圧縮グループに含まれるデータ数の多寡に応じて桁数が変動するため、「データ数/データ部幅−1」の項目37に「データ数/データ部」に充填された値のbit幅を特定する3bit固定のビット列が設定されている。図6(d)においては、「データ数/データ部」に3 bitのビット列が充填されているため、「3−1=2」を示す「010」が設定されている。
「基準値/データ部」の項目40には、当該圧縮グループにおける基準値であり「1869」の2進数表現である「11101001101」が充填されている。
また、この「基準値/データ部」は可変bit幅であり、基準値の大小に応じて桁数が変動するため、「基準値/データ部幅−1」の項目39に「基準値/データ部」に充填された値のbit 幅を特定する6 bit固定のビット列が設定されている。図6(d)においては、「基準値/データ部」に11bitのビット列が充填されているため、「11−1=10」を示す「001010」が設定されている。
「後続データ/データ部」の項目43には、基準値が認定された項目以外の項目(具体的には「売気配2値段」〜「売気配5値段」)に係る順序差分圧縮の結果が、上から「1/1/1/1」のように縦一列に描画されているが、これらは実際には「1111」のように横一列にメモリ上に配置される。
また、この「後続データ/データ部」は可変bit幅であり、項目相互間の差分の大小に応じて桁数が変動するため、「後続データ/データ部幅−1」の項目42に「後続データ/データ部」に充填された値のbit 幅を特定する数値が可変bit幅で設定されている。図6(d)においては、「後続データ/データ部」にそれぞれ1bitのビット列が充填されているため、「1−1=0」を示す「0」が設定されている。
さらに、この「後続データ/データ部幅−1」は可変bit幅であり、「後続データ/データ部」に充填された各数値の大小に応じて桁数が変動するため、「後続データ/データ部幅−1の表現幅−1」の項目41に「後続データ/データ部幅−1」に充填された値のbit幅を特定する数値が3bit固定で設定されている。図6(d)においては、「後続データ/データ部幅−1」に1 bitの数値が充填されているため、「1−1=0」を示す「000」が設定されている。
このように、「後続データ/データ部」のbit幅を「後続データ/データ部幅−1(可変bit幅)」及び「後続データ/データ部幅−1の表現幅−1(3bit固定)」の2段階で規定することにより、全体のデータ量を節約することが可能となる。
すなわち、圧縮前の売気配値段のデータ項目は64bitであるため、「後続データ/データ部」には最大64 bitの値が格納される可能性がある。このため、仮にこの64 bitを「後続データ/データ部幅−1(固定長)」のみで規定するとなると、「64−1=63=111111(2進数)」、すなわち6bitを予め確保しておく必要がある。これに対し、上記のように可変長(後続データ/データ部幅−1)と固定長(後続データ/データ部幅−1の表現幅−1)を組み合わせた2段階でbit幅を定義することにより、「000+0=4bit」で済んでいる。
もちろん、「後続データ/データ部幅−1」は可変長であるため、この項目に4bit以上の数値が充填された場合には6bitを超えることとなるが、その確率は比較的低いため、実用上は問題ない。
圧縮前の売気配1値段〜売気配5値段のデータ項目は、それぞれが64bit固定のデータ長を備えているため、合計で64×5=320bitのデータ量に達していたところ、上記の圧縮処理を施すことにより、グループ全体で36bitにまで容量が低減されている。
上記の圧縮データを復元する際、注文情報生成システム20の圧縮データ解凍部21及びクライアント端末22の圧縮データ解凍部25(以下「圧縮データ解凍部21等」)は、まず先頭の2bit固定のデータ「10(圧縮方法)」に基づいて共通除数圧縮及び順序差分圧縮が施されていることを認識すると共に、次の3bit固定のデータ「000(10のn)」により、共通除数圧縮については復元処理が不要であることを認識する。
続く「010(データ数/データ)」及び「101(データ数/データ部)」のビット列により、圧縮データ解凍部21等は売気配値段に係る5件分のデータが含まれていることを認識する。
つぎに圧縮データ解凍部21等は、続く「001010(基準値/データ部幅−1)」のビット列により、基準値のビット幅が「11」であることを認識し、続く11個分の数値「11101001101」を基準値として取得する。
つぎに圧縮データ解凍部21等は、「11101001101」の先頭に0を53個挿入することにより、元の売気配1値段の整数部(64bit固定長)を再現する。
つぎに圧縮データ解凍部21等は、続く「000(後続データ/データ部幅−1の表現幅−1)」及び「0(後続データ/データ部幅−1)」のビット列により、後続データのビット幅が「1」であることを認識し、続く1個分の数値「1」を基準値に対する差分データとして取得する。
つぎに圧縮データ解凍部21等は、基準値である「11101001101」に「1」を加算して「11101001110」を導き出し、その先頭に0を53個挿入することにより、元の売気配2値段の整数部(64bit固定長)を再現する。
以後、圧縮データ解凍部21等は上記と同様の処理を3回繰り返し、売気配3値段、売気配4値段及び売気配5値段の整数部(それぞれ64bit固定長)を再現する。
図8は、「買気配値段(整数部)」の圧縮工程を模式的に示すものである。
買気配1値段〜買気配5値段にも、値が順に小さくなっていくという規則性があるため、同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
まず市況データ圧縮部12は、図8(a)及び(b)に示すように、買気配5値段〜買気配1値段の値である1861、1865、1866、1867、1868について、上記と同様の共通除数圧縮処理を施す。
ただし、図8(a)に示した例では各値段間に10のn乗の最大公約数が存在しないため、圧縮前(図8(a))と圧縮後(図8(b))で値に変化は生じていない。
つぎに市況データ圧縮部12は、図8(c)に示すように、各値に対して順序差分圧縮処理を施す。
図8(b)の例では、買気配5値段が「1861」で最も小さいため、そのまま基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し買気配4値段は「1865」であり、基準値に対して「+4」であるため、値として差分の「4」が格納される。また、買気配3値段は「1866」であり、買気配2の値に対して「+1」であるため、値として差分の「1」が格納される。また、買気配2値段は「1867」であり、買気配3の値に対して「+1」であるため、値として差分の「1」が格納される。さらに、買気配1値段は「1868」であり、買気配2値段に対して「+1」であるため、値として差分の「1」が格納される。
「データ数」の項目33には、当該圧縮グループに属する項目の総数である「5」が設定されている。
また「基準値位置」の項目34には、先頭の項目(買気配5値段)を示す「0」が設定されている。
つぎに市況データ圧縮部12は、図8(d)に示すように、これまでの圧縮処理の結果を接続することにより、以下のビット列を生成する。
「100000101010010101110100010100110100001001001」(45bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「10」は、圧縮方法が「共通除数圧縮+順序差分圧縮」であることを示す識別コードである。
また、次の「10のn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10のn乗の最大公約数が存在しなかったため、「000」が充填されている。
「データ数/データ部」の項目38には、当該圧縮グループに含まれるデータ数である「5」の2進数表現である「101」が充填されている。
また、この「データ数/データ部」の項目38は可変bit幅であり、圧縮グループに含まれるデータ数の多寡に応じて桁数が変動するため、「データ数/データ部幅−1」の項目37に「データ数/データ部」に充填された値のbit幅を特定する3bit固定の数値が設定されている。図6(d)においては、「データ数/データ部」に3 bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
「基準値/データ部」の項目40には、当該圧縮グループにおける基準値であり「1861」の2進数表現である「11101000101」が充填されている。
また、この「基準値/データ部」は可変bit幅であり、基準値の大小に応じて桁数が変動するため、「基準値/データ部幅−1」の項目39に「基準値/データ部」に充填された値のbit 幅を特定する6 bit固定の数値が設定されている。図8(d)においては、「基準値/データ部」に11bitの数値が充填されているため、「11−1=10」を示す「001010」が設定されている。
「後続データ/データ部」の項目43には、基準値が認定された項目以外の項目(具体的には「買気配4値段」〜「買気配1値段」)に係る順序差分圧縮の結果が、上から「100/001/001/001」のように縦一列に描画されているが、これらは実際には「100001001001」のように横一列にメモリ上に配置される。
なお、この「後続データ/データ部」の項目43に3bitが割り当てられているのは以下の理由による。まず、買気配4値段の基準値に対する差分が「4」であるため、2進数で表現する場合には「100」と3桁を必要とする。これに対し、買気配3値段と買気配4値段間の差分、買気配2値段と買気配3値段間の差分、買気配1値段と買気配2値段間の差分はそれぞれ「1」であるため、本来であれば1bitで表現可能であるが、同項目中の最大値である「100」に揃えるために、敢えて「001」の値が設定されている。
この「後続データ/データ部」は可変bit幅であり、項目相互間の差分の大小に応じて桁数が変動するため、「後続データ/データ部幅−1」の項目42に「後続データ/データ部」に充填された値のbit 幅を特定する数値が可変bit幅で設定されている。図8(d)においては、「後続データ/データ部」にそれぞれ3bitの数値が充填されているため、「3−1=2」を示す「10」が設定されている。
さらに、この「後続データ/データ部幅−1」は可変bit幅であり、「後続データ/データ部」に充填された各数値の大小に応じて桁数が変動するため、「後続データ/データ部幅−1の表現幅−1」の項目41に「後続データ/データ部幅−1」に充填された値のbit幅を特定するビット列が3bit固定で設定されている。図8(d)においては、「後続データ/データ部幅−1」に2bitのビット列が充填されているため、「2−1=1」を示す「001」が設定されている。
圧縮前の買気配5値段〜買気配1値段のデータ項目は、それぞれが64bit固定のデータ長を備えているため、合計で64×5=320bitのデータ量に達していたところ、上記の圧縮処理を施すことにより、グループ全体で45bitにまで容量が低減されている。
図9は、現在値、始値、高値、安値の整数部の圧縮工程を模式的に示すものである。
これらの値段には、安値が最も安くなるという規則性が認められるため、同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
まず市況データ圧縮部12は、図9(a)及び(b)に示すように、現在値〜安値の値である1869、1856、1876、1854について、上記と同様の共通除数圧縮処理を施す。
ただし、図9(a)に示した例では各値段間に10のn乗の最大公約数が存在しないため、圧縮前(図9(a))と圧縮後(図9(b))で値に変化は生じていない。
つぎに市況データ圧縮部12は、図9(c)に示すように、各値に対して最小値差分圧縮処理を施す。
ここで「最小値差分圧縮」とは、同じ圧縮グループに属する項目の中で、最も値が小さくなる項目の値を基準値と認定し、それ以外の値をこの基準値との差分で表現する圧縮処理を意味しており、各項目の値が比較的近い範囲内に収まる場合に有効である。
図9(b)の例では、当然ながら安値が「1854」で最も小さいため、そのまま基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し現在値は「1869」であり、基準値に対して「+15」であるため、値として差分の「15」が格納される。また、始値は「1856」であり、基準値に対して「+2」であるため、値として差分の「2」が格納される。さらに、高値は「1876」であり、基準値に対して「+22」であるため、値として差分の「22」が格納される。
「データ数」の項目33には、当該圧縮グループに属する値の総数である「4」が設定されている。
また「基準値位置」の項目34には、4番目の安値を示す「3(0から数えて4番目)」が設定されている。もっとも、この圧縮グループにおいては安値の値が必ず基準値として認定されるため、基準値位置の設定を省略することも可能である。
つぎに市況データ圧縮部12は、図9(d)に示すように、これまでの圧縮処理の結果を接続することにより、以下のビット列を生成する。
「0100001010000101011100111110010100011110001010110」(49bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10のn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10のn乗の最大公約数が存在しなかったため、「000」が充填されている。
「データ数/データ部」の項目38には、当該圧縮グループに含まれるデータ数である「4」の2進数表現である「100」が充填されている。
また、この「データ数/データ部」の項目38は可変bit幅であり、圧縮グループに含まれるデータ数の多寡に応じて桁数が変動する可能性があるため、「データ数/データ部幅−1」の項目37に「データ数/データ部」に充填された値のbit幅を特定する3bit固定の数値が設定されている。図9(d)においては、「データ数/データ部」に3 bitのビット列が充填されているため、「3−1=2」を示す「010」が設定されている。
「基準値/データ部」の項目40には、当該圧縮グループにおける基準値であり「1854」の2進数表現である「11100111110」が充填されている。
また、この「基準値/データ部」は可変bit幅であり、基準値の大小に応じて桁数が変動するため、「基準値/データ部幅−1」の項目39に「基準値/データ部」に充填された値のbit 幅を特定する6 bit固定の数値が設定されている。図9(d)においては、「基準値/データ部」に11bitの数値が充填されているため、「11−1=10」を示す「001010」が設定されている。
「後続データ/データ部」の項目43には、基準値が認定された項目以外の項目(具体的には「現在値」「始値」「高値」)に係る最小値差分圧縮の結果が、上から「01111/00010/10110」のように縦一列に描画されているが、これらは実際には「011110001010110」のように横一列にメモリ上に配置される。
この「後続データ/データ部」は可変bit幅であり、基準値との差分の大小に応じて桁数が変動するため、「後続データ/データ部幅−1」の項目42に「後続データ/データ部」に充填された値のbit 幅を特定する数値が可変bit幅で設定されている。図9(d)においては、「後続データ/データ部」にそれぞれ5bitの数値が充填されているため、「5−1=4」を示す「100」が設定されている。
さらに、この「後続データ/データ部幅−1」は可変bit幅であり、「後続データ/データ部」に充填された各数値の大小に応じて桁数が変動するため、「後続データ/データ部幅−1の表現幅−1」の項目41に「後続データ/データ部幅−1」に充填された値のbit幅を特定する数値が3bit固定で設定されている。図9(d)においては、「後続データ/データ部幅−1」に3bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
圧縮前の現在値、始値、高値、安値のデータ項目は、それぞれが64bit固定のデータ長を備えているため、合計で64×4=256bitのデータ量に達していたところ、上記の圧縮処理を施すことにより、グループ全体で49bitにまで容量が低減されている。
図10及び図11は、現在値、始値、高値、安値、売気配1値段〜売気配5値段、買気配1値段〜買気配5値段の小数部の圧縮工程を模式的に示すものである。
これらの値段の小数部にはそれぞれ32bitが割り当てられているが、株式の取引所取引の場合には、実際には「00000…00000」のように「0」が32個分詰められているだけであるため、同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
まず市況データ圧縮部12は、図10(a)及び(b)に示すように、現在値〜買気配5値段の各値について、上記と同様の共通除数圧縮処理を施す。
ただし、図10(a)に示すように、各値間に10のn乗の最大公約数が存在しないため、圧縮前(図10(a))と圧縮後(図10(b))で値に変化は生じていない。
つぎに市況データ圧縮部12は、図10(b)及び(c)に示すように、各値に対して最小値差分圧縮処理を施すが、全ての値が0であるため、ここでも各値に変化は生じない。
「データ数」の項目33には、当該圧縮グループに属する項目の総数である「14」が設定されている。
また「基準値位置」の項目34には、1番目の現在値を示す「0」が設定されている。
つぎに市況データ圧縮部12は、図11に示すように、これまでの圧縮処理の結果を接続することにより、以下のビット列を生成する。
「0100001111100000000000000000000000000000」(40bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10のn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10のn乗の最大公約数が存在しなかったため、「000」が充填されている。
「データ数/データ部」の項目38には、当該圧縮グループに含まれるデータ数である「14」の2進数表現である「1110」が充填されている。
また、この「データ数/データ部」の項目38は可変bit幅であり、圧縮グループに含まれるデータ項目数の多寡に応じて桁数が変動する可能性があるため、「データ数/データ部幅−1」の項目37に「データ数/データ部」に充填された値のbit幅を特定する3bit固定の数値が設定されている。図11においては、「データ数/データ部」に4 bitの数値が充填されているため、「4−1=3」を示す「011」が設定されている。
「基準値/データ部」の項目40には、当該圧縮グループにおける基準値である2進数の「0」が充填されている。
また、この「基準値/データ部」は可変bit幅であるため、「基準値/データ部幅−1」の項目39に「基準値/データ部」に充填された値のbit 幅を特定する6 bit固定の数値が設定されている。図11においては、「基準値/データ部」に1bitの数値「0」が充填されているため、「1−1=0」を示す「000000」が設定されている。
「後続データ/データ部」の項目43には、基準値が認定された項目以外の項目に係る最小値差分圧縮の結果が、「0/0/0/0/0/0/0/0/0/0/0/0/0」のように縦一列に0が13個並べられているが、これらは実際には「0000000000000」のように横一列にメモリ上に配置される。
また、「後続データ/データ部幅−1」の項目42には「0」が、「後続データ/データ部幅−1の表現幅−1」の項目41には「000」が設定されている。
「基準値位置/データ部」の項目45は、同じ圧縮グループに属する複数の項目の値間に規則性(一定の順序や一定の大小関係等)が存在しない場合に、基準値の位置を特定する値を可変bitで充填するためのものであり、「基準値位置/データ部幅−1」の項目44には、そのbit幅を特定する数値が3bit固定で充填される。ここでは、「基準値位置/データ部」に「0」が、「基準値位置/データ部幅−1」に「000」が設定されている。
圧縮前の各値段の小数部は、上記の通り、32 bit固定のデータ長を備えているため、合計で32×14=448bitのデータ量に達していたところ、上記の圧縮処理を施すことにより、グループ全体で40bitにまで容量が低減されている。
図12は、「売気配数量」の圧縮工程を模式的に示すものであり、売気配1数量〜売気配5数量は同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
まず市況データ圧縮部12は、図12(a)及び(b)に示すように、売気配1数量〜売気配5数量の値である1300、3000、4400、8700、7300について、共通除数圧縮処理を施す。
この場合は、各数量間に10の2乗の最大公約数が存在しているため、圧縮前(図12(a))と圧縮後(図12(b))で値が変化している。
つぎに市況データ圧縮部12は、図12(c)に示すように、各値に対して最小値差分圧縮処理を施す。
図12(b)の例では、売気配1数量の値が「13」で最も小さいため、そのまま基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し売気配2数量は「30」であり、基準値に対して「+17」であるため、値として差分の「17」が格納される。また、売気配3数量は「44」であり、売気配1数量の値に対して「+31」であるため、値として差分の「31」が格納される。また、売気配4数量は「87」であり、売気配1数量の値に対して「+74」であるため、値として差分の「74」が格納される。さらに、売気配5数量は「73」であり、売気配1数量の値に対して「+60」であるため、値として差分の「60」が格納される。
「データ数」の項目33には、当該圧縮グループに属する項目の総数である「5」が設定されている。
また「基準値位置」の項目34には、先頭の項目(売気配1数量)を示す「0」が設定されている。
つぎに市況データ圧縮部12は、図12(d)に示すように、これまでの圧縮処理の結果を接続することにより、以下のビット列を生成する。
「01010010101000011110101011000100010011111100101001111000000」(59bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10のn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10の2乗の最大公約数が存在したため、「010」が充填されている。
「データ数/データ部」の項目38には、当該圧縮グループに含まれるデータ数である「5」の2進数表現である「101」が充填されている。
また、この「データ数/データ部」に3bitの数値が充填されているため、「データ数/データ部幅−1」の項目37には、「3−1=2」を示す「010」が設定されている。
「基準値/データ部」の項目40には、当該圧縮グループにおける基準値「13」の2進数表現である「1101」が充填されている。
また、この「基準値/データ部」に4bitの数値が充填されているため、「基準値/データ部幅−1」の項目39には、「4−1=3」を示す「000011」が設定されている。
「後続データ/データ部」の項目43には、基準値が認定された項目以外の項目(具体的には「売気配2数量」〜「売気配5数量」)に係る最小値差分圧縮の結果が、上から「0010001/0011111/1001010/0111100」のように縦一列に描画されているが、これらは実際には「0010001001111110010100111100」のように横一列にメモリ上に配置される。
この「後続データ/データ部」には7bit幅の数値が充填されているため、「後続データ/データ部幅−1」の項目42には、「7−1=6」を示す「110」が設定されている。
さらに、この「後続データ/データ部幅−1」には3bit幅の数値が設定されているため、「後続データ/データ部幅−1の表現幅−1」の項目41には、「3−1=2」を示す「010」が設定されている。
「基準値位置/データ部」の項目45には、売気配1数量の位置を表す「0」が設定されると共に、「基準値位置/データ部幅−1」の項目44には、「1−1=0」を示す「000」が設定されている。
圧縮前の売気配1数量〜売気配5数量のデータ項目は、それぞれが32bit固定のデータ長を備えているため、合計で32×5=160bitのデータ量に達していたところ、上記の圧縮処理を施すことにより、グループ全体で59bitにまで容量が低減されている。
図13は、「買気配数量」の圧縮工程を模式的に示すものであり、買気配1数量〜買気配5数量は同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
まず市況データ圧縮部12は、図13(a)及び(b)に示すように、買気配1数量〜買気配5数量の値である13100、5600、23100、3800、9700について、共通除数圧縮処理を施す。
この場合は、各数量間に10の2乗の最大公約数が存在しているため、圧縮前(図13(a))と圧縮後(図13(b))で値が変化している。
つぎに市況データ圧縮部12は、図13(c)に示すように、各値に対して最小値差分圧縮処理を施す。
図13(b)の例では、買気配4数量の値が「38」で最も小さいため、そのまま基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し買気配1数量は「131」であり、基準値に対して「+93」であるため、値として差分の「93」が格納される。また、買気配2数量は「56」であり、基準値に対して「+18」であるため、値として差分の「18」が格納される。また、買気配3数量は「231」であり、基準値に対して「+193」であるため、値として差分の「193」が格納される。さらに、買気配5数量は「97」であり、基準値に対して「+59」であるため、値として差分の「59」が格納される。
「データ数」の項目33には、当該圧縮グループに属する項目の総数である「5」が設定されている。
また「基準値位置」の項目34には、買気配4数量を示す「3」が設定されている。
つぎに市況データ圧縮部12は、図13(d)に示すように、これまでの圧縮処理の内容及び結果に対応したビット列を、以下のように2進数の値で表現する圧縮処理を行う。
「010100101010001011001100101110101110100010010110000010011101100111」(66bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10のn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10の2乗の最大公約数が存在したため、「010」が充填されている。
「データ数/データ部」の項目38には、当該圧縮グループに含まれるデータ数である「5」の2進数表現である「101」が充填されている。
また、この「データ数/データ部」に3bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
「基準値/データ部」の項目40には、当該圧縮グループにおける基準値であり「38」の2進数表現である「100110」が充填されている。
また、この「基準値/データ部」に6bitの数値が充填されているため、「基準値/データ部幅−1」の項目39には、「6−1=5」を示す「000101」が設定されている。
「後続データ/データ部」の項目43には、基準値が認定された項目以外の項目(具体的には「買気配1数量」〜「買気配3数量」、「買気配5数量」)に係る最小値差分圧縮の結果が、上から「01011101/00010010/11000001/00111011」のように縦一列に描画されているが、これらは実際には「01011101000100101100000100111011」のように横一列にメモリ上に配置される。
この「後続データ/データ部」には8bit幅の数値が充填されているため、「後続データ/データ部幅−1」の項目42には、「8−1=7」を示す「111」が設定されている。
さらに、この「後続データ/データ部幅−1」には3bit幅の数値が設定されているため、「後続データ/データ部幅−1の表現幅−1」の項目41には、「3−1=2」を示す「010」が設定されている。
「基準値位置/データ部」の項目45には、買気配4数量の位置を表す「11」が設定されると共に、「基準値位置/データ部幅−1」の項目44には、「2−1=1」を示す「001」が設定されている。
圧縮前の買気配1時刻〜買気配5時刻のデータ項目は、それぞれが32bit固定のデータ長を備えているため、合計で32×5=160bitのデータ量に達していたところ、上記の圧縮処理を施すことにより、グループ全体で66bitにまで容量が低減されている。
図14は、「売気配時刻」の圧縮工程を模式的に示すものであり、売気配1時刻〜売気配5時刻は同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
まず市況データ圧縮部12は、図14(a)及び(b)に示すように、売気配1時刻〜売気配5時刻の値である1335(13時35分)、1335、1335、1335、1335について、共通除数圧縮処理を施す。
この場合は、各時刻間に10の2乗の最大公約数が存在していないため、圧縮前(図14(a))と圧縮後(図14(b))で値に変化が生じていない。
つぎに市況データ圧縮部12は、各値の1335を以下の式に代入して分に換算した上で、図14 (c)に示すように、最小値差分圧縮処理を施す。
(式)13×60+35=815
図14(b)の例では、各値が1335で共通しているため、売気配1時刻の分換算の値「815」が基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し売気配2時刻〜売気配5時刻に関しては、差分として「0」が格納される。
「データ数」の項目33には、当該圧縮グループに属する項目の総数である「5」が設定されている。
また「基準値位置」の項目34には、先頭の項目(売気配1時刻)を示す「0」が設定されている。
つぎに市況データ圧縮部12は、図14(d)に示すように、これまでの圧縮処理の結果を接続することにより、以下のビット列を生成する。
「010000101010010011100101111000000000000」(39bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10のn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10の2乗の最大公約数が存在しないため、「000」が充填されている。
「データ数/データ部」の項目38には、当該圧縮グループに含まれるデータ数である「5」の2進数表現である「101」が充填されている。
また、この「データ数/データ部」に3bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
「基準値/データ部」の項目40には、当該圧縮グループにおける基準値であり「815」の2進数表現である「1100101111」が充填されている。
また、この「基準値/データ部」に10bitの数値が充填されているため、「基準値/データ部幅−1」の項目39には、「10−1=9」を示す「001001」が設定されている。
「後続データ/データ部」の項目43には、基準値が認定された項目以外の項目(具体的には「売気配2時刻」〜「売気配5時刻」)に係る最小値差分圧縮の結果が、上から「0/0/0/0」のように縦一列に描画されているが、これらは実際には「0000」のように横一列にメモリ上に配置される。
この「後続データ/データ部」には1bit幅の数値が充填されているため、「後続データ/データ部幅−1」の項目42には、「1−1=0」を示す「0」が設定されている。
さらに、この「後続データ/データ部幅−1」には1bit幅の数値が設定されているため、「後続データ/データ部幅−1の表現幅−1」の項目41には、「1−1=0」を示す「000」が設定されている。
「基準値位置/データ部」の項目45には、売気配1時刻の位置を表す「0」が設定されると共に、「基準値位置/データ部幅−1」の項目44には、「1−1=0」を示す「000」が設定されている。
圧縮前の売気配1時刻〜売気配5時刻のデータ項目は、それぞれが16bit固定のデータ長を備えているため、合計で16×5=80bitのデータ量に達していたところ、上記の圧縮処理を施すことにより、グループ全体で39bitにまで容量が低減されている。
図15は、「買気配時刻」の圧縮工程を模式的に示すものであり、買気配1時刻〜買気配5時刻は同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
まず市況データ圧縮部12は、図15(a)及び(b)に示すように、買気配1時刻〜買気配5時刻の値である1335(13時35分)、1335、1335、1335、1334(13時34分)について、共通除数圧縮処理を施す。
この場合は、各時刻間に10の2乗の最大公約数が存在していないため、圧縮前(図15(a))と圧縮後(図15(b))で値に変化が生じていない。
つぎに市況データ圧縮部12は、図15 (c)に示すように、各値を分に換算した上で、最小値差分圧縮処理を施す。
図15(b)の例では、買気配5時刻の値が1334で最も小さいため、買気配5時刻の分換算の値「814」が基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し買気配1時刻〜買気配4時刻に関しては、差分として「1」が格納される。
「データ数」の項目33には、当該圧縮グループに属する項目の総数である「5」が設定されている。
また「基準値位置」の項目34には、買気配5時刻を示す「4」が設定されている。
つぎに市況データ圧縮部12は、図15(d)に示すように、これまでの圧縮処理の結果を接続することにより、以下のビット列を生成する。
「01000010101001001110010111000001111011100」(41bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10のn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10の2乗の最大公約数が存在しないため、「000」が充填されている。
「データ数/データ部」の項目38には、当該圧縮グループに含まれるデータ数である「5」の2進数表現である「101」が充填されている。
また、この「データ数/データ部」に3bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
「基準値/データ部」の項目40には、当該圧縮グループにおける基準値であり「814」の2進数表現である「1100101110」が充填されている。
また、この「基準値/データ部」に10bitの数値が充填されているため、「基準値/データ部幅−1」の項目39には、「10−1=9」を示す「001001」が設定されている。
「後続データ/データ部」の項目43には、基準値が認定された項目以外の項目(具体的には「買気配1時刻」〜「買気配4時刻」)に係る最小値差分圧縮の結果が、上から「1/1/1/1」のように縦一列に描画されているが、これらは実際には「1111」のように横一列にメモリ上に配置される。
この「後続データ/データ部」には1bit幅の数値が充填されているため、「後続データ/データ部幅−1」の項目42には、「1−1=0」を示す「0」が設定されている。
さらに、この「後続データ/データ部幅−1」には1bit幅の数値が設定されているため、「後続データ/データ部幅−1の表現幅−1」の項目41には、「1−1=0」を示す「000」が設定されている。
「基準値位置/データ部」の項目45には、買気配5時刻の位置(4)を表す「100」が設定されると共に、「基準値位置/データ部幅−1」の項目44には、「4−1=3」を示す「011」が設定されている。
圧縮前の買気配1時刻〜買気配5時刻のデータ項目は、それぞれが16bit固定のデータ長を備えているため、合計で16×5=80bitのデータ量に達していたところ、上記の圧縮処理を施すことにより、グループ全体で41bitにまで容量が低減されている。
以下において、市況データ圧縮部12による圧縮処理の手順を整理する。
(1)市況データの中から、圧縮対象となるデータ項目の値を、予め設定された順番に従って取り出し、メモリ上にコピーする。
(2)各データ項目の値に対して、当該データ項目別に設定された圧縮方法に従い、順番に圧縮処理を施す。この際、圧縮グループが設定されているデータ項目については、まとめて圧縮処理を施す。
(3)必要なデータ項目に対する圧縮処理が完了した後、市況データ圧縮部12は、圧縮データに所定のファイル名(例えば、銘柄コード+受信日時)を付加して圧縮データ記憶部14に格納する。
上記の通り、市況データ圧縮部12による圧縮ロジックは、極めて単純な演算処理の組合せから構成されるため、圧縮処理の所要時間を飛躍的に短縮化することが可能となり、ミリ秒単位で発生する多数の市況データをほぼリアルタイムで圧縮することができる。
この発明に係る市況データ圧縮システムの全体構成を示すブロック図である。 市況データの構成を示す説明図である。 「累積出来高」の圧縮工程を示す模式図である。 圧縮前の固定bit幅と「データ部幅−1」のbit幅との対応関係を表すテーブルである。 「累積約定金額」の圧縮工程を示す模式図である。 「売気配値段(整数部)」の圧縮工程を示す模式図である。 共通除数圧縮の具体例を示す模式図である。 「買気配値段(整数部)」の圧縮工程を示す模式図である。 「現在値、始値、高値、安値(整数部)」の圧縮工程を示す模式図である。 各種値段の小数部の圧縮工程を示す模式図である。 各種値段の小数部の圧縮工程を示す模式図である。 「売気配数量」の圧縮工程を示す模式図である。 「買気配数量」の圧縮工程を示す模式図である。 「売気配時刻」の圧縮工程を示す模式図である。 「買気配時刻」の圧縮工程を示す模式図である。
10 市況データ圧縮システム
11 市況データ取得部
12 市況データ圧縮部
13 市況データ記憶部
14 圧縮データ記憶部
15 圧縮データ送信部
18 情報ベンダーのコンピュータ
19 証券取引所のホストコンピュータ
20 注文情報生成システム
21 圧縮データ解凍部
22 クライアント端末
23 市況データ記憶部
24 注文情報生成部
26 注文情報記憶部
25 圧縮データ解凍部
28 仮想取引システム
30 データ部
31 「データ部幅−1」の項目
32 「値」の項目
33 「データ数」の項目
34 「基準値位置」の項目
35 「圧縮方法(2bit固定)」の項目
36 「10のn(3bit固定)」の項目
37 「データ数/データ部幅−1」の項目
38 「データ数/データ部」の項目
39 「基準値/データ部幅−1」の項目
40 「基準値/データ部」の項目
41 「後続データ/データ部幅−1の表現幅−1」の項目
42 「後続データ/データ部幅−1」の項目
43 「後続データ/データ部」の項目
44 「基準値位置/データ部幅−1」の項目
45 「基準値位置/データ部」の項目

Claims (8)

  1. 証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、相互の値の大きさに一定の順序性を備えた所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段と、
    当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段と、
    この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段と、
    各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段と、
    上記基準値と、2番目に値の小さいデータとの差分を算出し、当該データの値をこの差分を示すビット列に置き換える手段と、
    この2番目に値の小さいデータ以外にもデータが存在する場合には、各データを値の小さい順に並べて相互間の差分を算出し、この差分を示すビット列によって値の大きい方のデータの値を置き換える手段と、
    この差分を示すビット列の中で最もビット幅の広いものを特定する手段と、
    この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段と、
    このビット幅が揃えられたビット列を一定の順序で接続する手段と、
    この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段と、
    上記の各ビット列を所定の順序で接続して圧縮データを生成する手段と、
    を備えたことを特徴とする市況データ圧縮システム。
  2. 証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段と、
    当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段と、
    この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段と、
    各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段と、
    上記基準値と、他のデータの値との差分を算出し、それぞれのデータの値をこの差分を示すビット列に置き換える手段と、
    この差分を示すビット列の中で最もビット幅の広いものを特定する手段と、
    この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段と、
    このビット幅が揃えられたビット列を一定の順序で接続する手段と、
    この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段と、
    上記の各ビット列を所定の順序で接続して圧縮データを生成する手段と、
    を備えたことを特徴とする市況データ圧縮システム。
  3. 上記基準値に認定されたデータの位置を示す可変長のビット列を生成する手段と、
    この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値位置表現用のビット列を生成する手段と、
    この基準値位置表現用のビット列を、上記圧縮データの所定の位置に挿入する手段を備えたことを特徴とする請求項2に記載の市況データ圧縮システム。
  4. 上記市況データに含まれる各種データ項目の中から複数のデータ項目の値を同一の圧縮グループを構成するデータとして抽出した後に、この圧縮グループに含まれる各データの値間に10のn乗の最大公約数が存在するか否かが判定され、
    この10のn乗の最大公約数が存在する場合に、各データの値が、当該最大公約数でそれぞれの値を除した商に置き換えられ、
    上記基準値表現用のビット列及び上記後続データ表現用のビット列が、この商に基づいて生成され、
    さらに、上記10のn乗のnを表す固定長のビット列が、上記圧縮データの所定の位置に挿入されることを特徴とする請求項1〜3の何れかに記載の市況データ圧縮システム。
  5. 上記ビット幅を定義する固定長のビット列が、「ビット幅−1」を示すビット列よりなることを特徴とする請求項1〜4の何れかに記載の市況データ圧縮システム。
  6. 上記市況データに含まれる各種データ項目の中で、所定のデータ項目に係る固定長のデータを個別圧縮の対象として抽出する手段と、
    この固定長データの先頭部に付加された0を除去して、可変長のビット列に変換する手段と、
    このビット列の先頭に、そのビット幅を定義する固定長のビット列を付加して圧縮データを生成する手段と、
    を備えたことを特徴とする請求項1〜5の何れかに記載の市況データ圧縮システム。
  7. コンピュータを、
    証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、相互の値の大きさに一定の順序性を備えた所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段、
    当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段、
    この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段、
    各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段、
    上記基準値と、2番目に値の小さいデータとの差分を算出し、当該データの値をこの差分を示すビット列に置き換える手段、
    この2番目に値の小さいデータ以外にもデータが存在する場合には、各データを値の小さい順に並べて相互間の差分を算出し、この差分を示すビット列によって値の大きい方のデータの値を置き換える手段、
    この差分を示すビット列の中で最もビット幅の広いものを特定する手段、
    この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段、
    このビット幅が揃えられたビット列を一定の順序で接続する手段、
    この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段、
    上記の各ビット列を所定の順序で接続して圧縮データを生成する手段、
    として機能させることを特徴とする市況データ圧縮プログラム。
  8. コンピュータを、
    証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段、
    当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段、
    この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段、
    各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段、
    上記基準値と、他のデータの値との差分を算出し、それぞれのデータの値をこの差分を示すビット列に置き換える手段、
    この差分を示すビット列の中で最もビット幅の広いものを特定する手段、
    この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段、
    このビット幅が揃えられたビット列を一定の順序で接続する手段、
    この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段、
    上記の各ビット列を所定の順序で接続して圧縮データを生成する手段、
    として機能させることを特徴とする市況データ圧縮プログラム。
JP2009152831A 2009-06-26 2009-06-26 市況データ圧縮システム及びプログラム Expired - Fee Related JP5044614B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009152831A JP5044614B2 (ja) 2009-06-26 2009-06-26 市況データ圧縮システム及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009152831A JP5044614B2 (ja) 2009-06-26 2009-06-26 市況データ圧縮システム及びプログラム

Publications (2)

Publication Number Publication Date
JP2011010124A true JP2011010124A (ja) 2011-01-13
JP5044614B2 JP5044614B2 (ja) 2012-10-10

Family

ID=43566253

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009152831A Expired - Fee Related JP5044614B2 (ja) 2009-06-26 2009-06-26 市況データ圧縮システム及びプログラム

Country Status (1)

Country Link
JP (1) JP5044614B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015008650A1 (ja) * 2013-07-16 2015-01-22 株式会社 日立メディコ 医用画像管理装置及び医用画像管理方法
US10523629B2 (en) 2012-11-27 2019-12-31 Nec Corporation Control apparatus, communication system, communication method, and program
JP2023050192A (ja) * 2021-09-29 2023-04-10 敦 黒川 情報処理装置、プログラム、データ構造、及び情報処理方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128212A (ja) * 1995-10-30 1997-05-16 Kokusai Electric Co Ltd 証券情報のデータ圧縮方法とその装置
JPH1132328A (ja) * 1997-07-10 1999-02-02 Pfu Ltd 多値画像データにおけるデータ圧縮方法、データ圧縮装置および記録媒体
JP2002049747A (ja) * 2000-08-07 2002-02-15 Kuikku:Kk 時系列データ圧縮装置及び時系列データ圧縮方法
JP3307909B2 (ja) * 2000-01-24 2002-07-29 ケンテックス株式会社 株価データの圧縮方法及び株価データの圧縮送信方法
JP2003333339A (ja) * 2002-05-13 2003-11-21 Sony Corp 画像符号化装置及び画像符号化方法
JP2004064703A (ja) * 2002-07-31 2004-02-26 Toshiba Corp 時系列データ圧縮・解凍装置およびその方法
JP2007067869A (ja) * 2005-08-31 2007-03-15 Pasuko:Kk データ符号化装置、方法、及びプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128212A (ja) * 1995-10-30 1997-05-16 Kokusai Electric Co Ltd 証券情報のデータ圧縮方法とその装置
JPH1132328A (ja) * 1997-07-10 1999-02-02 Pfu Ltd 多値画像データにおけるデータ圧縮方法、データ圧縮装置および記録媒体
JP3307909B2 (ja) * 2000-01-24 2002-07-29 ケンテックス株式会社 株価データの圧縮方法及び株価データの圧縮送信方法
JP2002049747A (ja) * 2000-08-07 2002-02-15 Kuikku:Kk 時系列データ圧縮装置及び時系列データ圧縮方法
JP2003333339A (ja) * 2002-05-13 2003-11-21 Sony Corp 画像符号化装置及び画像符号化方法
JP2004064703A (ja) * 2002-07-31 2004-02-26 Toshiba Corp 時系列データ圧縮・解凍装置およびその方法
JP2007067869A (ja) * 2005-08-31 2007-03-15 Pasuko:Kk データ符号化装置、方法、及びプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10523629B2 (en) 2012-11-27 2019-12-31 Nec Corporation Control apparatus, communication system, communication method, and program
WO2015008650A1 (ja) * 2013-07-16 2015-01-22 株式会社 日立メディコ 医用画像管理装置及び医用画像管理方法
JPWO2015008650A1 (ja) * 2013-07-16 2017-03-02 株式会社日立製作所 医用画像管理装置及び医用画像管理方法
JP2023050192A (ja) * 2021-09-29 2023-04-10 敦 黒川 情報処理装置、プログラム、データ構造、及び情報処理方法
JP7457403B2 (ja) 2021-09-29 2024-03-28 敦 黒川 情報処理装置、プログラム、データ構造、及び情報処理方法

Also Published As

Publication number Publication date
JP5044614B2 (ja) 2012-10-10

Similar Documents

Publication Publication Date Title
Gallaugher E-commerce and the undulating distribution channel
JP6031130B2 (ja) 取引対象物について電子的な価格提示を提供するためのシステムおよび方法
TW502178B (en) Efficient and lossless conversion for transmission or storage of data
US10062116B2 (en) System and method for providing market data in an electronic trading environment
US20110178892A1 (en) Online Offer System
CN104574186A (zh) 通过显示市场深度和价格的交易
CN111489180A (zh) 参考信息生成方法、系统及装置
JP5044614B2 (ja) 市況データ圧縮システム及びプログラム
CN108932614B (zh) 一种支付通道路由方法及系统
CN104331818A (zh) 可控制差异化推送商户服务信息的方法及系统
CN104756156A (zh) 表征计算机动画毛发的压缩数据
CN110264092A (zh) 模拟证券交易方法、系统、设备及介质
CN115187403A (zh) 证券行情转发方法及系统、计算机可读存储介质及装置
US20050102190A1 (en) Internet sales method
CN101312448A (zh) 一种数据处理方法
Kilgore et al. Trends in Minnesota's forestland real estate market: Potential implications for forestland uses
KR20170076408A (ko) 가중치를 이용한 수입 패션 상품 가격 책정 방법
JP3307909B2 (ja) 株価データの圧縮方法及び株価データの圧縮送信方法
WO2009088967A1 (en) Storage of stochastic information in stochastic information systems
TWI766144B (zh) 遊戲帳號估價方法及其系統
CN107330790B (zh) 一种节省存储空间的追溯资产所有权变更历史的方法
CN106952076A (zh) 基于大宗商品交易平台的电子合同签订方法及交易平台系统
CN114331408A (zh) 数字资产交易方法、装置和存储介质
JP6230315B2 (ja) マーケットインパクト減衰係数算出装置、マーケットインパクト減衰係数算出方法、約定シミュレーションシステム、及び約定シミュレーション方法
TWI695336B (zh) 拍賣系統及其方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120627

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120710

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120713

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150720

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees