予想と結果をCSVで記録する仕組み|AI株価予想アプリのログ設計
抜粋
AI株価予想アプリでは、予想を出すだけでなく、予想時点のデータと数日後の結果をCSVで記録することが重要です。この記事では、予想ログ・答え合わせログ・検証レポートにつなげるCSV設計を整理します。
予想と結果をCSVで記録する仕組み|AI株価予想アプリのログ設計
AI株価予想アプリを作るうえで、かなり重要だと感じたのがログ設計です。
AIに株価を予想させるだけなら、その場でコメントを出すだけでもできます。
しかし、それだけではあとから検証できません。
予想した銘柄が本当に上がったのか。
スコアが高い銘柄ほど成績が良かったのか。
AIコメントで書いたリスクは実際に関係していたのか。
どの条件の予想が当たりやすかったのか。
こうしたことを確認するには、予想時点の情報と、数日後の結果を記録しておく必要があります。
そこで、AI株価予想アプリでは、予想と結果をCSVで記録する仕組みを作ることにしました。
この記事では、AI株価予想アプリでどのような情報をCSVに残すべきか、予想ログと答え合わせログをどう設計するかを整理します。
なぜCSVで記録するのか
最初からデータベースに保存する方法もあります。
ただ、個人開発の初期段階では、CSVで記録する方法にも大きなメリットがあります。
CSVはシンプルで、ExcelやGoogleスプレッドシートでも開けます。
Pythonでも扱いやすく、集計やグラフ化にも使いやすいです。
また、アプリの仕様がまだ固まっていない段階でも、CSVなら項目を追加したり、あとから見直したりしやすいです。
まずはCSVで予想ログを残し、検証の流れが固まってから、必要に応じてデータベース化する方が進めやすいと考えました。
AI予想は記録しないと検証できない
AI株価予想で一番避けたいのは、当たった予想だけを覚えてしまうことです。
人間は、うまくいった予想は記憶に残りやすく、外れた予想は忘れがちです。
これでは、本当にAI予想が役に立っているのか判断できません。
だからこそ、予想を出した時点で、すべて記録しておく必要があります。
当たった予想も、外れた予想も、まだ検証できていない予想も、同じようにログとして残す。
これによって、あとから冷静に精度を確認できます。
AI株価予想アプリで大事なのは、「予想を出すこと」ではなく、「予想を残して検証できること」です。
予想ログに残したい情報
予想ログには、AIが注目銘柄として出した時点の情報を保存します。
最低限、以下のような項目が必要です。
- 予想日
- 銘柄コード
- 銘柄名
- 予想時点の株価
- 総合スコア
- トレンドスコア
- モメンタムスコア
- 出来高スコア
- リスクスコア
- AIコメント
- 検証予定日
- 検証ステータス
この中でも特に重要なのは、予想日、銘柄コード、予想時点の株価、検証予定日です。
この4つがないと、あとからどの予想を、いつ、どの株価で評価するのかが曖昧になります。
AIコメントも保存する理由
数値データだけでなく、AIコメントも保存します。
理由は、あとから「予想時点でAIがどう見ていたのか」を確認したいからです。
たとえば、AIが予想時点で、
「短期モメンタムが強い」
「出来高が増加している」
「一方で過熱感には注意」
とコメントしていたとします。
数日後に株価が下がった場合、そのコメントを見返すことで、
「過熱感の注意は妥当だったのか」
「モメンタムを重視しすぎたのか」
「出来高増加だけでは不十分だったのか」
といった振り返りができます。
AIコメントは、その場で読むためだけではなく、あとから検証するための記録として重要です。
答え合わせログに残したい情報
予想から一定期間が経過したら、実際の株価を取得し、予想時点の株価と比較します。
答え合わせログには、以下のような情報を残します。
- 予想日
- 検証日
- 銘柄コード
- 銘柄名
- 予想時点の株価
- 検証日の株価
- リターン
- 的中判定
- 検証ステータス
- データ取得可否
- 備考
たとえば、5営業日後の終値で評価する場合は、予想時点の終値と5営業日後の終値を比較します。
リターンが+2%以上なら的中、というようにルールを決めれば、的中判定も自動化できます。
検証ステータスを分ける
CSVログでは、検証ステータスを分けることも重要です。
予想を出してすぐは、まだ検証日を迎えていないため、答え合わせできません。
また、検証日を迎えていても、株価データが取得できない場合があります。
そのため、ステータスを分けて管理します。
たとえば、
- 未検証
- 検証日未到達
- 検証済み
- 株価データ不足
- 日付形式不正
- 評価対象外
のようにします。
これにより、「なぜ検証できていないのか」がわかりやすくなります。
単に検証済み件数が0件だった場合でも、検証日がまだ来ていないのか、データ不足なのか、形式不正なのかを区別できます。
CSVの項目例
予想ログのCSVには、たとえば以下のような項目を入れます。
prediction_id
prediction_date
validation_date
ticker
company_name
entry_price
total_score
trend_score
momentum_score
volume_score
risk_score
ai_probability
ai_comment
mode
theme
sector
status
created_at
答え合わせ後には、以下のような項目を追加します。
actual_validation_date
actual_price
actual_return_5d
hit_plus_2pct
validation_status
validation_note
reviewed_at
このように項目を分けておくと、予想時点の情報と検証後の情報を同じ行で管理できます。
CSVログは改善の材料になる
CSVで予想と結果を記録しておくと、アプリ改善の材料になります。
たとえば、
- スコア7以上の銘柄の平均リターン
- モメンタムが高い銘柄の成績
- 出来高スコアが高い銘柄の的中率
- リスクが低い銘柄の下落率
- モード別の成績
- セクター別の成績
- テーマ別の成績
を集計できます。
この結果を見て、スコアの重みや除外条件を調整していきます。
予想、記録、検証、改善。
このサイクルを回すために、CSVログはかなり重要です。
まとめ
AI株価予想アプリでは、予想を出すだけでは不十分です。
予想時点のデータと、数日後の結果を記録しておくことで、初めて精度を検証できます。
CSVログがあれば、的中率や平均リターン、スコア別成績、外れた予想の特徴をあとから分析できます。
AI株価予想アプリで大事なのは、当たった予想だけを見せることではありません。
予想して、記録して、答え合わせして、改善する。
そのサイクルを回すために、CSVログはアプリの中心になる機能だと感じています。
※この記事は、AIを使ったアプリ開発とデータ分析の記録です。特定の銘柄の売買をすすめるものではありません。投資判断はご自身の責任で行ってください。


