コンテンツにスキップ

運用スケジュール

概要

ライブデータアーカイブは、launchdを使用して自動化されています。


スケジュール一覧

時刻 (JST) 時刻 (ET) タスク スクリプト
継続 継続 UW Flow Archive archive_uw_flow.py --continuous
場中15分毎 場中15分毎 Market Data Snapshot run_paper_trading.py 内部
07:00 17:00 EOD Gap Fill archive_eod_fill.py
09:00 19:00 IV Rank Archive Barchart scraper後処理
21:00 07:00 IV Rank Archive Barchart scraper後処理

launchd設定

UW Flow Archive (継続実行)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.ryo.aegis.archive_uw_flow</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Users/ryo/.../AEGIS/venv/bin/python</string>
        <string>/Users/ryo/.../AEGIS/scripts/archive_uw_flow.py</string>
        <string>--continuous</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <true/>
    <key>StandardOutPath</key>
    <string>/Users/ryo/logs/aegis/archive_uw_flow.log</string>
    <key>StandardErrorPath</key>
    <string>/Users/ryo/logs/aegis/archive_uw_flow.err</string>
</dict>
</plist>

EOD Gap Fill (毎日 JST 07:00)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.ryo.aegis.archive_eod</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Users/ryo/.../AEGIS/venv/bin/python</string>
        <string>/Users/ryo/.../AEGIS/scripts/archive_eod_fill.py</string>
    </array>
    <key>StartCalendarInterval</key>
    <dict>
        <key>Hour</key>
        <integer>7</integer>
        <key>Minute</key>
        <integer>0</integer>
    </dict>
    <key>StandardOutPath</key>
    <string>/Users/ryo/logs/aegis/archive_eod.log</string>
    <key>StandardErrorPath</key>
    <string>/Users/ryo/logs/aegis/archive_eod.err</string>
</dict>
</plist>

インストール手順

# plistファイルをコピー
cp AEGIS/Library/LaunchAgents/*.plist ~/Library/LaunchAgents/

# サービスをロード
launchctl load ~/Library/LaunchAgents/com.ryo.aegis.archive_uw_flow.plist
launchctl load ~/Library/LaunchAgents/com.ryo.aegis.archive_eod.plist

# 状態確認
launchctl list | grep aegis

監視とアラート

ログ確認

# UW Flow Archive ログ
tail -f ~/logs/aegis/archive_uw_flow.log

# EOD Fill ログ
tail -f ~/logs/aegis/archive_eod.log

ダッシュボード統合

ダッシュボードの「Archive Status」セクションで以下を確認可能:

  • 最終アーカイブ時刻
  • 当日のレコード数
  • ファイルサイズ
  • ギャップ検出状況

トラブルシューティング

サービスが起動しない

# ログを確認
cat ~/logs/aegis/archive_uw_flow.err

# サービスをアンロード・再ロード
launchctl unload ~/Library/LaunchAgents/com.ryo.aegis.archive_uw_flow.plist
launchctl load ~/Library/LaunchAgents/com.ryo.aegis.archive_uw_flow.plist

API接続エラー

# 環境変数を確認
cat AEGIS/.env | grep -E "(UW_API|POLYGON)"

# 手動実行でテスト
cd AEGIS && source venv/bin/activate
python scripts/archive_uw_flow.py --test

ディスク容量不足

# アーカイブサイズを確認
du -sh data/archive/*

# 古いデータを圧縮・移動
tar -czvf archive_2024.tar.gz data/archive/*/date=2024-*