「勝てるEAのシンプルさとは」(4/21) 投資AI開発奮闘記
FX
EAは断捨離
カーブフィッティングを起こすことが、落とし穴であるというのはEA界隈の「周知の事実」
カーブフィッティングを避けるために必要なのが、条件のシンプル化
それは、単にコーディングが簡単になるというわけではなく
人間の理解としては簡単だけど、コードにしたら難しいのもある
例えばゴトービのように
ロジックがシンプル = コードがシンプル ?
間違ってはいけないのはロジックがシンプルな方がいいということと、コードがシンプルというのはイコールではないということ
〇ロジックがシンプル
×コードがシンプル
GXDX(ゴールデンクロス、デッドクロスのこと)のロジックでMAのパラメーターがいいかを調整してはいけません
これはロジックが複雑、コードがシンプルな方になり、間違った考え方です。
ではどこからがシンプルでどこからが複雑なのか?何がよくて何がダメなのか?
通常はバックテストでウォークフォワードなどを行って検証するしか知るすべはありません
機械学習でシンプルに
機械学習はロジックの複雑さをパラメーターという形で数値化することができます
数値化することで、どれくらいパラメーター数を増やしたらカーブフィッティングが起こるかを調整することができます
例えば、様々な種類のインジケーターの値、1000個以上用意したとしましょう。
これはコードは非常に複雑です。
しかし、パラメーター数1となるとロジックが非常にシンプルになります。
これは正しい方向のシンプルになります。
余談ですが
EAに搭載できるのは
1~数億パラメーターかと思いますが、数億パラまでいくとデータが重くてトレードで使えたものではありません
LLMとかはgpt3.5で3000億以上と言われていますね
ここまでくると市販PCレベルでは現段階では現実的に不可能です。時間がかかりすぎます
×![]()
Is it OK?