(57)【特許請求の範囲】
【請求項１】
時系列データの中から、順次、処理の対象となる対象データを参照して必要とする対象データを選択し、他の対象データを破棄することによりデータを圧縮する時系列データ圧縮装置であって、
各対象データ毎に、当該対象データを含む、過去の直近のＮ（但し、Ｎは整数）個の対象データを参照して、そのＮ個の対象データの中から、最大値と、最小値と、平均値とを算出する前処理手段と、
対象データについて、当該対象データが前記平均値より小さいときには、前記最大値を記憶する最大値の選択処理を行い、当該対象データが前記平均値以上のときには、当該対象データを破棄処理する第１選択処理手段と、
対象データについて、当該対象データが前記平均値より大きいときには、前記最小値を記憶する最小値の選択処理を行い、当該対象データが前記平均値以下のときには、当該対象データを破棄処理する第２選択処理手段と、
直近の処理が第１選択処理手段による前記最大値の選択処理であったのか或いは第２処理選択手段による前記最小値の選択処理であったのかを記憶する記憶手段と、
各対象データ毎に、前記記憶手段を参照して直近の処理が前記最大値の選択処理であったのか或いは前記最小値の選択処理であったのかを判断し、直近の処理が最大値の選択処理であったときには当該対象データを前記第２選択処理手段で処理させ、また直近の処理が最小値の選択処理であったときには、当該対象データを前記第１選択処理手段で処理させる切換手段と、
を具備することを特徴とする時系列データ圧縮装置。
【請求項２】
前記時系列データは市況データであり、前記対象データは、時間データの他に、少なくとも、始値、高値、安値及び終値を含む複数のフィールドを有するレコードであることを特徴とする請求項１記載の時系列データ圧縮装置。
【請求項３】
前記最大値は高値であり、前記最小値は安値であり、前記平均値は終値の平均値であることを特徴とする請求項２記載の時系列データ圧縮装置。
【請求項４】
前記Ｎの値は３〜１０の何れかであることを特徴とする請求項１、２又は３記載の時系列データ圧縮装置。
【請求項５】
前記最大値の選択処理及び前記最小値の選択処理により選択された最大値及び最小値を順次、直線で結んだ折線グラフとして表示手段に表示する表示制御手段を具備することを特徴とする請求項１、２、３又は４記載の時系列データ圧縮装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、株価、外国為替、貴金属、指数、先物、半導体、素材、その他の価格変動を伴う市況素材の時系列データを圧縮する時系列データ圧縮装置に関する。
【０００２】
【従来の技術】
従来から、時系列データ、例えば株価データは、一日単位又は週単位のローソク足チャート等の株価チャートとして、投資家等に提供されている。この株価データを長期間にわたって記憶しているデータベースは、レコード数が多くなり、コンピュータ、テレビ受像機、携帯電子端末等の表示解像度を超えた件数になると、大量のレコードをビジュアルに表示することが困難となる。たとえば、横方向６００ドットのデバイス（表示エリア）で、１０００レコードの株価データをチャートとして表示すると、複数のレコードの情報が横１ドットに収斂するため、画面がつぶれて、表示が見にくくなってしまう。
【０００３】
また、株価データ等の市況データの多くは、「始値」「高値」「安値」「引値」で構成される４本値を、ローソクと呼ばれる形式で表現するが、１レコードあたりの表現に必要とする横方向ドット数は最低でも３ドットであるため、限られた領域の画像表示装置において表示できるデータ数は限定されていた。
【０００４】
更に、専用回線を持っていない一般の投資家は、膨大な量の株価チャートや株価データをダウンロードするのに時間がかかり、したがって一般の投資家にとって従来の株価データや株価チャートは使い勝手が良くないと言う問題があった。
【０００５】
このような状況の下、株価データを圧縮する各種の圧縮方法が提案されている。
【０００６】
【発明が解決しようとする課題】
従来の圧縮方法の一つとして、表示できる期間を長期化するために、１ヶ月単位のデータを１本のローソクに集約して表示する方法がある。この方法の場合、１ヶ月のなかの価格変動履歴が単純化されてしまうために、重要なポイントが読み取り難くなってしまうと言う問題がある。
【０００７】
また、従来の表示技術の中には、新値足、カギ足、Ｐｏｉｎｔ  ＆  Ｆｉｇｕｒｅチャートと呼ばれるものがある。これらの表示技術は、価格変動を圧縮して表示するが、時間軸のデータが失われるという点で共通している。このように時間軸のデータが失われると、次のような問題が生ずる。投資家は、例えば、前の高値から次の高値まで何箇月かかったか。或いは前の調整局面から次の調整局面まで何箇月かかったか等の株価変動の周期性を重要視している。しかしながら、カギ足等の表示方法では、係る株価変動の周期性を表示することはできない。
【０００８】
更に、一般に、投資家は、株価チャートにおける価格の変動パターンを参考にして、売買のタイミングを決めている。株価チャートの変動パターンとしては、例えば、徐々に鍋底状に上昇している状態、株価の上下の振幅が徐々に小さくなっている状態、また、上下に振幅しているときに前回の安値点（下げから上げに向かうときの変化点）より次回の安値点の方が徐々に上がっている状態等、がある。このような価格の変動パターンは、個々の会社の株価についても、或いは日経平均株価についても言えることである。したがって、株価データ等の時系列データを圧縮するときには、ノイズを含む大量の株価データのなかから、変動パターンを残しながら圧縮する必要がある。
【０００９】
本発明は上記事情に基づいてなされたものであり、時系列データの変動の周期性や変動パターンを残しつつ、時系列データを圧縮することができる時系列データ圧縮装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するために本発明に係る時系列データ圧縮装置は、時系列データの中から、順次、処理の対象となる対象データを参照して必要とする対象データを選択し、他の対象データを破棄することによりデータを圧縮する時系列データ圧縮装置であって、各対象データ毎に、当該対象データを含む、過去の直近のＮ（但し、Ｎは整数）個の対象データを参照して、そのＮ個の対象データの中から、最大値と、最小値と、平均値とを算出する前処理手段と、対象データについて、当該対象データが前記平均値より小さいときには、前記最大値を記憶する最大値の選択処理を行い、当該対象データが前記平均値以上のときには、当該対象データを破棄処理する第１選択処理手段と、対象データについて、当該対象データが前記平均値より大きいときには、前記最小値を記憶する最小値の選択処理を行い、当該対象データが前記平均値以下のときには、当該対象データを破棄処理する第２選択処理手段と、直近の処理が第１選択処理手段による前記最大値の選択処理であったのか或いは第２処理選択手段による前記最小値の選択処理であったのかを記憶する記憶手段と、各対象データ毎に、前記記憶手段を参照して直近の処理が前記最大値の選択処理であったのか或いは前記最小値の選択処理であったのかを判断し、直近の処理が最大値の選択処理であったときには当該対象データを前記第２選択処理手段で処理させ、また直近の処理が最小値の選択処理であったときには、当該対象データを前記第１選択処理手段で処理させる切換手段と、を具備することを特徴とするものである。
【００１２】
【発明の実施の形態】
以下、本発明の１実施形態である時系列データ圧縮装置について図面を参照して説明する。なお、本実施形態の装置では、時系列データとして株価データを用い、この株価データの週足のデータを圧縮する場合について説明する。本実施形態の装置は、データベース内の大量のレコードについて、各レコード毎に必要なレコードか否かを判断し、必要なレコードのみを選択して残し、他のレコードを破棄することによりデータの圧縮を行う。また、本実施形態の各レコードには、「時間データ」の他に、少なくとも「始値」、「高値」、「安値」及び「終値」の４つのフィールドが含まれている。
【００１３】
［実施形態の構成］図１は、本発明の一実施形態である時系列データ圧縮装置の概略ブロック図である。本実施形態の時系列データ圧縮装置は、株価データを記憶しているデータベース１０と、データベース１０の各レコードについて選択処理を行う前の事前処理を行う前処理部１１と、選択処理を行う第１選択処理部１３及び第２選択処理部１４と、直近の処理が第１選択処理部１３による選択処理であったのか或いは第２処理選択部１４による選択処理であったのか等を記憶する記憶部１５と、第１選択処理部１３による選択処理と第２選択処理部１４による選択処理とを交互に行わせるための切換部１２と、選択・圧縮後のデータ等を表示する表示部１６と、データベース１０のレコードの位置を示すアドレスを格納するポインタ１７と、装置全体の制御を行う制御部２０とを含んでいる。
【００１４】
前処理部１１は、データベース１０の各レコードについて、第１選択処理部１３又は第２選択処理部１４による選択処理を行う前に、当該レコードを含む直近の過去３回分のレコードを参照して最大値、最小値及び平均値を算出してその結果を記憶部１５等に記憶する。最大値を算出するときには、過去３個分のレコードにおける高値のなかから一番大きい値の高値を算出する。最小値を算出するときには、過去３個分のレコードにおける安値のなかから一番小さい安値を算出する。また、過去３個分のレコードの平均値を算出するときには、過去３個分のレコードにおける終値の平均値を算出する。なお、平均値を算出するときには、始値を用いて算出するようにしてもよい。また、最大値、最小値及び平均値の全てを終値、始値又は出来高加重平均を用いて算出するようにしてもよい。更に、データベースの先頭のレコードを処理するときには先頭のレコードを用いて、２番目のレコードを処理するときには１番目と２番目の２つのレコードを用いて、最大値、最小値及び平均値を算出する。
【００１５】
第１選択処理部１３は、処理対象となる各レコード毎に、そのレコードの終値と前処理部１１で算出した平均値とを比較し、そのレコードの終値が平均値より小さいときには、前処理部１１が算出した高値の最大値を含むレコードにフラグを立てる選択処理（最大値の選択処理）を行い、そのレコードの終値が平均値以上のときには、そのレコードを破棄処理する。
【００１６】
第２選択処理部１４は、処理対象となる各レコード毎に、そのレコードの終値と前処理部１１で算出した平均値とを比較し、そのレコードの終値が平均値より大きいときには、前処理部が算出した安値の最小値を含むレコードにフラグを立てる処理（最小値の選択処理）を行い、そのレコードの終値が平均値以下のときには、そのレコードを破棄処理する。
【００１７】
なお、第１選択処理部１３や第２選択処理部１４において、レコードにフラグを立てる代わりに、最大値の高値や最小値の安値を記憶部等に記憶するようにしてもよい。
【００１８】
ポインタ２０は、前処理部１１、第１選択処理部１３及び第２選択処理部１４等が処理を行うときの処理対象となるレコードの位置を示すものであり、一のレコードの処理が終るたびにインクリメントされる。したがって、このポインタ２０は、後述するメインプログラムだけでなくサブルーチンによっても参照される。
【００１９】
切換部１２は、各レコード毎に、記憶部１５を参照して直近の処理が第１選択処理部１３による最大値の選択処理であったのか或いは第２選択処理部１４による最小値の選択処理であったのかを判断し、直近の処理が最大値の選択処理であったときには当該対象レコードを第２選択処理部１４で処理させ、また直近の処理が最小値の選択処理であったときには、当該対象レコードを第１選択処理部１３で処理させる。これにより、第１選択処理部１３で選択処理を行った後は、次に必ず第２選択処理部１４で選択処理が行われ、また第２選択処理部１４で選択処理を行った後は、次に必ず第１選択処理部１３で選択処理が行われる。すなわち、本実施形態では、最大値の選択処理と最小値の選択処理とは、交互に行われる。
【００２０】
制御部２０は、前処理部１１、第１選択処理部１３及び第２選択処理部１４等の要求に応じて、記憶部１５のデータの読み書きを制御したり、処理の始めにポインタの値を１にセットしたり、一のレコードの処理が終る毎に、ポインタの値をインクリメントしたりする処理を行う。また、制御部２０は、圧縮したデータを、後述する方法で表示部１６に表示したりする。
【００２１】
［実施形態の動作］  次に、本実施形態の時系列データ圧縮装置の処理手順について、図２から図５を参照して説明する。図２はメインプログラムの処理手順を示す図であり、図３〜図５はメインプログラムから呼び出されるサブルーチン（関数）の処理手順を示す図である。なお、図２から図５において、レコードはブロックとも称する。
【００２２】
所定の初期設定を行った後、ステップＳ１では、ブロック長（ＴｈｅＢｌｏｏｋ）を定義する。株価データの場合、このブロック長（Ｎ）は、３〜１０の中から適当な数値を選んで設定する。本実施形態では、上述したように３週分のレコードを参照して事前処理を行うこととしているので、ここではブロック長を３に設定する。
【００２３】
ステップＳ２では、第１選択処理部又は第２選択処理部による選択処理が行われていないので、取り敢えず、前回の選択処理の結果を示す最終検出データ変数（ＬａｓｔＬａｂｅｌ）をヌルで初期化する。
【００２４】
ステップＳ３では、ポインタ２０の値をデータベースの先頭レコードを示す値「１」に設定する。ステップＳ４では参照しているレコードがデータベース１０の最後のレコードであるか否かを判断する。最後のレコードでなければ、ステップＳ５に移行する。ステップＳ５では、図３から図５に示す３つのサブルーチンを実行する。なお、図３から図５に示す各サブルーチンで参照するデータベースのレコードの位置は、メインプログラムで設定された位置と同じ位置（同じポインタ２０）とする。
【００２５】
図３に示すサブルーチンの処理手順は、所定の初期設定を行った後、ステップＳ２１では、現在のデータベースのレコードの参照位置Ｐ（ポインタ２０の値）がブロック長（ＢｌｏｃｋＳｉｚｅ）＝３より大きいか否かを判断する。この場合は、ポインタ２０の位置Ｐは１であるので、ステップＳ２３に移行して、先頭のレコードからＰの位置のレコードまで（この場合、先頭のレコードのみ）の高値を戻り値として一時的に記憶する。なお、Ｐが２のときには、先頭から２個のレコードのなかで、またＰが３のときには先頭から３個のレコードのなかで、高値が最大値となるものを計算して、その最大値を戻り値として一次的に記憶する。一方、参照位置Ｐがブロック長（ＢｌｏｃｋＳｉｚｅ）＝３より大きいときには、ステップＳ２２に移行して、現在の参照位置Ｐから過去方向にＰを含めたブロック長（ＢｌｏｃｋＳｉｚｅ）＝３の長さだけ溯った範囲のレコード（３個分のレコード）の中から高値の最大値を計算して、その最大値を戻り値として一時的に記憶する。
【００２６】
図４に示すサブルーチンの処理手順は、所定の初期設定を行った後、ステップＳ３１では、現在のデータベースのレコードの参照位置Ｐ（ポインタ２０の値）がブロック長（ＢｌｏｃｋＳｉｚｅ）＝３より大きいか否かを判断する。この場合は、ポインタ２０の位置Ｐは１であるので、ステップＳ３３に移行して、先頭のレコードからＰの位置のレコードまで（この場合、先頭のレコード）の安値を戻り値として一時的に記憶する。なお、Ｐが２のときには、先頭から２個のレコードのなかで、またＰが３のときには先頭から３個のレコードのなかで、最小値となる安値を計算して、その最小値を戻り値として一次的に記憶する。一方、参照位置Ｐがブロック長（ＢｌｏｃｋＳｉｚｅ）＝３より大きいときには、ステップＳ２２に移行して、現在の参照位置Ｐから過去方向にＰを含めたブロック長（ＢｌｏｃｋＳｉｚｅ）＝３の長さだけ溯った範囲のレコード（３個分のレコード）の中から安値の最小値を計算して、その最小値を戻り値として一時的に記憶する。
【００２７】
図５に示すサブルーチンの処理手順は、所定の初期設定を行った後、ステップＳ４１では、現在のデータベースのレコードの参照位置Ｐ（ポインタ２０の値）がブロック長（ＢｌｏｃｋＳｉｚｅ）＝３より大きいか否かを判断する。この場合は、ポインタ２０の位置Ｐは１であるので、ステップＳ４３に移行して、先頭のレコードからＰの位置のレコードまで（この場合、先頭のレコード）の終値を戻り値として一時的に記憶する。なお、Ｐが２のときには、先頭から２個のレコードのなかで、またＰが３のときには先頭から３個のレコードのなかで、終値の平均値を計算して、その平均値を戻り値として一次的に記憶する。一方、参照位置Ｐがブロック長（ＢｌｏｃｋＳｉｚｅ）＝３より大きいときには、ステップＳ２２に移行して、現在の参照位置Ｐから過去方向にＰを含めたブロック長（ＢｌｏｃｋＳｉｚｅ）＝３の長さだけ溯った範囲のレコード（３個分のレコード）の中から終値の平均値を計算して、その平均値を戻り値として一時的に記憶する。
【００２８】
上記の図３から図５に示すサブルーチンの処理が終了すると、図１のステップＳ６の処理が行われる。ステップＳ６では、前回の選択処理の結果を示す最終検出データ変数（ＬａｓｔＬａｂｅｌ）がステップＳ３で設定した初期値であるか或いは最小値の選択処理を行ったことを示す「Ｍｉｎ」であるかを判断する。今は、初期値であるので、ステップＳ７に移行する。初期値や「Ｍｉｎ」でなければ、ステップＳ９に移行する。
【００２９】
ステップＳ７では、処理対象となっているレコード（ポインタ２０が示すレコード）の終値が、ステップＳ５で求めた平均値（ｄＢｌｏｃｋＡｖｅ）よりも小さいか否かを判断する。平均値より小さければ、ステップＳ８に移行し、平均値以上であれば、ステップＳ９に移行する。
【００３０】
ステップＳ８では、ステップＳ５で求めた最大値（ｄＢｌｏｃｋＭａｘ）と同じ値を高値に持つレコードを探し、当該レコードの時間データを含むデータを表示データとして選択処理する（当該レコードにフラグを立てる。）。なお、このときに、該当する最大値と同じ高値を持つレコードが複数ある場合には、予め決められている、例えば時間的に後の方のレコードを表示データとして選択処理する。また、選択処理が最大値を選択する処理であったことを示すために、前回の選択処理の結果を示す最終検出データ変数（ＬａｓｔＬａｂｅｌ）に「Ｍａｘ」を代入する。このように最終検出データ変数を「Ｍａｘ」とすることにより、次回以降のレコードを処理するときには、必ず第２選択処理部による最小値を探す選択処理（ステップＳ９〜ステップＳ１１）を実行させ、安値を探すようにすることができる。
【００３１】
ステップＳ９では、前回の選択処理の結果を示す最終検出データ変数（ＬａｓｔＬａｂｅｌ）が初期値であるか、或いは最大値の選択処理を行ったことを示す「Ｍａｘ」であるかを判断する。初期値又は「Ｍａｘ」であれば、ステップＳ１０に移行する。初期値や「Ｍａｘ」でなければ、ステップＳ１２に移行する。
【００３２】
ステップＳ１０では、処理対象となっているレコード（ポインタ２０が示すレコード）の終値が、ステップＳ５で求めた平均値（ｄＢｌｏｃｋＡｖｅ）よりも大きいか否かを判断する。平均値より大きければ、ステップＳ１１に移行し、平均値以下であれば、ステップＳ１２に移行する。
【００３３】
ステップＳ１１では、ステップＳ５で求めた最小値（ｄＢｌｏｃｋＭｉｎ）と同じ値を安値に持つレコードを探し、当該レコードの時間データを含むデータを表示データとして選択処理する（当該レコードにフラグを立てる。）。なお、このときに、該当する最小値と同じ安値を持つレコードが複数ある場合には、予め決められている、例えば時間的に後の方のレコードを表示データとして選択処理する。また、選択処理が最小値を選択する処理であったことを示すために、最終検出データ変数（ＬａｓｔＬａｂｅｌ）に「Ｍｉｎ」を代入する。このように最終検出データ変数を「Ｍｉｎ」とすることにより、次回以降のレコードを処理するときには、必ず第１選択処理部による最大値を探す選択処理（ステップＳ６〜ステップＳ８）を実行させ、高値を探すようにすることができる。
【００３４】
上記のステップＳ６からステップＳ１１の処理を行うことにより、各処理対象のレコードの終値が過去３回分のレコードの平均値より、若干、下がったときに、過去の３回分のレコードの中から高値の最大値を見つけて選択処理する。また、処理対象のレコードの終値が過去３回分のレコードの平均値より、若干、上がったときに、過去の３回分のレコードの中から安値の最小値を見つけて選択処理する。更に、高値の最大値と安値の最小値を交互に選択処理することにより、データを圧縮する。
【００３５】
ステップＳ１２では、処理対象となるレコードを次のレコードに変更するために、ポインタ２０の値をインクリメントする。この処理の後、ステップＳ４に戻る。以下、データベースの最後のレコードの処理が終るまで、すなわち、対象となるデータベースが有するレコードの数と同じ回数だけ、ステップＳ４からステップＳ１２までの処理を繰り返して実行することにより、レコードの数を圧縮する。
【００３６】
ステップＳ４の判断で処理対象のレコードが最後のレコードであると判断すると、ステップＳ１３に移行して最後のレコードの終値を表示データとして選択処理して、この処理を終了する。
【００３７】
上記の処理手順により、３番目以降のレコードについては、各レコード毎に、過去の３個分のレコードのデータに基づいて、予め最大値と最小値と平均値を算出して保持し、第１選択処理部１３による最大値の選択処理或いは第２選択処理部１４による最小値の選択処理を行う。第１選択処理部１３では、処理対象となるレコードの終値と平均値とを比較し、終値が平均値より小さいときには最大値の選択処理を行い、終値が平均値以上のときには、そのレコードを破棄処理する。第２選択処理部１４では、処理対象となるレコードの終値と平均値とを比較し、終値が平均値より大きいときには最小値の選択処理を行い、終値が平均値以下のときには、そのレコードを破棄処理する。切換部１２は、最大値の選択処理と最小値の選択処理が交互に行われるように制御する。このような選択処理と破棄処理によってレコードの圧縮を行うことにより、株価の周期性や変動パターンを残しつつ、データを圧縮することができる。
【００３８】
図６は、本実施形態の装置で株式会社コナカの実際の株価データを圧縮した後のデータに基づいて表示したグラフである。なお、同図は、週単位のデータに基づいて、１９９８年２月から２０００年の６月迄のデータの圧縮を行ったものである。最小値（安値）及び最大値（高値）を順次、高値から安値、或いは安値から高値に直線で結び、先端に矢印を付け、且つ各安値及び高値の位置に実際の価格を表示している。なお、図６では、最後のレコードの終値の価格を表示していないが、この価格を表示するようにしてもよい。
【００３９】
図７は本実施形態の装置で圧縮する前の株式会社コナカの株価データを週足ローソクで表示したグラフである。なお、図７のグラフは、１９９９年２月から２０００年６月迄のデータを表示したものである。図６と図７の対応する期間を比較してみると、図７に表示されている１９９９年２月から２０００年６月迄の期間は、図６では略半分以下の期間に圧縮されている。実際のこの期間の株式会社コナカの全レコード数が１５５であるのに対して、本実施形態の装置によって圧縮した後のレコード数は２９であり、圧縮率は約１／３である。また、本実施形態の装置により、ソニー（株）の実際の株価データを同様にして、圧縮したところ、２８０レコードの週足データは、６０レコードに圧縮された。このように、本実施形態の装置によれば、少なくとも１／２から１／１０位に株価データを圧縮することができる。
【００４０】
また、図６のグラフを見ると、この株価チャートの変動パターンがペナントであることを容易に認識することができる。更に、図６のグラフから価格変動の周期性についても、周期が徐々に短くなっていることを容易に認識することができる。一方、図７を良く見ると、図６と同様の変動パターンや周期性があることが分かる。このように、本実施形態の装置によれば、株価チャートの変動パターンや周期性を残して、データを圧縮することができ、しかも従来のチャートに比べて変動パターンや周期性の認識が容易になる。したがって、投資家は、図６に示された過去の傾向から、次回の価格変動の目安とすべき日付や価格を容易に読み取ることができる。なお、上記の実施形態では、１社の株価データを圧縮した場合について説明したが、日経平均株価のデータを圧縮しても、同様の圧縮を行うことができる。また、本実施形態によれば、ペナント以外の他の価格の変動パターンである、例えばダブルトップやダブルボトム等についても、容易且つ確実に見つけることができる。
【００４１】
また、大量のデータのなかから、抵抗線や指示線を見つけるのは、コンピュータを用いても容易ではないが、上記の本実施形態によれば、データの数が少ないので、図６に示すように抵抗線Ａや指示線Ｂを容易に表示することができる。多数のデータの中から変動パターンや周期性を探すのはコンピュータを用いても、容易ではない。しかしながら、本実施形態により圧縮したデータを用いて変動パターンや周期性を見つけるのは、計算容量が少ないので、非力なコンピュータでも、容易に見つけることができる。また、一般の投資家にとっては、図７に示す従来の複雑な株価チャートから抵抗線や指示線を見つけるのは難しいが、本実施形態によれば、抵抗線Ａや指示線Ｂを描かなくても、一般の投資家が容易に、指示線や抵抗線を認識することができる。
【００４２】
なお、株価データの場合、Ｎの値が２以下だと、特徴点を抽出することが難しく、またＮの値が１０以上であると、ラフになり過ぎる。したがって、株価データの場合、Ｎの値は、３〜１０の間が望ましい。なお、処理対象のデータ量が多かったり、表示装置が小さい場合には、Ｎの値を１１以上とすることも可能である。
［実施形態の効果］
上記の本実施形態によれば、相場が上がりつづけているときには、過去の最小値（安値）を見つけ、相場が上がりつづけている間のデータは破棄し、次にデータを取得するのは、相場が下がるときである。そして、相場が下がりつづけている間は、その間のデータを破棄する。これにより、データを圧縮するとともに、過去の高値と安値だけに着目してデータを選択することができる。一般の投資家は、上げ相場のときには、高値に注目している。また、下げ相場のときには、安値に注目している。しかし、投資の専門家は、上げ相場のときには、その相場の安値に注目している。また下げ相場のときには、その相場の高値に注目している。本実施形態によれば、この専門家の視点から、市況データを圧縮していると言える。
【００４３】
また、本実施形態によれば、膨大な株価データを価格の変動パターンや周期性が残るようにして必要な大きさに圧縮することができるので、従来は不可能であった、携帯端末にも、インターネット等を介して、その表示能力に応じた株価データのチャートを転送することが可能となる。すなわち、従来の株価データの転送量は、数十ギガバイトであるので、インターネットを介して、この膨大な量の株価データを転送すると、転送費用が嵩んでしまう。しかしながら、本実施形態の装置でデータを圧縮することにより、インターネットを使用して携帯端末に株価データを転送する場合でも、転送料金が安価なものなる。したがって、本実施形態によれば、携帯端末への株価データの転送サービスを事業として行うことも可能となる。
【００４４】
更に、本実施形態によれば、株価の変動の周期性や変動パターン等の特徴部分の認識を困難にする撹乱性データ（ノイズ）を効率よく除去して、特徴部分を残した圧縮を行うことができるので、圧縮されたデータを用いて容易に特徴部分を把握することができ、したがって株価売買の的確な判断を迅速に行うことができる。例えば、本実施形態によれば、一分間に数十銘柄の価格パターンのチェックが可能であるが、同様の読み取り作業を、図７に示す従来の方法で行うと、ノイズが多いので長い時間を要し、しかも画面を注視するので目が疲れる。
【００４５】
［他の実施形態］なお、本発明は、上記の実施形態に限定されるものではなく、その要旨の範囲内において種々の変形が可能である。例えば、上記の実施形態では、Ｎが３である場合について説明したが、このＮの値を変えることにより、圧縮率や圧縮精度を自在に変更することができる。すなわち、圧縮対象となるデータの量と携帯端末等の表示装置の能力とに応じて、Ｎの値を設定することにより、膨大なデータの特徴部分をできるだけ残して、小さな表示装置に表示することが可能となる。
【００４６】
また、上記の実施形態では、株価データを圧縮する場合について説明したが、本発明はこれに限定されるものではなく、外国為替、貴金属、指数、先物、半導体、素材、その他の価格変動を伴う市況素材の時系列データを圧縮するようにしてもよい。
【００４７】
更に、本発明は、上記の実施形態に限定されるものではなく、始値や高値フィールドを持たない、いわゆる一本値と呼ばれる時系列データを圧縮する場合、或いは出来高加重平均の時系列データを圧縮する場合等に用いることができる。
【００４８】
【発明の効果】
以上説明したように本発明によれば、適切なＮの値を設定することにより、データ量や表示装置の能力に応じて、時系列データの変動の周期性や変動パターンを残しつつ、時系列データを圧縮することができる時系列データ圧縮装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態である時系列データ圧縮装置の概略ブロック図である。
【図２】メインプログラムの処理手順を示す図である。
【図３】図２のメインプログラムから呼び出されるサブルーチン（関数）の処理手順を示す図である。
【図４】図２のメインプログラムから呼び出されるサブルーチン（関数）の処理手順を示す図である。
【図５】図２のメインプログラムから呼び出されるサブルーチン（関数）の処理手順を示す図である。
【図６】本実施形態の装置で株式会社コナカの実際の株価データを圧縮した後のデータに基づいて表示したグラフである。
【図７】本実施形態の装置で圧縮する前の株式会社コナカの株価データを週足ローソクで表示したグラフである。
【符号の説明】
１０：  データベース、  １１：  前処理部、  １２：  切換部、
１３：  第１選択処理部、  １４：  第２選択処理部、  １５：  記憶部、
１６：  表示部、  １７：  ポインタ、  ２０：  制御部
【図１】
0003573072.tif 000002
【図２】
0003573072.tif 000003
【図３】
0003573072.tif 000004
【図４】
0003573072.tif 000005
【図５】
0003573072.tif 000006
【図６】
0003573072.tif 000007
【図７】
0003573072.tif 000008