(57)【要約】【課題】特定の時系列データに類似する過去の時系列データを検索する速度を向上させる。【解決手段】時系列データ検索装置に、インデックス作成部１８と検索部２２とを備える。インデックス作成部１８は、時系列データ記憶部１２に記憶された時系列データから部分時系列データ取得部１６が抽出した所定のマッチング長の部分時系列データと、標準パターン記憶部１４に記憶されたマッチング長の標準パターンとの相関に基づいて過去データインデックスを作成する。検索部２２は、マッチング長の検索対象の時系列データと標準パターンとの相関に基づいて作成した検索対象インデックスと一致する過去データインデックスを持つ前記部分時系列データを検索する。【選択図】図１
2017037496.tif 000002
【特許請求の範囲】
【請求項１】
時系列データから抽出した所定のマッチング長の部分時系列データと前記マッチング長の標準パターンとの相関に基づいて過去データインデックスを作成するインデックス作成工程と、
前記マッチング長の検索対象の時系列データと前記標準パターンとの相関に基づいて作成した検索対象インデックスと一致する前記過去データインデックスを持つ前記部分時系列データを検索する検索工程と、
を有することを特徴とする時系列データ検索方法。
【請求項２】
前記標準パターンは複数であって、
前記過去データインデックスおよび前記検索対象インデックスはそれぞれの前記標準パターンとの相関が正の強相関と負の強相関とそれら以外とのいずれかであることを示すものである、
ことを特徴とする請求項１に記載の時系列データ検索方法。
【請求項３】
前記時系列データは単位期間ごとにその単位時間の始まりの時の始値とその単位期間の終了の時の終値とその単位期間の間の最大の高値とその単位期間の間の最小の安値とを含むロウソク足データであって、
前記過去データインデックスおよび前記検索対象インデックスのいずれかと前記標準パターンとの相関は前記始値、前記終値、前記高値および前記安値のそれぞれについて求めたものの加重平均である、
ことを特徴とする請求項１または請求項２に記載の時系列データ検索方法。
【請求項４】
前記検索工程で検索された前記部分時系列データに続く所定の表示期間の時系列データを前記検索対象の時系列データの終わりの時刻を始点として表示する表示工程をさらに有することを特徴とする時系列データ検索方法。
【請求項５】
前記検索工程は、前記所定の表示期間よりも長い所定の予備検索期間ごとに行われることを特徴とする請求項１ないし請求項４のいずれか１項に記載の時系列データ検索方法。
【請求項６】
時系列データから抽出した所定のマッチング長の部分時系列データと前記マッチング長の標準パターンとの相関に基づいて過去データインデックスを作成するインデックス作成部と、
前記マッチング長の検索対象の時系列データと前記標準パターンとの相関に基づいて作成した検索対象インデックスと一致する前記過去データインデックスを持つ前記部分時系列データを検索する検索部と、
を有することを特徴とする時系列データ検索装置。
【請求項７】
コンピュータに、
時系列データから抽出した所定のマッチング長の部分時系列データと前記マッチング長の標準パターンとの相関に基づいて過去データインデックスを作成するインデックス作成ステップと、
前記マッチング長の検索対象の時系列データと前記標準パターンとの相関に基づいて作成した検索対象インデックスと一致する前記過去データインデックスを持つ前記部分時系列データを検索する検索ステップと、
を実行させる時系列データ検索プログラム。
【請求項８】
単位期間ごとにその単位時間の始まりの時の始値とその単位期間の終了の時の終値とその単位期間の間の最大の高値とその単位期間の間の最小の安値とを含むロウソク足データである時系列データから、マッチング長の検索対象の時系列データと類似の部分時系列データを複数検索する検索工程と、
前記検索対象の時系列データの単位時間の終わりの時刻を始点として、前記部分時系列データに続く所定の期間の時系列データのそれぞれを代表する線でユーザー側端末に表示させる表示工程と、
を有することを特徴とする時系列データ検索表示方法。
【請求項９】
前記部分時系列データに続く所定の期間の時系列データに特異な傾向がある場合に前記ユーザー側端末に通知するアラーム工程をさらに有することを特徴とする請求項８に記載の時系列データ検索表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データ検索方法、時系列データ検索装置および時系列データ検索プログラムに関する。
【背景技術】
【０００２】
株価や為替レートの過去の変化の傾向を読み取り、将来を予測するため、ロウソク足チャートと呼ばれるグラフを作成する場合がある。さらに、将来の予測のために、直近の変化傾向と類似する過去のデータを参照する場合がある。株価や為替取引の場合、短時間で意思決定をしなければならない場合が多い。このため、類似の過去のデータの検索は、速いことが好ましい。
【０００３】
時系列データの検索方法としては、たとえば所定の長さの部分時系列データ相互の類似度に基づいて索引を作成しておき、類似する部分時系列データのペアを検索する方法がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３５２１１９４号公報
【特許文献２】特許第５６３２８６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ある長さの時系列データに類似する過去の時系列データから検索する際、検索対象の時系列データと過去の様々な時点での時系列データとの類似度を計算すると、計算量が大きくなり、高速な検索が困難である。
【０００６】
そこで、本発明は、特定の時系列データに類似する過去の時系列データを検索する速度を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
上述の目的を達成するため、本発明は時系列データ検索方法において、時系列データから抽出した所定のマッチング長の部分時系列データと前記マッチング長の標準パターンとの相関に基づいて過去データインデックスを作成するインデックス作成工程と、前記マッチング長の検索対象の時系列データと前記標準パターンとの相関に基づいて作成した検索対象インデックスと一致する前記過去データインデックスを持つ前記部分時系列データを検索する検索工程と、を有することを特徴とする。
【０００８】
また、本発明は、時系列データ検索装置において、時系列データから抽出した所定のマッチング長の部分時系列データと前記マッチング長の標準パターンとの相関に基づいて過去データインデックスを作成するインデックス作成部と、前記マッチング長の検索対象の時系列データと前記標準パターンとの相関に基づいて作成した検索対象インデックスと一致する前記過去データインデックスを持つ前記部分時系列データを検索する検索部と、を有することを特徴とする。
【０００９】
また、本発明は、時系列データ検索プログラムにおいて、コンピュータに、時系列データから抽出した所定のマッチング長の部分時系列データと前記マッチング長の標準パターンとの相関に基づいて過去データインデックスを作成するインデックス作成ステップと、前記マッチング長の検索対象の時系列データと前記標準パターンとの相関に基づいて作成した検索対象インデックスと一致する前記過去データインデックスを持つ前記部分時系列データを検索する検索ステップと、を実行させる。
【００１０】
また、本発明は、時系列データ検索表示方法において、単位期間ごとにその単位時間の始まりの時の始値とその単位期間の終了の時の終値とその単位期間の間の最大の高値とその単位期間の間の最小の安値とを含むロウソク足データである時系列データから、マッチング長の検索対象の時系列データと類似の部分時系列データを複数検索する検索工程と、前記検索対象の時系列データの単位時間の終わりの時刻を始点として、前記部分時系列データに続く所定の期間の時系列データのそれぞれを代表する線でユーザー側端末に表示させる表示工程と、を有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、特定の時系列データに類似する過去の時系列データを検索する速度を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明に係る時系列データ検索方法の一実施の形態を行う時系列データ検索装置である。
【図２】ロウソク足チャートの例である。
【図３】本発明に係る時系列データ検索方法の一実施の形態における標準パターンの例を示すグラフである。
【図４】本発明に係る時系列データ検索方法の一実施の形態のフローチャートである。
【発明を実施するための形態】
【００１３】
本発明に係る時系列データ検索方法のいくつか実施の形態を、図面を参照して説明する。なお、この実施の形態は単なる例示であり、本発明はこれに限定されない。同一または類似の構成には同一の符号を付し、重複する説明は省略する。
【００１４】
図１は、本発明に係る時系列データ検索方法の一実施の形態を行う時系列データ検索装置である。
【００１５】
時系列データ検索装置１０は、時系列データ記憶部１２と部分時系列データ取得部１６と標準パターン記憶部１４とインデックス作成部１８と検索対象特定部２０と検索部２２と表示部２４とを有している。この時系列データ検索装置１０は、たとえばスマートフォンやパーソナルコンピュータなどからインターネットを介して接続され、それらの画面に検索結果などを表示する装置である。
【００１６】
時系列データ記憶部１２は、時系列データを記憶する。本実施の形態では、時系列データとして、たとえば株価や為替レートなどのロウソク足チャート表示に用いるロウソク足データを例とする。
【００１７】
図２は、ロウソク足チャートの例である。
【００１８】
ロウソク足チャートとは、たとえば５分、１０分、一日などの単位時間あたりに、株価などがどのような値を取ったかを示すグラフである。ロウソク足チャートにおいて、時系列データは、特定の単位時間の始まりの時の値（始値）と単位時間の終了の時の値（終値）を始値よりも終値が高い場合には白抜きの、始値よりも終値が低い場合には黒塗りの長方形で示される。また、ロウソク足チャートにおいて、その単位期間の間の最大値（高値）および最小値（安値）とを長方形の上下に延びる細い線（ヒゲ）で示す。この長方形およびヒゲが、横軸を時刻として示される。ロウソク足データは、このロウソク足チャートを表示するために必要な時系列データであり、特定の単位時間を代表する時刻とその単位時間における始値と終値と高値と安値とを、時系列に並べたデータである。時系列データ記憶部１２は、ロウソク足データを記憶する。
【００１９】
部分時系列データ取得部１６は、検索する時系列データの所定の長さ（マッチング長）のデータを時系列データから抽出する。マッチング長は、単位時間の自然数倍の長さとする。つまり、部分時系列データ取得部１６は、時系列データ記憶部１２から、所定の個数（マッチングデータ数）の時系列データを抽出する。
【００２０】
標準パターン記憶部１４は、標準パターンを記憶する。標準パターンとは、検索用のインデックスを作成するための基準となる時系列データのパターンである。
【００２１】
図３は、本実施の形態の時系列データ検索方法における標準パターンの例を示すグラフである。
【００２２】
本実施の形態では、標準パターンとして、６種類の時系列データのパターンを用いた。標準パターンの長さは、マッチング長と同じである。すなわち、それぞれの標準パターンは、マッチングデータ数個の時系列データからなる。これらの標準パターンは、（ａ）単調に増加する形、（ｂ）１つの山を持つ形、（ｃ）１つの山と１つの谷を持つ形、（ｄ）２つの山と１との谷を持つ形、（ｅ）ほぼ平坦の後単調に増加する形、（ｆ）ほぼ平坦な形、である。
【００２３】
インデックス作成部１８は、部分時系列データ取得部１６が抽出した部分時系列データと、それぞれの標準パターンとの相関に基づいて検索用のインデックスを作成する。
【００２４】
検索対象特定部２０は、検索対象の時系列データを特定する。特定される検索対象は、たとえば、マッチング長の時間だけ遡った時点から現時点までの時系列データである。
【００２５】
検索部２２は、検索対象の検索用のインデックスと一致するインデックスを持つ過去の時系列データを検索する。
【００２６】
表示部２４は、スマートフォンなどの画面３０のチャート領域３２および検索ボタン３４などを表示する。
【００２７】
図４は、本実施の形態の時系列データ検索方法のフローチャートである。
【００２８】
まず、株価や為替レートなどの時系列データを取得する（Ｓ１）。具体的には、刻一刻と変わる株価、為替レートなどを単位時間取得し、その単位時間における始値と終値と高値と安値とを抽出する。また、その特定の単位時間を代表する時刻とその単位時間における始値と終値と高値と安値とを併せて時系列データ記憶部１２に記憶する。また、この時系列データをチャート領域３２に、ローソク足チャート３６として表示する。
【００２９】
次に、記憶した時系列データと標準パターンとの相関係数を算出する（Ｓ２）。具体的には、以下の通りである。
【００３０】
まず、時系列データ記憶部１２から、連続するマッチングデータ数個の時系列データを部分時系列データとして抽出する。抽出された部分時系列データとそれぞれの標準パターンとの相関係数を算出する。部分時系列データのうち、始値、終値、高値および安値の少なくとも１つについて、標準パターンとの相関係数を計算する。本実施の形態では、始値、終値、高値および安値のそれぞれについて相関係数を算出し、それらの４つの相関係数の単純平均を用いることとする。単純平均ではなく、それぞれの値について重要度に応じて重みづけをして重みづけ平均値を相関係数としてもよい。このようにして、１つの部分時系列データに対して、標準パターンの種類数、すなわち本実施の形態では６個の相関係数が得られる。それぞれの相関係数は、−１から１までの範囲の値となる。相関係数としては、たとえば順位相関係数を用いる。
【００３１】
相関係数が算出されたら、それらの値に基づいて検索用のインデックスを作成する（Ｓ３）。具体的には、ある部分時系列データについての相関係数が、所定の正の閾値より大きければ正の強相関、所定の負の閾値よりも小さければ負の強相関、それ以外は相関なしとする。正の強相関、負の強相関、相関なしのそれぞれを示す値の組を検索用のインデックスとする。正の強相関か否かの基準となる正の閾値は、たとえば０．７とする。正の強相関か否かの基準となる正の閾値は、たとえば−０．７とする。
【００３２】
検索対象特定部２０は、画面３０上の検索ボタン３４が押されたか否かを判定し、検索ボタン３４が押されていなければ、工程Ｓ１に戻る（Ｓ４）。このようにして、工程Ｓ１〜工程Ｓ３を順次繰り返して、現時点を単位時間の終了時刻とする過去の時系列データに対して検索用のインデックスを作成しておく。
【００３３】
検索ボタン３４が押されたことを検知したら、検索対象特定部２０は検索対象の時系列データを特定する。具体的には、検索ボタンが押された時点までに終了した単位時間のうち最後のものの終了時刻からマッチング長遡った時点を開始時刻とする部分時系列データを特定して検索対象とする。
【００３４】
次に、検索部２２は、検索対象の部分時系列データの検索用のインデックスを時系列データ記憶部１２から取得し、その検索用インデックスと一致する検索用のインデックスを持つ過去の部分時系列データを検索する（Ｓ５）。検索される部分時系列データの個数は、１つだけでなく、複数個であってもよい。つまり、検索対象の部分時系列データの検索用のインデックスと一致する検索用のインデックスを持つ過去の部分時系列データが１つ見つかった時点で検索を終了してもよいし、所定の数見つかるまで検索を行ってもよいし、蓄積している全ての時系列データについて検索を行ってもよい。たとえば、現時点に近いほど、有用なデータである場合には、最も新しい部分時系列データから時刻をさかのぼりながら検索を行い、所定の数の部分時系列データが見つかったところで検索を終了してもよい。
【００３５】
あるいは、所定の期間の時系列データを検索した後、さらに、類似度に応じて順位付けをして、順位が高いものから所定の個数だけ表示するようにしてもよい。この際、現時点に近い方の値を重要視して、マッチング長の部分時系列データのうち、時刻が遅い方の値の重みを大きくして、重みづけした相関値を用いてもよい。
【００３６】
検索対象の部分時系列データの検索用のインデックスと一致する検索用のインデックスを持つ過去の部分時系列データが検索されたら、表示部２４は、その部分時系列データに続く所定の表示期間の値を画面３０上のチャート領域３２に表示する（Ｓ６）。この際、検索された過去の部分時系列データは、検索対象の時系列データの終了時刻を開始時刻として表示される。検索された部分時系列データが複数の場合には、それぞれをロウソク足で表示すると見にくくなるため、それぞれの単位時間の代表値を表示してもよい。たとえば、それぞれの単位時間の終値で代表させたり、始値と終値との平均値で代表させてもよい。
【００３７】
また、検索された部分時系列データそのものも、検索対象の時系列データの終了時刻を終了時刻として、たとえば１本の線で、表示してもよい。あるいは、複数の検索結果のそれぞれに続く時系列データを、それぞれ別のチャートとして表示してもよい。この場合、表示画面が小さい場合には、スクロール可能な仮想的な表示領域に表示してもよい。
【００３８】
過去の部分時系列データの検索は、検索ボタン３４の押下に関係なく、所定の表示期間よりも長い所定の予備検索期間ごとに行っておいてもよい。具体的には、たとえば以下の通りである。所定の予備検索期間が経過するごとに、その予備検索期間の終了時刻を単位時間の終了時刻とする部分時系列データを検索対象とする。工程Ｓ５と同様に、検索対象の部分時系列データの検索用のインデックスを時系列データ記憶部１２から取得し、その検索用インデックスと一致する検索用のインデックスを持つ過去の部分時系列データを検索する。その後、検索ボタン３４が押下されるのを待ち、工程Ｓ１から工程Ｓ４を繰り返す。検索ボタン３４が押されたら、予備検索期間の終了時刻を始点として、検索結果の部分時系列データに続く所定の時間の値３８を画面３０上のチャート領域３２に表示する。
【００３９】
このようにしても、値３８を表示する所定の表示期間が予備検索期間よりも長ければ、検索ボタン３４を押した時刻以降にも検索結果の部分時系列データに続く所定の表示時間の値３８が画面３０上に表示されることになる。しかも、検索ボタン３４が押されたときには検索を行う必要がないため、高速に表示ができる。特に、検索を行うユーザーが多くなった場合、すなわち、同時期に検索ボタン３４が押される回数が増加した場合に、高速化の効果が大きい。
【００４０】
さらに、アラーム工程を備えてもよい。ここで、アラーム工程とは、検索された部分時系列データに続く所定の長さの時系列データに特異な傾向があるときに、ユーザーに通知する工程である。ユーザーへの通知は、たとえばスマートフォンなどのユーザー側端末へのプッシュ通知機能を用いる。
【００４１】
検索された部分時系列データに続く所定の長さの時系列データに特異な傾向がある場合とは、たとえば検索された部分時系列データに続く所定の長さの時系列データが、増加、減少、または、一定のいずれかの傾向を示す場合である。たとえば、検索された部分時系列データの直後の所定の時間経過後の変化量に基づいて決める。検索結果を１０個とし、単位時間５つ分の時間経過後のデータが増加・一定・減少のどれかの割合が閾値（７本）を超えた時に通知する。増加とは、たとえば０．１％上昇をいい、減少とは−０．１％低下をいい、一定とはそれ以外をいう。あるいは、検索された部分時系列データの直後の所定の時間経過後の増減率の標準偏差を計算し、その標準偏差が閾値よりも小さい場合にアラームを出してもよい。また、検索された部分時系列データの直後の所定の時間経過後の値の平均値に標準偏差を加えた値あるいは除した値が閾値を超えたあるいは下回った場合にアラームを出してもよい。
【００４２】
本実施の形態では、時系列データに対して予め検索用のインデックスを計算して記憶している。このため、実際に検索する際には、検索用のインデックス同士が一致するものを抽出すればよい。検索用のインデックスのデータ量は、部分時系列データのデータ量に比べて著しく小さいため、高速で検索することができる。つまり、特定の時系列データに類似する過去の時系列データを検索する速度を向上させることができる。
【符号の説明】
【００４３】
１０…時系列データ検索装置、１２…時系列データ記憶部、１４…標準パターン記憶部、１６…部分時系列データ取得部、１８…インデックス作成部、２０…検索対象特定部、２２…検索部、２４…表示部、３０…画面、３２…チャート領域、３４…検索ボタン
【図１】
2017037496.tif 000003
【図２】
2017037496.tif 000004
【図３】
2017037496.tif 000005
【図４】
2017037496.tif 000006