FactDecode:ファクター選択の根拠を、モデル評価とRun比較で確かめる
2026年10月22日公開
FactDecodeのResultsに、候補因子の選定過程やNested OOSによるモデル性能評価、スコア帯別の検証結果を追加しました。保存済みRunを比較することで、ファクターを追加・変更・除外したときの分析結果の違いも、より具体的に確かめられます。
ファクターは、多ければ多いほどよいとは限りません。
金利、物価、株価、為替、テクニカル指標など、さまざまなデータを組み合わせて分析できる一方で、「どのファクターを使うべきか」「本当に分析に役立っているのか」を判断することは簡単ではありません。
今回、FactDecodeのResultsを大幅にアップグレードしました。
候補ファクターの選定過程から、モデルの予測性能、過去の未学習期間での評価、スコア帯別の実績まで、判断に必要な根拠をより詳しく確認できるようになりました。
さらに、ファクターを変えて分析した複数のRunを比較することで、選択の違いがモデルの評価結果にどう表れたかを検討できます。
どのファクターが選ばれたのか、その根拠を確認する
FactDecodeでは、複数の候補ファクターから、モデルに使用するファクターを選定できます。
今回のアップグレードでは、この選定過程をResultsから確認しやすくしました。
「候補因子の選定結果」では、入力したファクターのうち、どれが評価され、どれが最終モデルに採用されたのかを確認できます。
Screening段階での重要度と、最終モデルでの寄与度も区別して表示します。
候補として重要だったファクターが、必ずしも最終モデルに採用されるとは限りません。
こうした違いを確認することで、採用された結果だけでなく、どの候補を残し、どの候補を見直すかを考える材料が増えました。
モデルの性能を、過去の未学習期間でも確かめる
ファクターを選んだあとに重要なのは、そのモデルがどの程度信頼できるかを確かめることです。
学習に使用したデータで良好な結果が得られても、別の期間で同じような結果になるとは限りません。
今回追加した「OOS Model Performance」では、過去の未学習期間を使い、モデルの選定・学習手順を評価できます。
主な評価指標は、次のとおりです。
- RMSE・MAE:予測値と実際のリターンの誤差
- RMSE Skill:単純な基準予測と比べた誤差の改善度
- Spearman:予測値の順位と実際のリターンの順位との関係
さらに、検証期間ごとの結果も確認できます。
全期間をまとめた評価だけでは見えにくかった、特定期間での性能低下や、期間による順位付けの違いを調べることができます。
モデルの良い点だけでなく、どの期間で結果が弱かったのかも判断材料として扱えるようになりました。
ファクターを変えると、モデルの評価はどう変わるのか
今回のアップグレードは、異なるRunの結果を比較するときにも役立ちます。
例えば、あるファクターをモデルの候補から除外した場合、その変更によって予測精度や順位付けの評価がどう変わったのか。
新しく得られるモデル評価指標を使うことで、こうした違いをより具体的に検討できます。
実際の分析例:金価格のファクターを1つ除外して比較
実際に、金価格を対象とした分析で、候補ファクターを1つ除外した前後の保存済みRunを比較しました。
予測対象は60観測先のリターンです。両Runでは、同じOOS評価期間、5つの検証区間、5,882件の有効観測が表示されています。
この比較では、1つのファクターを除外したRunの方が、RMSE SkillとSpearmanの両方で低い結果となりました。
さらに期間別の結果を確認すると、その差が特に大きく表れていた検証期間も分かりました。
このことは、今回の候補集合とモデル選定・学習手順では、除外前のファクター構成を維持する判断を検討する材料になります。
ただし、両RunのRMSE Skillはともに負の値です。これは、対象のOOS評価において、どちらも基準予測よりRMSEが大きかったことを意味します。
また、候補ファクターを変更すると、最終採用ファクターや学習対象も変わる場合があります。今回の比較だけで、特定のファクター単独の効果や、将来の予測性能を証明できるわけではありません。
それでも、変更前後の結果を比較し、どのファクターを残すか、次に何を検証するかを考えられることは、大きな前進です。
なお、これは保存済みRunを見比べた分析例です。ファクターの影響を自動的に切り分ける機能や、売買成績を算出する機能を追加したものではありません。
スコア帯ごとの実績から、モデルの特徴を詳しく調べる
モデルの評価には、予測誤差や順位相関だけでなく、予測スコアが異なる場面で、過去にどのようなリターンが観測されたかという視点もあります。
「Model Score Band Analysis」では、予測スコアをQ1〜Q10の帯に分け、帯ごとの平均実現リターン、プラスリターンの割合、観測数などを確認できます。
今回のアップグレードでは、特に次の2つを明確に区別しました。
Fitted Reference(学習内の参考実績)
現在のモデルが、学習に使用したデータをどのように分類しているかを確認します。
Historical Nested OOS Score Bands(過去の未学習期間での帯別実績)
各検証期間で、過去の学習データを使ってスコア帯を定め、未学習期間に観測されたリターンの傾向を確認します。
さらに、帯別のリターンのばらつきや、同じ検証期間の無条件平均との差、期間ごとの実績も詳しく調べられます。
学習内で特徴的な結果が見えていても、OOSでは同じ傾向が確認できない場合があります。
両者を区別して確認することで、モデルの特徴を一つの数字だけで判断せず、より多面的に検証できます。
※帯別の実績は、過去の観測リターンを集計したものです。将来の利益や、実際の売買戦略の成績を保証するものではありません。
複雑な分析結果を、より読みやすく
分析機能の強化にあわせて、Results全体の表示も改善しました。
表の背景・余白・罫線・見出しを統一し、採用状態や検証状態を識別しやすい表示に整理しています。
必要な詳細は折りたたみから確認でき、重要な数値を先に見ながら、関心のある項目を掘り下げられます。
また、Runを切り替えながら結果を確認する際の表示や履歴操作についても、安定性を改善しました。
既存の保存済みRunは、保存当時の結果を維持します。新しい評価指標は、対応する分析データが保存されているRunで利用できます。
なお、利用できる分析項目はプランによって異なり、Nested OOSによる詳しいモデル性能評価やスコア帯別検証はElite向けの機能です。
ファクターを、根拠から選ぶために
重要なのは、モデルが複雑であることや、多くのファクターを使うこと自体ではありません。
何を使い、何を見直すべきか。
その選択を、実際の分析結果と検証の積み重ねから判断できることです。
FactDecodeは今回のアップグレードを通じて、ファクター選択の根拠をより深く確かめられる分析環境へと進化しました。
気になるファクターで分析を実行し、選定結果とモデル評価を確認してみてください。候補を変更したRunを保存して見比べることで、新たな発見につながるかもしれません。