Files
DinQuant/README_JA.md
T
2026-01-03 20:25:58 +08:00

21 KiB
Raw Blame History


QuantDinger Logo

QuantDinger

5分で立ち上げる、あなただけのローカルTradingView + AIクオンツ研究ラボ

🤖 AIネイティブ · 🔒 プライバシー重視 · 🚀 オールインワン定量的ワークスペース

次世代のローカル・クオンツプラットフォーム:マルチマーケットデータ、AIリサーチ、視覚的バックテスト、自動取引。

ウェブサイト · ライブデモ · バグ報告 · ディスカッション

License Python Vue Docker Stars

Telegram Group Discord X


📖 はじめに

QuantDinger は、トレーダー、研究者、そしてギークのために設計された ローカルファースト(Local-First の定量的取引ワークスペースです。

高価なSaaSプラットフォームとは異なり、QuantDingerは データの所有権 をあなたに取り戻します。LLMベースのマルチエージェント・リサーチチーム を内蔵しており、ウェブから金融情報を自律的に収集し、ローカルの市場データと組み合わせ、プロフェッショナルな分析レポートを作成し、戦略開発、バックテスト、実取引のワークフローとシームレスに統合します。

コアバリュー

  • 🛡️ プライバシー第一: すべての戦略、取引ログ、APIキーはローカルのSQLiteデータベースに保存されます。
  • 🧠 AIによる強化: 単なるコード補完ではなく、OpenRouter/LLMを搭載した本物のAIリサーチアナリストです。
  • マルチマーケット: 暗号資産米国株中国/香港株FX先物 をネイティブサポート。
  • 🔌 すぐに使える: Dockerによるワンクリックデプロイ。複雑な環境設定は不要です。

📚 ドキュメント

📸 ビジュアルツアー

📊 プロフェッショナル・クオンツダッシュボード

市場の動向、資産、戦略ステータスをリアルタイムで監視。

QuantDinger Dashboard

🤖 AI ディープリサーチ

市場センチメントとテクニカル分析のためのマルチエージェント・コラボレーション。

AI Market Analysis

💬 スマートトレーディングアシスタント

即座に市場の洞察を得るための自然言語インターフェース。

Trading Assistant

📈 インタラクティブなインジケーター分析

ドラッグ&ドロップ分析を備えた豊富なテクニカルインジケーターライブラリ。

Indicator Analysis

🐍 Python 戦略生成

AI支援による戦略コーディングが可能な内蔵エディタ。

Code Generation

主な機能

1. ユニバーサルデータエンジン

データAPIについて心配する必要はもうありません。QuantDingerは強力なデータソースファクトリーパターンを備えています:

  • 暗号資産: 取引のための 直接API接続(10以上の取引所)と、市場データのための CCXT100以上のソース)の組み合わせ。
  • 株式: Yahoo Finance、Finnhub、Tiingo(米国)、AkShare(中国/香港)を統合。
  • 先物/FX: OANDAおよび主要な先物データソースをサポート。
  • プロキシサポート: 制限されたネットワーク環境のための内蔵プロキシ設定。

2. AI マルチエージェントリサーチ

疲れを知らないアナリストチーム:

  • コーディネーターエージェント: タスクを分解し、ワークフローを管理します。
  • リサーチエージェント: マクロニュースのためにウェブ全体(Google/Bing)を検索します。
  • 暗号資産/株式エージェント: 特定の市場のテクニカル分析と資金フロー分析に特化しています。
  • レポート生成: 構造化された日次/週次リサーチレポートを自動的に作成します。

2.1 🧠 記憶拡張エージェント(Memory-Augmented Agents

QuantDinger のエージェントは毎回「ゼロから」ではありません。バックエンドに ローカル記憶DB + 反省(検証)ループ を内蔵し、過去の経験を検索して system prompt に注入します(RAG 風)。

  • これは何か:経験検索によるプロンプト拡張(※モデルの学習/微調整ではありません)
  • 保存先:ローカル SQLitebackend_api_python/data/memory/

フロー図(リクエスト → 記憶閉ループ)

flowchart TB
    %% ===== 🌐 入口層 =====
    subgraph Entry["🌐 API エントリー"]
        A["📡 POST /api/analysis/multi"]
        A2["🔄 POST /api/analysis/reflect"]
    end

    %% ===== ⚙️ サービス層 =====
    subgraph Service["⚙️ サービス編成"]
        B[AnalysisService]
        C[AgentCoordinator]
        D["📊 コンテキスト構築<br/>price · kline · news · indicators"]
    end

    %% ===== 🤖 マルチエージェントワークフロー =====
    subgraph Agents["🤖 マルチエージェントワークフロー"]

        subgraph P1["📈 Phase 1 · 多次元分析(並列)"]
            E1["🔍 MarketAnalyst<br/><i>テクニカル</i>"]
            E2["📑 FundamentalAnalyst<br/><i>ファンダメンタル</i>"]
            E3["📰 NewsAnalyst<br/><i>ニュース</i>"]
            E4["💭 SentimentAnalyst<br/><i>センチメント</i>"]
            E5["⚠️ RiskAnalyst<br/><i>リスク評価</i>"]
        end

        subgraph P2["🎯 Phase 2 · 強気弱気論争(並列)"]
            F1["🐂 BullResearcher<br/><i>強気の論点</i>"]
            F2["🐻 BearResearcher<br/><i>弱気の論点</i>"]
        end

        subgraph P3["💹 Phase 3 · 取引判断"]
            G["🎰 TraderAgent<br/><i>総合判定 → BUY / SELL / HOLD</i>"]
        end

    end

    %% ===== 🧠 記憶層 =====
    subgraph Memory["🧠 ローカル SQLite 記憶庫(data/memory/"]
        M1[("market_analyst")]
        M2[("fundamental")]
        M3[("news_analyst")]
        M4[("sentiment")]
        M5[("risk_analyst")]
        M6[("bull_researcher")]
        M7[("bear_researcher")]
        M8[("trader_agent")]
    end

    %% ===== 🔄 反省ループ =====
    subgraph Reflect["🔄 反省ループ(オプション)"]
        R[ReflectionService]
        RR[("reflection_records.db")]
        W["⏰ ReflectionWorker"]
    end

    %% ===== メインフロー =====
    A --> B --> C --> D
    D --> P1 --> P2 --> P3

    %% ===== 記憶読み書き =====
    E1 <-.-> M1
    E2 <-.-> M2
    E3 <-.-> M3
    E4 <-.-> M4
    E5 <-.-> M5
    F1 <-.-> M6
    F2 <-.-> M7
    G <-.-> M8

    %% ===== 反省フロー =====
    C --> R --> RR
    W --> RR
    W -.->|"検証 + 学習"| M8
    A2 -.->|"手動復習"| M8

検索ランキング(簡略)

[ score = w_{sim}\cdot sim + w_{recency}\cdot recency + w_{returns}\cdot returns_score ]

学習の入口

  • 手動復習(推奨)POST /api/analysis/reflect で実際の結果(returns/result)を記憶へ
  • 自動検証(任意)ENABLE_REFLECTION_WORKER=trueREFLECTION_WORKER_INTERVAL_SEC で定期検証→記憶へ反映

主な環境変数(.env

  • ENABLE_AGENT_MEMORY, AGENT_MEMORY_TOP_K, AGENT_MEMORY_CANDIDATE_LIMIT
  • AGENT_MEMORY_ENABLE_VECTOR, AGENT_MEMORY_EMBEDDING_DIM
  • AGENT_MEMORY_HALF_LIFE_DAYS, AGENT_MEMORY_W_SIM, AGENT_MEMORY_W_RECENCY, AGENT_MEMORY_W_RETURNS
  • ENABLE_REFLECTION_WORKER, REFLECTION_WORKER_INTERVAL_SEC

3. 堅牢な戦略ランタイム

  • スレッドベースのエグゼキューター: 戦略実行のための独立したスレッドプール管理。
  • 自動復元: システム再起動後に実行中の戦略を自動的に再開します。
  • 指値注文ワーカー: 信頼性の高いバックグラウンドキューが、正確なシグナル実行を保証し、スリッページを防ぎます。

4. 最新の技術スタック

  • バックエンド: Python (Flask) + SQLite + Redis (オプション) — シンプル、強力、拡張可能。
  • フロントエンド: Vue 2 + Ant Design Vue + KlineCharts/ECharts — レスポンシブでインタラクティブ。
  • デプロイ: Docker Compose オーケストレーション。

🏦 対応取引所 & リベート

QuantDingerは、低遅延実行のために主要な暗号資産取引所への 直接接続 をサポートし、広範な市場データカバレッジのために CCXT を使用します。

💡 限定特典: 以下のパートナーリンクからアカウントを作成すると、取引手数料の割引限定ボーナス を受け取ることができます。これは、追加費用なしでプロジェクトを支援することにつながります!

取引所 特徴 サインアップボーナス
🥇 世界最大
現物, 先物, マージン
🚀 Web3 & デリバティブ
現物, 無期限, オプション
👥 ソーシャルトレーディング
コピートレーディング, 先物

その他サポート (Direct/CCXT):


多言語サポート

QuantDingerは、包括的な国際化対応により、世界中のユーザー向けに構築されています。

全てのUI要素、エラーメッセージ、ドキュメントは完全に翻訳されています。言語はブラウザの設定に基づいて自動検出されますが、アプリ内で手動で切り替えることも可能です。


対応市場

市場タイプ データソース 取引
暗号資産 Binance, OKX, Bitget, + 100 取引所 完全サポート
米国株 Yahoo Finance, Finnhub, Tiingo ブローカーAPI経由
中国/香港株 AkShare, East Money データのみ
FX Finnhub, OANDA ブローカーAPI経由
先物 取引所API, AkShare データのみ

アーキテクチャ (現在のリポジトリ)

┌─────────────────────────────┐
│      quantdinger_vue         │
│   (Vue 2 + Ant Design Vue)   │
└──────────────┬──────────────┘
               │  HTTP (/api/*)
               ▼
┌─────────────────────────────┐
│     backend_api_python       │
│   (Flask + 戦略ランタイム)   │
└──────────────┬──────────────┘
               │
               ├─ SQLite (quantdinger.db)
               ├─ Redis (オプション キャッシュ)
               └─ データプロバイダー / LLMs / 取引所

リポジトリ構造

.
├─ backend_api_python/         # Flask API + AI + バックテスト + 戦略ランタイム
│  ├─ app/
│  ├─ env.example              # ローカル設定用に .env にコピー
│  ├─ requirements.txt
│  └─ run.py                   # エントリーポイント
└─ quantdinger_vue/            # Vue 2 UI (開発サーバーは /api をバックエンドにプロキシ)

クイックスタート

オプション 1: Docker デプロイ (推奨)

QuantDingerを実行する最速の方法です。

1. ワンクリック起動

Linux / macOS

git clone https://github.com/brokermr810/QuantDinger.git && \
cd QuantDinger && \
cp backend_api_python/env.example backend_api_python/.env && \
docker-compose up -d --build

Windows (PowerShell)

git clone https://github.com/brokermr810/QuantDinger.git
cd QuantDinger
Copy-Item backend_api_python\env.example -Destination backend_api_python\.env
docker-compose up -d --build

2. アクセスと設定

注意: AI機能や本番環境のセキュリティのために、backend_api_python/.env を編集し(OPENROUTER_API_KEYの追加、パスワードの変更)、docker-compose restart backend でサービスを再起動してください。

3. アプリケーションへのアクセス

Docker コマンドリファレンス

# 実行状態の表示
docker-compose ps

# ログの表示
docker-compose logs -f

# サービスの停止
docker-compose down

# 停止してボリュームを削除 (警告: データベースが削除されます!)
docker-compose down -v

データの永続化

以下のデータはホストにマウントされ、コンテナの再起動後も保持されます:

volumes:
  - ./backend_api_python/logs:/app/logs                       # ログ
  - ./backend_api_python/data:/app/data                       # データディレクトリ(quantdinger.db を含む)
  - ./backend_api_python/.env:/app/.env                       # 設定ファイル

オプション 2: ローカル開発

前提条件

  • Python 3.10+ (推奨)
  • Node.js 16+ (推奨)

1. バックエンドの起動 (Flask API)

cd backend_api_python
pip install -r requirements.txt
cp env.example .env   # Windows: copy env.example .env
python run.py

バックエンドは http://localhost:5000 で利用可能になります。

2. フロントエンドの起動 (Vue UI)

cd quantdinger_vue
npm install
npm run serve

フロントエンド開発サーバーは http://localhost:8000 で実行され、/api/*http://localhost:5000 にプロキシします。


設定 (.env)

backend_api_python/env.example をテンプレートとして使用してください。一般的な設定:

  • 認証: SECRET_KEY, ADMIN_USER, ADMIN_PASSWORD
  • サーバー: PYTHON_API_HOST, PYTHON_API_PORT, PYTHON_API_DEBUG
  • AI / LLM: OPENROUTER_API_KEY, OPENROUTER_MODEL
  • ウェブ検索: SEARCH_PROVIDER, SEARCH_GOOGLE_*, SEARCH_BING_API_KEY
  • プロキシ (オプション): PROXY_PORT または PROXY_URL

🤝 コミュニティとサポート

戦略の共有や技術サポートのために、グローバルコミュニティに参加しましょう:


プロジェクトを支援する

もしQuantDingerがあなたの利益に貢献したなら、開発者にコーヒーを一杯奢ることを検討してください。あなたの支援がプロジェクトを存続させます!

ERC-20 / BEP-20 / Polygon / Arbitrum

0x96fa4962181bea077f8c7240efe46afbe73641a7
USDT ETH

商用サービス

QuantDingerを最大限に活用するためのプロフェッショナルサービスを提供しています:

サービス 説明
デプロイ & セットアップ サーバーのデプロイ、設定、最適化に関するマンツーマンのサポート
カスタム戦略開発 特定のニーズや市場に合わせて設計された取引戦略の開発
エンタープライズアップグレード 商用ライセンス、優先サポート、ビジネス向けの高度な機能
トレーニング & コンサルティング 取引チーム向けの実践的なトレーニングセッションと戦略コンサルティング

ご興味がありますか? 以下よりお問い合わせください:


謝辞

QuantDingerは、Flask, Pandas, CCXT, Vue.js, Ant Design Vue, KlineChartsなどの素晴らしいオープンソースプロジェクトの上に成り立っています。

すべてのメンテナとコントリビューターに感謝します! ❤️