mcpField
P
portfolio-management

portfolio-management

github.com/alphaonedevデータ・データベース124 回インストール
リポジトリ

portfolio-management について

定量的な投資ポートフォリオ管理を支援するスキルです。リスク計算、ポートフォリオ最適化、市場データの入力、パフォーマンス追跡を扱います。

主な機能

  1. 01CAPM と Black-Litterman モデル
  2. 02VaR と Sharpe 比率の計算
  3. 03平均分散最適化
  4. 04CSV と JSON の入力
  5. 05収益とパフォーマンスのレポート

活用シーン

  1. 01ポートフォリオリスクの評価
  2. 02資産配分の調整
  3. 03運用実績の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/alphaonedev/openclaw-graph --skill portfolio-management

インストール後、Claude Code で/portfolio-managementを入力して読み込まれたか確認します。

詳細

ポートフォリオ管理

目的

このスキルでは、定量モデルを使用した投資ポートフォリオの管理、Value at Risk(VaR)などのリスク指標の計算、平均分散最適化などの最適化アルゴリズムの適用が可能です。ポートフォリオデータを処理して実行可能な分析結果を生成し、データソースとの連携や、事前に定義された戦略に基づく取引の実行を通じて、金融分野での意思決定を支援します。

使用する場面

金融分野でポートフォリオのリバランス、リスク評価、パフォーマンス分析を行うタスクで、このスキルを使用します。資産の分散や市場の変動への対応など、投資戦略に関するユーザーの問い合わせを扱う際に適用します。リアルタイムのデータフィードを利用する場合や、予算上限などの制約下で配分を最適化する場合に適しています。

主な機能
  • 定量モデル:CAPMやBlack-Littermanなどのモデルを実装します。例:claw portfolio model capm --assets AAPL,GOOG を使って期待収益率を計算します。
  • リスク指標:VaRやシャープレシオを計算します。API エンドポイント GET /api/portfolios/risk/var?confidence=0.95 を使うと、ポートフォリオの95% VaRを取得できます。
  • 最適化アルゴリズム:平均分散最適化を実行します。JSONファイルで設定できます:{"assets": ["AAPL", "MSFT"], "weights": [0.5, 0.5]}。
  • データ連携:外部APIから市場データを取得します。ポートフォリオの入力形式としてCSVやJSONなどをサポートしています。
  • パフォーマンス追跡:ポートフォリオの収益率レポートを生成します。例:claw portfolio track --period monthly --metric sharpe。
使用パターン

必ず $PORTFOLIO_API_KEY 環境変数を使って認証を初期化してください。CLIを使用する場合は、入力データを直接パイプで渡します。例:まず claw portfolio load --file portfolio.json を実行し、続けて claw portfolio optimize --risk-level high などのコマンドを実行します。APIを使用する場合は、変更にはPOSTリクエスト、照会にはGETリクエストを使います。非同期処理はエンドポイントをポーリングして処理します。スクリプトではAPIの失敗に対処するためにtry-catchブロックで囲み、資産リストなどの再利用可能なパラメーターには設定ファイルを使います。

主なコマンド/API
  • CLIコマンド:claw portfolio manage --action optimize --config config.json を使ってポートフォリオを最適化します。フラグには、--action(optimize、analyze)、--config(JSONファイルへのパス)、詳細なログを出力する --verbose があります。
  • APIエンドポイント:本文 {"name": "my-portfolio", "assets": ["AAPL", "TSLA"]} を指定して POST /api/portfolios/create にリクエストを送信します。ヘッダー Authorization: Bearer $PORTFOLIO_API_KEY で認証します。
  • コードスニペット:
    import requests
    response = requests.post('https://api.openclaw.ai/api/portfolios/optimize', headers={'Authorization': f'Bearer {os.environ["PORTFOLIO_API_KEY"]}'}, json={'assets': ['AAPL', 'GOOG']})
    print(response.json()['optimized_weights'])
    
    claw portfolio analyze --assets AAPL,MSFT --metric var --confidence 0.99
    
  • 設定形式:入力にはJSONを使います。例:{"portfolio": {"assets": [{"symbol": "AAPL", "quantity": 100}], "constraints": {"max_risk": 0.05}}}。claw portfolio validate --file config.json で検証します。
統合に関する注意

コマンドを実行する前に、環境に $PORTFOLIO_API_KEY を設定して統合します。外部システムとのデータ同期にはWebhookを使います。例:POST /api/portfolios/update などのエンドポイントを対応付けて、証券会社のAPIとの連携時に更新をトリガーします。計算にはNumPyなどの金融ライブラリとの互換性を確保してください。Pythonスクリプトでモジュールとしてインポートし、API呼び出しの間に time.sleep(1) を挟むなどして、レート制限に対処します。モックデータを使い、サンドボックス環境で統合をテストしてください。

エラー処理

$PORTFOLIO_API_KEY が設定されていることを確認し、認証エラーがないか確認します。設定されていない場合は、os.environ.get('PORTFOLIO_API_KEY') or raise ValueError("API key required") でユーザーに入力を求めます。APIの失敗については、コード内のtry-exceptを使って401や429などのHTTPエラーを捕捉します:

try:
    response = requests.get('https://api.openclaw.ai/api/portfolios/risk')
except requests.exceptions.HTTPError as e:
    print(f"Error: {e.response.status_code} - {e.response.text}")

まず claw portfolio validate で設定を検証し、無効な入力に対処します。--log-file errors.log フラグを使ってエラーをファイルに記録し、一時的なエラーは指数バックオフを使って最大3回まで再試行します。

グラフ上の関連性
  • 関連するクラスター:financial
  • タグ経由の関連:finance、investments、risk-management、quant-analysis
  • 他のスキルへのリンク:データ処理では data-analysis に依存し、自動取引では trading-execution を強化します

コメント