JP2011010124A - 市況データ圧縮システム及びプログラム - Google Patents
市況データ圧縮システム及びプログラム Download PDFInfo
- 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
Links
- 238000013144 data compression Methods 0.000 title claims abstract description 61
- 238000007906 compression Methods 0.000 claims abstract description 248
- 230000006835 compression Effects 0.000 claims abstract description 207
- 230000001174 ascending effect Effects 0.000 claims description 3
- 239000000470 constituent Substances 0.000 claims 2
- 238000012545 processing Methods 0.000 abstract description 36
- 230000036651 mood Effects 0.000 abstract 8
- 238000000034 method Methods 0.000 description 31
- 230000006837 decompression Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 14
- 238000013500 data storage Methods 0.000 description 13
- 230000001186 cumulative effect Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 241000238876 Acari Species 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
【解決手段】市況データから売気配1値段〜5値段を抽出し、この圧縮グループに属するデータの数を示す可変長のビット列を生成し、その先頭にビット幅を定義する固定長のビット列を付加してデータ数表現用のビット列を生成し、売気配1値段を基準値とし、これを可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加して基準値表現用のビット列を生成し、売気配2の値段を基準値との差分のビット列に置き換え、売気配3の値段を売気配2値段との差分のビット列に置き換え、売気配4の値段を売気配3値段との差分のビット列に置き換え、売気配5の値段を売気配4値段との差分のビット列に置き換え、基準値以外のビット列を接続し、その先頭に各ビット列のビット幅を定義する固定長のビット列を付加して後続データ表現用のビット列を生成し、各ビット列を接続して圧縮データを生成する市況データ圧縮システム10。
【選択図】図6
Description
この市況データは、一旦所定の記憶手段に格納された後、株式投資の判断材料として、あるいは取引終了後における執行評価の比較資料として利用される。また、この市況データに基づいて仮想の注文情報が生成され、株取引のシミュレーションに利用することも行われている。
ただし、既存の一般的な圧縮エンジンの場合、圧縮処理の高速化よりも圧縮率の向上に重点が置かれており、そのために複雑な演算処理が実行されるため、ミリ秒単位で送信される株式市況データの圧縮には不向きであり、処理には遅延が生じていた。
この圧縮方法は、株価データに含まれる始値、高値、安値、終値の値の関係と出来高の値とに基づいて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つの銘柄の株価データに関するバイナリーデータを生成するものである。
また、始値、高値、安値、終値の圧縮にしても、事前に数多くのパターンを設定しておく必要があり、圧縮処理時にはパターンマッチングや中間データの生成処理を何度も繰り返す必要があることから、圧縮率の向上については兎も角、処理速度の向上には疑問が残ると言わざるを得ない。
これに対し、請求項3の圧縮システムにあっては、圧縮データが基準値位置表現用のビット列を備えているため、復元時に基準値がどのデータ項目に該当するのかが明確となる。
上記の市況データ取得部11、市況データ圧縮部12及び圧縮データ送信部15は、コンピュータのCPUが、OS及び専用のアプリケーションプログラムに従って必要な処理を実行することにより実現される。また、市況データ記憶部13及び圧縮データ記憶部14は、同コンピュータのハードディスク内に設けられている。
この圧縮データ記憶部14に格納された圧縮データは、圧縮データ送信部15により、ネットワークを介して接続されたクライアント端末22や注文情報生成システム20に送信される。
この注文情報記憶部26内に蓄積された多数の注文情報は、仮想取引システム28に提供され、クライアント端末22との間で展開される株取引シミュレーションに利用される。
また、上記注文情報生成システム20の圧縮データ解凍部21も同様に、市況データ圧縮部12による圧縮処理と逆の工程を経ることにより、圧縮データを元の市況データに復元する機能を備えており、予め同システム20内にセットアップされている。
情報ベンダーのコンピュータ18からは、市況に変化が生じる度に新たな市況データが送信され、これを受け取った市況データ取得部11は、図2のデータを最新の状態に更新する。
(1)「値段」について
株式の取引所取引では、売買や気配の値段は呼値の刻みごとになる。例えば、値段が3,000円を超えて30,000円以下の場合は、呼値の刻みは10円となり、売買値段は10円の倍数となる。
また、取引は「制限値幅」という一定の範囲内でのみ行われる。実際には値段は制限値幅の範囲の中の、一部の領域に固まっている場合が多い。
さらに、気配値段には順序に応じた大小関係が存在する。すなわち、売の場合は最良気配がもっとも安く、第2気配、第3気配、第4気配…と順に高くなってゆき、買はその逆となる。
(2)「数量」について
株式の取引所取引では、売買の数量は、銘柄ごとに決まった単元株数の倍数で行われる。例えば、株式会社野村総合研究所の株は、100株単位での売買となる。
(3)「時刻」について
時刻は、取引所の開いている時間帯内の値となる。また、活発に取引が行われるような銘柄(=板情報のレコード数が多い銘柄)については、時刻の値自体が近い範囲に固まっていることが多い。
(4) システム的特性
固定bit幅の整数値として表現される項目(値段、数量、時刻等)は、それぞれの項目の値がとり得る最大値を格納できるように、十分な広さのbit幅が採用されている。しかしながら、多くの場合は採用したbit幅の一部のみを使用するだけの小さな値が設定される。
例えば、「数量」は32bit整数の場合で43億弱までの値が表現可能であるが、多くの取引では10万株などといったレベルの値が使われるだけである。
図3は、「累積出来高」の圧縮工程を模式的に示すものであり、10進数で「7526200」、2進数で「00000000011100101101011100111000」の数値(32bit)が、可変ビット化圧縮処理により、「1011011100101101011100111000」の数値(28bit)に変換される様子が描かれている。
そこで市況データ圧縮部12は、まず先頭の「000000000」を除去した数値「11100101101011100111000」を、可変bit幅のデータとして、メモリ上に設定されたデータ部30に格納する。
図においては、23bitのビット列である「11100101101011100111000」がデータ部30に格納されているため、「23−1=22」を表す「10110」のビット列が「データ部幅−1」の項目31に充填されている。
図2に示したように、元の市況データに含まれる各種値段には、小数点以下の数値が含まれているため、市況データ圧縮部12は、まずは整数部の数値と小数部の数値を分けて圧縮処理することとしている(小数部の圧縮については、後に詳述する)。
また、売気配1値段〜売気配5値段には、値が順に大きくなっていくという規則性があるため、同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
ここで「共通除数圧縮」とは、10のn乗の最大公約数が存在する場合には、それぞれの値を当該最大公約数で除した商に変換する処理を意味している。
呼値(値付けの単位)が10円、100円、1000円等に限定されている価格帯の銘柄の場合には、上記のように各気配の値段間に10のn乗の最大公約数が存在することになり、圧縮効果が現れる。
ここで「順序差分圧縮」とは、同じ圧縮グループに属する項目間に値の大小に係る順序性が存在する場合に、最も値が小さくなる項目の値を基準値と認定し、それ以外の値を相互間の差分で表現する圧縮処理を意味している。
また「基準値位置」の項目34には、先頭の項目(売気配1値段)を示す「0」が設定されている。もっとも、売気配値段の場合には売気配1値段の値が必ず基準値として認定されるため、基準値位置の設定を省略することも可能である。
「100000101010010101110100110100001111」(36bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「10」は、圧縮方法が「共通除数圧縮+順序差分圧縮」であることを示す識別コードである。
また、次の「10nのn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定するビット列を記述する部分であり、今回は10のn乗の最大公約数が存在しなかったため、「000」が充填されている。これに対し、仮に10のn乗のnが「1」であった場合には、「001」が充填されることとなる。
また、この「データ数/データ部」の項目38は可変bit幅であり、圧縮グループに含まれるデータ数の多寡に応じて桁数が変動するため、「データ数/データ部幅−1」の項目37に「データ数/データ部」に充填された値のbit幅を特定する3bit固定のビット列が設定されている。図6(d)においては、「データ数/データ部」に3 bitのビット列が充填されているため、「3−1=2」を示す「010」が設定されている。
また、この「基準値/データ部」は可変bit幅であり、基準値の大小に応じて桁数が変動するため、「基準値/データ部幅−1」の項目39に「基準値/データ部」に充填された値のbit 幅を特定する6 bit固定のビット列が設定されている。図6(d)においては、「基準値/データ部」に11bitのビット列が充填されているため、「11−1=10」を示す「001010」が設定されている。
すなわち、圧縮前の売気配値段のデータ項目は64bitであるため、「後続データ/データ部」には最大64 bitの値が格納される可能性がある。このため、仮にこの64 bitを「後続データ/データ部幅−1(固定長)」のみで規定するとなると、「64−1=63=111111(2進数)」、すなわち6bitを予め確保しておく必要がある。これに対し、上記のように可変長(後続データ/データ部幅−1)と固定長(後続データ/データ部幅−1の表現幅−1)を組み合わせた2段階でbit幅を定義することにより、「000+0=4bit」で済んでいる。
もちろん、「後続データ/データ部幅−1」は可変長であるため、この項目に4bit以上の数値が充填された場合には6bitを超えることとなるが、その確率は比較的低いため、実用上は問題ない。
続く「010(データ数/データ)」及び「101(データ数/データ部)」のビット列により、圧縮データ解凍部21等は売気配値段に係る5件分のデータが含まれていることを認識する。
つぎに圧縮データ解凍部21等は、「11101001101」の先頭に0を53個挿入することにより、元の売気配1値段の整数部(64bit固定長)を再現する。
つぎに圧縮データ解凍部21等は、基準値である「11101001101」に「1」を加算して「11101001110」を導き出し、その先頭に0を53個挿入することにより、元の売気配2値段の整数部(64bit固定長)を再現する。
買気配1値段〜買気配5値段にも、値が順に小さくなっていくという規則性があるため、同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
ただし、図8(a)に示した例では各値段間に10のn乗の最大公約数が存在しないため、圧縮前(図8(a))と圧縮後(図8(b))で値に変化は生じていない。
図8(b)の例では、買気配5値段が「1861」で最も小さいため、そのまま基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し買気配4値段は「1865」であり、基準値に対して「+4」であるため、値として差分の「4」が格納される。また、買気配3値段は「1866」であり、買気配2の値に対して「+1」であるため、値として差分の「1」が格納される。また、買気配2値段は「1867」であり、買気配3の値に対して「+1」であるため、値として差分の「1」が格納される。さらに、買気配1値段は「1868」であり、買気配2値段に対して「+1」であるため、値として差分の「1」が格納される。
また「基準値位置」の項目34には、先頭の項目(買気配5値段)を示す「0」が設定されている。
「100000101010010101110100010100110100001001001」(45bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「10」は、圧縮方法が「共通除数圧縮+順序差分圧縮」であることを示す識別コードである。
また、次の「10nのn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10のn乗の最大公約数が存在しなかったため、「000」が充填されている。
また、この「データ数/データ部」の項目38は可変bit幅であり、圧縮グループに含まれるデータ数の多寡に応じて桁数が変動するため、「データ数/データ部幅−1」の項目37に「データ数/データ部」に充填された値のbit幅を特定する3bit固定の数値が設定されている。図6(d)においては、「データ数/データ部」に3 bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
また、この「基準値/データ部」は可変bit幅であり、基準値の大小に応じて桁数が変動するため、「基準値/データ部幅−1」の項目39に「基準値/データ部」に充填された値のbit 幅を特定する6 bit固定の数値が設定されている。図8(d)においては、「基準値/データ部」に11bitの数値が充填されているため、「11−1=10」を示す「001010」が設定されている。
これらの値段には、安値が最も安くなるという規則性が認められるため、同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
ただし、図9(a)に示した例では各値段間に10のn乗の最大公約数が存在しないため、圧縮前(図9(a))と圧縮後(図9(b))で値に変化は生じていない。
ここで「最小値差分圧縮」とは、同じ圧縮グループに属する項目の中で、最も値が小さくなる項目の値を基準値と認定し、それ以外の値をこの基準値との差分で表現する圧縮処理を意味しており、各項目の値が比較的近い範囲内に収まる場合に有効である。
また「基準値位置」の項目34には、4番目の安値を示す「3(0から数えて4番目)」が設定されている。もっとも、この圧縮グループにおいては安値の値が必ず基準値として認定されるため、基準値位置の設定を省略することも可能である。
「0100001010000101011100111110010100011110001010110」(49bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10nのn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10のn乗の最大公約数が存在しなかったため、「000」が充填されている。
また、この「データ数/データ部」の項目38は可変bit幅であり、圧縮グループに含まれるデータ数の多寡に応じて桁数が変動する可能性があるため、「データ数/データ部幅−1」の項目37に「データ数/データ部」に充填された値のbit幅を特定する3bit固定の数値が設定されている。図9(d)においては、「データ数/データ部」に3 bitのビット列が充填されているため、「3−1=2」を示す「010」が設定されている。
また、この「基準値/データ部」は可変bit幅であり、基準値の大小に応じて桁数が変動するため、「基準値/データ部幅−1」の項目39に「基準値/データ部」に充填された値のbit 幅を特定する6 bit固定の数値が設定されている。図9(d)においては、「基準値/データ部」に11bitの数値が充填されているため、「11−1=10」を示す「001010」が設定されている。
これらの値段の小数部にはそれぞれ32bitが割り当てられているが、株式の取引所取引の場合には、実際には「00000…00000」のように「0」が32個分詰められているだけであるため、同じ圧縮グループに属するものとして、一まとめに圧縮処理される。
ただし、図10(a)に示すように、各値間に10のn乗の最大公約数が存在しないため、圧縮前(図10(a))と圧縮後(図10(b))で値に変化は生じていない。
「データ数」の項目33には、当該圧縮グループに属する項目の総数である「14」が設定されている。
また「基準値位置」の項目34には、1番目の現在値を示す「0」が設定されている。
「0100001111100000000000000000000000000000」(40bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10nのn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10のn乗の最大公約数が存在しなかったため、「000」が充填されている。
また、この「データ数/データ部」の項目38は可変bit幅であり、圧縮グループに含まれるデータ項目数の多寡に応じて桁数が変動する可能性があるため、「データ数/データ部幅−1」の項目37に「データ数/データ部」に充填された値のbit幅を特定する3bit固定の数値が設定されている。図11においては、「データ数/データ部」に4 bitの数値が充填されているため、「4−1=3」を示す「011」が設定されている。
また、この「基準値/データ部」は可変bit幅であるため、「基準値/データ部幅−1」の項目39に「基準値/データ部」に充填された値のbit 幅を特定する6 bit固定の数値が設定されている。図11においては、「基準値/データ部」に1bitの数値「0」が充填されているため、「1−1=0」を示す「000000」が設定されている。
また、「後続データ/データ部幅−1」の項目42には「0」が、「後続データ/データ部幅−1の表現幅−1」の項目41には「000」が設定されている。
この場合は、各数量間に10の2乗の最大公約数が存在しているため、圧縮前(図12(a))と圧縮後(図12(b))で値が変化している。
図12(b)の例では、売気配1数量の値が「13」で最も小さいため、そのまま基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し売気配2数量は「30」であり、基準値に対して「+17」であるため、値として差分の「17」が格納される。また、売気配3数量は「44」であり、売気配1数量の値に対して「+31」であるため、値として差分の「31」が格納される。また、売気配4数量は「87」であり、売気配1数量の値に対して「+74」であるため、値として差分の「74」が格納される。さらに、売気配5数量は「73」であり、売気配1数量の値に対して「+60」であるため、値として差分の「60」が格納される。
また「基準値位置」の項目34には、先頭の項目(売気配1数量)を示す「0」が設定されている。
「01010010101000011110101011000100010011111100101001111000000」(59bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10nのn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10の2乗の最大公約数が存在したため、「010」が充填されている。
また、この「データ数/データ部」に3bitの数値が充填されているため、「データ数/データ部幅−1」の項目37には、「3−1=2」を示す「010」が設定されている。
また、この「基準値/データ部」に4bitの数値が充填されているため、「基準値/データ部幅−1」の項目39には、「4−1=3」を示す「000011」が設定されている。
さらに、この「後続データ/データ部幅−1」には3bit幅の数値が設定されているため、「後続データ/データ部幅−1の表現幅−1」の項目41には、「3−1=2」を示す「010」が設定されている。
この場合は、各数量間に10の2乗の最大公約数が存在しているため、圧縮前(図13(a))と圧縮後(図13(b))で値が変化している。
図13(b)の例では、買気配4数量の値が「38」で最も小さいため、そのまま基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し買気配1数量は「131」であり、基準値に対して「+93」であるため、値として差分の「93」が格納される。また、買気配2数量は「56」であり、基準値に対して「+18」であるため、値として差分の「18」が格納される。また、買気配3数量は「231」であり、基準値に対して「+193」であるため、値として差分の「193」が格納される。さらに、買気配5数量は「97」であり、基準値に対して「+59」であるため、値として差分の「59」が格納される。
また「基準値位置」の項目34には、買気配4数量を示す「3」が設定されている。
「010100101010001011001100101110101110100010010110000010011101100111」(66bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10nのn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10の2乗の最大公約数が存在したため、「010」が充填されている。
また、この「データ数/データ部」に3bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
また、この「基準値/データ部」に6bitの数値が充填されているため、「基準値/データ部幅−1」の項目39には、「6−1=5」を示す「000101」が設定されている。
さらに、この「後続データ/データ部幅−1」には3bit幅の数値が設定されているため、「後続データ/データ部幅−1の表現幅−1」の項目41には、「3−1=2」を示す「010」が設定されている。
この場合は、各時刻間に10の2乗の最大公約数が存在していないため、圧縮前(図14(a))と圧縮後(図14(b))で値に変化が生じていない。
(式)13×60+35=815
図14(b)の例では、各値が1335で共通しているため、売気配1時刻の分換算の値「815」が基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し売気配2時刻〜売気配5時刻に関しては、差分として「0」が格納される。
また「基準値位置」の項目34には、先頭の項目(売気配1時刻)を示す「0」が設定されている。
「010000101010010011100101111000000000000」(39bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10nのn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10の2乗の最大公約数が存在しないため、「000」が充填されている。
また、この「データ数/データ部」に3bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
また、この「基準値/データ部」に10bitの数値が充填されているため、「基準値/データ部幅−1」の項目39には、「10−1=9」を示す「001001」が設定されている。
さらに、この「後続データ/データ部幅−1」には1bit幅の数値が設定されているため、「後続データ/データ部幅−1の表現幅−1」の項目41には、「1−1=0」を示す「000」が設定されている。
この場合は、各時刻間に10の2乗の最大公約数が存在していないため、圧縮前(図15(a))と圧縮後(図15(b))で値に変化が生じていない。
図15(b)の例では、買気配5時刻の値が1334で最も小さいため、買気配5時刻の分換算の値「814」が基準値として認定され、メモリ上に設定された「値」の項目32に充填される。これに対し買気配1時刻〜買気配4時刻に関しては、差分として「1」が格納される。
また「基準値位置」の項目34には、買気配5時刻を示す「4」が設定されている。
「01000010101001001110010111000001111011100」(41bit)
まず先頭の「圧縮方法(2bit固定)」の項目35の「01」は、圧縮方法が「共通除数圧縮+最小値差分圧縮」であることを示す識別コードである。
また、次の「10nのn(3bit固定)」の項目36は、共通除数圧縮における10のn乗のnを特定する値を記述する部分であり、今回は10の2乗の最大公約数が存在しないため、「000」が充填されている。
また、この「データ数/データ部」に3bitの数値が充填されているため、「3−1=2」を示す「010」が設定されている。
また、この「基準値/データ部」に10bitの数値が充填されているため、「基準値/データ部幅−1」の項目39には、「10−1=9」を示す「001001」が設定されている。
さらに、この「後続データ/データ部幅−1」には1bit幅の数値が設定されているため、「後続データ/データ部幅−1の表現幅−1」の項目41には、「1−1=0」を示す「000」が設定されている。
(1)市況データの中から、圧縮対象となるデータ項目の値を、予め設定された順番に従って取り出し、メモリ上にコピーする。
(2)各データ項目の値に対して、当該データ項目別に設定された圧縮方法に従い、順番に圧縮処理を施す。この際、圧縮グループが設定されているデータ項目については、まとめて圧縮処理を施す。
(3)必要なデータ項目に対する圧縮処理が完了した後、市況データ圧縮部12は、圧縮データに所定のファイル名(例えば、銘柄コード+受信日時)を付加して圧縮データ記憶部14に格納する。
11 市況データ取得部
12 市況データ圧縮部
13 市況データ記憶部
14 圧縮データ記憶部
15 圧縮データ送信部
18 情報ベンダーのコンピュータ
19 証券取引所のホストコンピュータ
20 注文情報生成システム
21 圧縮データ解凍部
22 クライアント端末
23 市況データ記憶部
24 注文情報生成部
26 注文情報記憶部
25 圧縮データ解凍部
28 仮想取引システム
30 データ部
31 「データ部幅−1」の項目
32 「値」の項目
33 「データ数」の項目
34 「基準値位置」の項目
35 「圧縮方法(2bit固定)」の項目
36 「10nのn(3bit固定)」の項目
37 「データ数/データ部幅−1」の項目
38 「データ数/データ部」の項目
39 「基準値/データ部幅−1」の項目
40 「基準値/データ部」の項目
41 「後続データ/データ部幅−1の表現幅−1」の項目
42 「後続データ/データ部幅−1」の項目
43 「後続データ/データ部」の項目
44 「基準値位置/データ部幅−1」の項目
45 「基準値位置/データ部」の項目
Claims (8)
- 証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、相互の値の大きさに一定の順序性を備えた所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段と、
当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段と、
この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段と、
各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段と、
上記基準値と、2番目に値の小さいデータとの差分を算出し、当該データの値をこの差分を示すビット列に置き換える手段と、
この2番目に値の小さいデータ以外にもデータが存在する場合には、各データを値の小さい順に並べて相互間の差分を算出し、この差分を示すビット列によって値の大きい方のデータの値を置き換える手段と、
この差分を示すビット列の中で最もビット幅の広いものを特定する手段と、
この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段と、
このビット幅が揃えられたビット列を一定の順序で接続する手段と、
この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段と、
上記の各ビット列を所定の順序で接続して圧縮データを生成する手段と、
を備えたことを特徴とする市況データ圧縮システム。 - 証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段と、
当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段と、
この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段と、
各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段と、
上記基準値と、他のデータの値との差分を算出し、それぞれのデータの値をこの差分を示すビット列に置き換える手段と、
この差分を示すビット列の中で最もビット幅の広いものを特定する手段と、
この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段と、
このビット幅が揃えられたビット列を一定の順序で接続する手段と、
この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段と、
上記の各ビット列を所定の順序で接続して圧縮データを生成する手段と、
を備えたことを特徴とする市況データ圧縮システム。 - 上記基準値に認定されたデータの位置を示す可変長のビット列を生成する手段と、
この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値位置表現用のビット列を生成する手段と、
この基準値位置表現用のビット列を、上記圧縮データの所定の位置に挿入する手段を備えたことを特徴とする請求項2に記載の市況データ圧縮システム。 - 上記市況データに含まれる各種データ項目の中から複数のデータ項目の値を同一の圧縮グループを構成するデータとして抽出した後に、この圧縮グループに含まれる各データの値間に10のn乗の最大公約数が存在するか否かが判定され、
この10のn乗の最大公約数が存在する場合に、各データの値が、当該最大公約数でそれぞれの値を除した商に置き換えられ、
上記基準値表現用のビット列及び上記後続データ表現用のビット列が、この商に基づいて生成され、
さらに、上記10のn乗のnを表す固定長のビット列が、上記圧縮データの所定の位置に挿入されることを特徴とする請求項1〜3の何れかに記載の市況データ圧縮システム。 - 上記ビット幅を定義する固定長のビット列が、「ビット幅−1」を示すビット列よりなることを特徴とする請求項1〜4の何れかに記載の市況データ圧縮システム。
- 上記市況データに含まれる各種データ項目の中で、所定のデータ項目に係る固定長のデータを個別圧縮の対象として抽出する手段と、
この固定長データの先頭部に付加された0を除去して、可変長のビット列に変換する手段と、
このビット列の先頭に、そのビット幅を定義する固定長のビット列を付加して圧縮データを生成する手段と、
を備えたことを特徴とする請求項1〜5の何れかに記載の市況データ圧縮システム。 - コンピュータを、
証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、相互の値の大きさに一定の順序性を備えた所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段、
当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段、
この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段、
各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段、
上記基準値と、2番目に値の小さいデータとの差分を算出し、当該データの値をこの差分を示すビット列に置き換える手段、
この2番目に値の小さいデータ以外にもデータが存在する場合には、各データを値の小さい順に並べて相互間の差分を算出し、この差分を示すビット列によって値の大きい方のデータの値を置き換える手段、
この差分を示すビット列の中で最もビット幅の広いものを特定する手段、
この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段、
このビット幅が揃えられたビット列を一定の順序で接続する手段、
この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段、
上記の各ビット列を所定の順序で接続して圧縮データを生成する手段、
として機能させることを特徴とする市況データ圧縮プログラム。 - コンピュータを、
証券取引所のコンピュータから送信された市況データに含まれる各種データ項目の中で、所定の複数のデータ項目の値を、同一の圧縮グループを構成するデータとして抽出する手段、
当該圧縮グループに属するデータの数を示す可変長のビット列を生成する手段、
この可変長のビット列の先頭に、そのビット幅を定義する固定長のビット列を付加し、データ数表現用のビット列を生成する手段、
各データの中で最も小さい値のものを基準値と認定し、この基準値を可変長のビット列で表現したものの先頭に、そのビット幅を定義する固定長のビット列を付加し、基準値表現用のビット列を生成する手段、
上記基準値と、他のデータの値との差分を算出し、それぞれのデータの値をこの差分を示すビット列に置き換える手段、
この差分を示すビット列の中で最もビット幅の広いものを特定する手段、
この最もビット幅の広いビット列よりも狭いビット幅のビッド列の先頭に0を必要数付加して、それぞれのビット幅を揃える手段、
このビット幅が揃えられたビット列を一定の順序で接続する手段、
この接続されたビット列の先頭に、個々のビット列のビット幅を定義する固定長のビット列を付加し、後続データ表現用のビット列を生成する手段、
上記の各ビット列を所定の順序で接続して圧縮データを生成する手段、
として機能させることを特徴とする市況データ圧縮プログラム。
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)
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)
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 | データ符号化装置、方法、及びプログラム |
-
2009
- 2009-06-26 JP JP2009152831A patent/JP5044614B2/ja not_active Expired - Fee Related
Patent Citations (7)
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)
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) | 取引対象物について電子的な価格提示を提供するためのシステムおよび方法 | |
US20180336632A1 (en) | System and Method for Providing Market Data in an Electronic Trading Environment | |
CN103377190A (zh) | 一种基于交易平台的供应商信息搜索方法和装置 | |
TWI242724B (en) | Methods and systems for optimizing return and present value | |
JP2004234285A (ja) | テクスチャ画像圧縮装置及び方法、テクスチャ画像抽出装置及び方法、データ構造、記憶媒体 | |
US20060122897A1 (en) | Online offer system | |
CN104574186A (zh) | 通过显示市场深度和价格的交易 | |
CN111489180A (zh) | 参考信息生成方法、***及装置 | |
JP5044614B2 (ja) | 市況データ圧縮システム及びプログラム | |
CN103995887A (zh) | 位图索引压缩方法和位图索引解压方法 | |
CN106910129A (zh) | 资产数据的处理方法、客户端及服务器 | |
CN107590157A (zh) | 一种数据存储方法、数据查询方法及相关设备 | |
CN111125786A (zh) | 基于区块链的债券配售数据存储方法、装置及*** | |
KR101794936B1 (ko) | 가중치를 이용한 수입 패션 상품 가격 책정 방법 | |
CN101312448A (zh) | 一种数据处理方法 | |
Kilgore et al. | Trends in Minnesota's forestland real estate market: Potential implications for forestland uses | |
JP3307909B2 (ja) | 株価データの圧縮方法及び株価データの圧縮送信方法 | |
TWI766144B (zh) | 遊戲帳號估價方法及其系統 | |
CN107330790B (zh) | 一种节省存储空间的追溯资产所有权变更历史的方法 | |
CN106952076A (zh) | 基于大宗商品交易平台的电子合同签订方法及交易平台*** | |
Ghosh | The IPO phenomenon in the 1990s | |
CN106446963A (zh) | 找化网背景下多不定核匹配算法 | |
JP6230315B2 (ja) | マーケットインパクト減衰係数算出装置、マーケットインパクト減衰係数算出方法、約定シミュレーションシステム、及び約定シミュレーション方法 | |
KR102664348B1 (ko) | 암호화폐 지갑 주소를 클러스터링하는 방법 및 이를 위한 장치 |
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 |