AIと研究をしていると、切り上げるタイミングを逃しやすい。一つのアイデアを試すと別の条件が気になり、それを確かめると別の市場でも試したくなる。AIに聞けば、たいてい方法が見つかる。コードを直して、もう一度実行できる。
そんなふうにシステムトレードを研究して、1年ほどになる。
楽しかった。頭の中にしかなかった考えを、実際に試せるのがよかった。疑問が浮かぶたびに、まず実装できるかどうかから悩んでいたら、その多くは見送っていたと思う。AIと作業することで、とりあえず試せることが増えた。
ただ、試せることが増えると、引き受ける仕事もあった。何を試さないかは、自分で決めなければならなかった。
たとえばバックテストの結果が気に入らなければ、手を入れる場所はいくらでも見つかる。エントリー条件を少し変える。特に成績の悪かった時期を詳しく見る。別の市場に適用する。AIは、その一つひとつを手伝ってくれる。もっともらしい説明もついてくる。
このあたりで、研究の境目が曖昧になる。誤った前提を修正することと、気に入る結果が出るまで条件を変えることは、作業中にはよく似て見える。どちらもコードを直して、もう一度動かすことだからだ。
そこで、書き残すことが増えた。実験を始める前には、今回は何を確かめたいのか、どんな結果ならこのアイデアを諦めるのか。結果を見た後には、どの条件を変えたのか。面倒でも記録しないと、後になって変更した理由まで都合よく思い出してしまうかもしれない。
コードでも似たことがあった。処理が終わって数字が出ると、ひとまず安心する。でも、数字が出たことだけで計算の正しさは保証されない。シグナルを作る時点と注文を出す時点がずれていたり、注文数量の丸めによって意図した取引がなくなったりすることもある。資産曲線だけでは、こうした部分は見えにくい。
だからAIへの依頼も具体的である必要があった。戦略を実装してもらうだけでなく、ある日にこの注文が出た理由、そのとき参照したデータ、数量の計算方法まで確認する。全体の結果について話していても、結局は一件の取引、一行の計算に戻ることになった。
こういう作業は、外から見ると大したことをしていないように見えるかもしれない。一日作業して、結論が「この結果はもう一度確認が必要」になることもある。それでも確認を飛ばすと、次の実験で何を頼りに進んでいるのか分からなくなる。
この作業ではAIがかなり役立った。すでに書いたコードを読み直し、別々の実行結果を比較し、見落とした前提を探すことを一緒にできた。ただ、自分が欲しい答えへ質問を誘導していないかまで、代わりに責任を持ってくれるわけではない。そこはずっと自分の仕事として残った。
ブログを始めたい理由もここにある。研究中は次の作業が次々と生まれ、たどってきた過程をきちんと説明する機会があまりなかった。文章にしてみれば、理解している部分と、曖昧なまま通り過ぎた部分がもう少しはっきりすると思う。
これからは一度に一つの実験、一つの疑問くらいを扱いたい。最初に試す価値があると思った理由、実際にやってみて違ったこと、その後に何を変えたのか。
この1年の記録を見る限り、しばらく書くことには困らなさそうだ。整理が少し追いついていないだけである。