【仮想通貨】学習型のロジックを作ってたらデータが重くなり過ぎた話
実行結果のデータ重すぎてテストまで重くなった話
当たり前の話なんですがテストを実行すればするほどデータはたまっていくわけで……
テスト結果をまとめたデータがギガ超えたりしたわけですよ
で、パターンの重複を防ぐために毎回そのデータを読み込んでテストをしてたらもう、最初は気にならなくても後々になって実行速度が目に見えて遅くなってきたわけです
解決策はどうしたものかな……と考えてたんですが、
もう多少の重複は我慢しようかと
もちろん普通に重複を許すと結果が狂うのですが、だからと言って一回テストを行うたびに全データの中から重複をチェックしちゃうと当然のごとく全データを一度読み込む必要があって重すぎる……
じゃあもう、一回一回テストの結果を出力して、実際の取引を行うためのデータは、バラバラに出力したデータをすべて読み込んで、使用するファイルを作成する方向にしたらいいんじゃないか、という結論に
これだとデータ収集用のバックテストの実行速度は変わらないので、重くなるのはまとめファイルを作成する時のみ
まとめファイルも単純に該当パターンのときはこう注文、みたいなデータだけになったので、超軽くなったっていう
ちなみに前回勝率100%でイヤー困っちゃうなあ、って書いてたんですが、よく見たらあれパターン数と注文数が一致しててそりゃそうだな……っていう結果になってたっていうね
で、今回はパターン数をかなり絞って試してるんですが、勝率は無事?50%カットされて、ああこれならカーブフィッティング気にしなくていいかな?っていう程度にはなりました
テスト回数を重ねることで勝率はともかくドローダウンの割合も減ってるし、テストを繰り返せばもっといいとこ行くんじゃないかな?って希望も持てますね
何故か勝率の割に損益の値がかなりおかしなことになってますが……まあ、あれです、きっとほんとにそれだけ勝てるんでしょう、うん
試行回数が少なすぎて微妙だけど、ロジックの動きの確認もかねて一度動かしてみるのもいいかなあ、と思う今日この頃です