設定
Richfolio はすべてのポートフォリオデータを単一の JSON 設定で扱います — あなたのポートフォリオはプライベートに保たれます。
セットアップ
fork したリポジトリの Settings → Secrets and variables → Actions → Variables タブに移動し、下記の JSON 内容を持つ CONFIG_JSON という変数を作成します。
例
{
"targetPortfolio": {
"VOO": 20,
"QQQ": 15,
"GLD": 10,
"BSV": 20,
"SMH": 5,
"BTC": 1.5
},
"currentHoldings": {
"AAPL": 30,
"VOO": 1,
"BTC": 0.0002
},
"totalPortfolioValueUSD": 50000,
"intradayAlerts": {
"enabled": true,
"confidenceIncreaseThreshold": 10
}
}
フィールドリファレンス
| フィールド | 必須 | 説明 |
|---|---|---|
targetPortfolio | はい | 目標配分のパーセンテージ。キーはティッカーシンボル、値はパーセンテージで、合計は約 100% になるようにします。 |
currentHoldings | はい | 現在保有している株数。目標に含まれない銘柄も含められます(例:ETF 重複検出のための AAPL)。 |
totalPortfolioValueUSD | はい | あなたのポートフォリオ総額の見積もり(USD)。実際の保有が目標より小さい場合の配分計算に使用します。 |
intradayAlerts | いいえ | ザラ場アラートの設定(下記参照)。省略時はデフォルト値が適用されます。 |
ザラ場アラート
intradayAlerts セクションは、ザラ場チェックがアラートを送信する条件を制御します。すべてのフィールドはオプショナルで、合理的なデフォルト値があります。
アラートは STRONG BUY 関連の変化でのみ発火します:
- STRONG BUY へのアップグレード — 他のレベル → STRONG BUY
- STRONG BUY からのダウングレード — STRONG BUY → 他のレベル
- 信頼度の変化 — STRONG BUY のままで信頼度が閾値以上シフト
| フィールド | デフォルト | 説明 |
|---|---|---|
enabled | true | マスタートグル。false に設定するとザラ場アラートを完全に無効化できます。 |
confidenceIncreaseThreshold | 10 | STRONG BUY ティッカーのアラート発火に必要な最小信頼度変化(絶対値、パーセントポイント)。 |
分析の更新
最新の価格(時間外/プレマーケットを含む)で単一ティッカーを再分析します。新しい分析 URL 付きでメール+ Telegram を送信します。
Actions → Portfolio Monitor → Run workflow → mode: refresh、ticker: SMH。
利用可能な場合は Yahoo Finance の postMarketPrice と preMarketPrice を使用します。時間外データが利用できない場合は通常市場価格にフォールバックします。
ティッカー形式
| 種類 | 形式 | 例 |
|---|---|---|
| 米国株/ETF | 標準シンボル | AAPL、VOO、QQQ、SMH |
| 暗号資産 | ショートネーム | BTC、ETH(自動的に BTC-USD、ETH-USD に変換) |
| インターナショナル | Yahoo Finance シンボル | 0700.HK(Tencent)、TM(Toyota) |
Tips
-
目標パーセンテージは合計 100% になるようにしてください。100% でなくてもギャップ計算は動作しますが、提案される買い金額が大きすぎたり小さすぎたりすることがあります。
-
目標外の保有は ETF 重複検出のために追跡されます。例えば AAPL を保有すると、AAPL を含む ETF(VOO や QQQ など)の買い優先度を下げます。
-
小数株もサポートされています — 暗号資産(
"BTC": 0.000188)や小数株購入をサポートするブローカーに便利です。 -
ポートフォリオ価値は実際の保有価値と設定上の見積もりの大きい方を使用します。目標配分にまだ近づいている途中でも、ギャップ計算が意味を保ちます。
ティッカーは何個まで追加できますか?
Richfolio はフォーカスされたポートフォリオで最も機能します。ハードコードされた上限はありませんが、無料枠の API クォータとダイジェストの可読性が実用的な境界を決めます。 **推奨レンジ:** | レンジ | 評価 | |-------|---------| | **10〜20** | スイートスポット — フォーカスされており、アクション可能、すべての無料枠が余裕 | | **20〜30** | まだ良好 — ダイジェストは管理可能、制限内にきれいに収まる | | **30〜50** | 技術的には動作するが、毎日のダイジェストが煩雑になる | | **50+** | 推奨されない(下記参照) | **50+ ティッカーが推奨されない理由:** - **NewsAPI(1 日 100 リクエスト)** — ニュースは 5 ティッカーずつバッチで取得されます。50 ティッカーで daily + intraday を実行すると約 22 回、100 ティッカーで約 42 回を使用し、リフレッシュの余地が少なくなります。 - **AI 分析の品質** — Gemini は一度に多くの選択肢を評価するとき、より希薄な推奨を生成します。 - **ダイジェストの可読性** — メールは長くなり、Telegram は 4,096 文字で切り捨てられます。シグナル対ノイズ比が急激に低下します。 - **実行時間** — 各ティッカーごとに Yahoo Finance の価格、テクニカル、ファンダメンタルの呼び出しが必要で、GitHub Actions の実行が遅くなります。 Gemini の無料枠(1 日 250 リクエスト、1 分あたり 25 万トークン)は寛容で、ボトルネックになる可能性は低いです — 100 ティッカーでも 1 回の実行で約 5.3 万トークンしか使いません。実際の制約は NewsAPI のクォータと情報過多です。 **TL;DR — すべての無料枠で最良の体験を得るには ≤30 ティッカーを目指してください。**
更新
保有が変わったら、新しい JSON 内容で CONFIG_JSON 変数を更新してください(Settings → Secrets and variables → Actions → Variables タブ)。