現在の問題点その2
2010年9月3日のデータは23:00:00迄しかなく、23:01:00を読み出そうとした時にエラーが発生している。適切にスキップする処理が必要か。
現在の問題点その2に対する解
その日時におけるデータが存在しなければ、その直前のデータを参照すれば良い。つまり、 23:01:00
の代わりに 23:00:00
を返せばこのエラーは出なくなる。与えた日時に直近でデータが存在する過去の日時とその時の価格のセットを返すメソッド get_last_exist_datetime_recursively()
を作成した。
2010年9月3日は平日(金曜日)、また米国の祝日でもなく、夏時間の切り替え日でもなかった。なぜデータが欠損しているかはわからない。元データを見るとこのまま土日へ突入したようである。
2005-09-02 22:57:00,109.63,109.64,109.63,109.63,6.0 2005-09-02 22:58:00,109.64,109.65,109.63,109.63,8.0 2005-09-02 22:59:00,109.63,109.63,109.63,109.63,2.0 2005-09-05 00:02:00,109.63,109.63,109.63,109.63,2.1 2005-09-05 00:09:00,109.7,109.7,109.7,109.7,2.0 2005-09-05 00:11:00,109.69,109.69,109.69,109.69,2.0 2005-09-05 00:14:00,109.7,109.74,109.69,109.69,5.0 2005-09-05 00:16:00,109.7,109.71,109.7,109.71,3.0 2005-09-05 00:17:00,109.7,109.71,109.7,109.7,4.0 2005-09-05 00:18:00,109.71,109.71,109.7,109.7,3.0 2005-09-05 00:20:00,109.71,109.71,109.7,109.7,5.0
一つ心配事は、土日等休場日も学習すべきかどうかである。おそらく、48時間全く値動きがないことを学習しても仕方ないので、これは飛ばして良いと思う。問題はその次の数分の欠測である。欠測の間は値動き無しとして学習するのが良いのか、純粋に経過時間(分)で学習するのが良いのかは、明確な答えを持っていない。一旦、閾値までの間値動きがなければ、次の値動きまでスキップするようにしようと思う。