🏠 ホーム ニュース 📖 解説記事 📚 トピック解説 🏷️ タグ一覧 ℹ️ About
🔍 記事を検索
カテゴリ
📡 RSSフィード
Follow
X (Twitter) Threads
Quick Links
ニュース一覧 🏷️ タグから探す
🧠 Claude 🤖 Agent 💬 LLM 🔌 MCP 🛠️ Tool
Subscribe
📡 RSSフィード
ホーム tool 2026.04.02

TradingView-Screener:Pythonで株式スクリーニングを自動化するOSS

shner-elmo/TradingView-Screener
📊
TradingView-Screener:Pythonで株式スクリーニングを自動化するOSS - AIツール日本語解説 | AI Heartland
// なぜ使えるか
TradingViewのWebインターフェースに依存せず、Pythonで銘柄スクリーニング・フィルタリング・データ取得を自動化。カスタムロジック追加や大量銘柄処理が容易になる。

概要

tradingview-screenerは、TradingViewの公式APIを使用してカスタム株式スクリーナーを構築するPythonパッケージ。通常はWebブラウザでマウス操作で行うスクリーニング(銘柄抽出・テクニカル指標フィルタリング)をスクリプトで実装できる。SQLライクな条件指定により、定量的な銘柄選定ワークフローを構築可能。株式投資家やクオンツエンジニアに活用されている。

主な機能

クイックスタート

インストール手順

PyPiからインストール。

pip install tradingview-screener

基本的な使用例

最もシンプルなスクリーニング実行。

from tradingview_screener import Query

screener = Query().select(['symbol', 'close']).get_scanner_data()
print(screener)

フィルタ条件による絞り込み

スクリーニング条件を指定し、データを取得。

from tradingview_screener import Query

screener = Query().select(['symbol', 'close', 'volume']).where(
    'close > 100 AND volume > 1000000'
).get_scanner_data()

# 結果はpandas DataFrameで取得
df = screener
print(df)

SQL形式の条件指定

複雑な条件をSQL形式で記述し、スクリーニング実行。

from tradingview_screener import Query
import pandas as pd

screener = Query().select([
    'symbol', 'close', 'volume'
]).where(
    'close > 100 AND volume > 1000000'
).get_scanner_data()

print(f'Found {len(screener)} symbols')

アーキテクチャ

以下はtradingview-screenerの処理フロー。ユーザー定義の検索条件がスクリーナーに入力され、TradingViewのAPI層を経由して銘柄データを取得、フィルタリング、結果を返す構造。

flowchart LR
    A["ユーザー<br/>スクリーニング条件設定"] --> B["Query<br/>クラス初期化"]
    B --> C["フィールド選択<br/>select()"]
    C --> D["条件指定<br/>where()"]
    D --> E["TradingView<br/>APIデータ取得"]
    E --> F["結果フィルタリング"]
    F --> G["pandas DataFrame<br/>として返却"]
    G --> H["処理完了"]

実践的な使い方

ユースケース1:定期スクリーニング実行

スクリプトでスクリーニング実行をプログラム化、結果をpandas DataFrameで取得。

from tradingview_screener import Query
import pandas as pd
import datetime

def screening():
    # 条件による抽出
    screener = Query().select([
        'symbol', 'close', 'volume'
    ]).where(
        'close > 100 AND volume > 1000000'
    ).get_scanner_data()
    
    # 結果を確認
    print(f"Found {len(screener)} symbols matching criteria")
    print(screener.head(20))
    
    # DataFrameをCSVに保存する場合
    screener.to_csv(f'scan_results_{datetime.date.today()}.csv', index=False)

if __name__ == '__main__':
    screening()

ユースケース2:複数市場の同時スクリーニング

異なる市場からデータを取得し、結果を統合。

from tradingview_screener import Query
import pandas as pd

def multi_market_screening():
    results = {}
    
    # 米国株:価格基準
    results['US'] = Query().select([
        'symbol', 'close', 'volume'
    ]).where(
        'close > 100 AND volume > 1000000'
    ).get_scanner_data()
    
    # 暗号資産:別条件
    results['CRYPTO'] = Query().select([
        'symbol', 'close'
    ]).where(
        'close > 10000'
    ).get_scanner_data()
    
    # 結果を統合
    all_results = []
    for market, df in results.items():
        df['market'] = market
        all_results.append(df)
    
    combined = pd.concat(all_results, ignore_index=True)
    combined.to_csv('multi_market_scan.csv', index=False)
    print(f"Total {len(combined)} symbols across {len(results)} markets")

multi_market_screening()

ユースケース3:スクリーニング条件の保存と再利用

よく使うスクリーニング条件をJSON設定ファイルに保存、複数回実行。

import json
from tradingview_screener import Query

# スクリーニング設定ファイル
config = {
    "strategies": {
        "high_volume": {
            "fields": ["symbol", "close", "volume"],
            "condition": "close > 100 AND volume > 1000000"
        },
        "price_range": {
            "fields": ["symbol", "close"],
            "condition": "close > 50 AND close < 200"
        }
    }
}

with open('screening_strategies.json', 'w') as f:
    json.dump(config, f, indent=2)

# 保存された設定から実行
with open('screening_strategies.json', 'r') as f:
    strategies = json.load(f)['strategies']

for strategy_name, strategy_config in strategies.items():
    result = Query().select(
        strategy_config['fields']
    ).where(
        strategy_config['condition']
    ).get_scanner_data()
    print(f"{strategy_name}: {len(result)} symbols found")

まとめ

対象ユーザー:プログラミング経験のある株式投資家・アルゴリズムトレーダー・データ分析エンジニア。カスタムスクリーナーの構築と自動化が必要なユーザーに適合。

推奨シーン

制限事項と注意点:TradingViewのAPI仕様変更により動作が影響を受ける可能性あり。認証情報はセキュアに管理が必須。リアルタイムデータではなく遅延データ(数分)を使用。商業利用の場合、TradingViewの利用規約確認が必要。

参照ソース

よくある質問
TradingView-ScreenerとTradingView公式スクリーナーの違いは?
公式スクリーナーはWeb UIで手動操作が必要だが、このツールはPythonコードで完全自動化可能。カスタムロジック追加、無制限の定期実行、複雑なフィルタ条件の設定が自由。
TradingView-Screenerを使うにはプログラミング経験が必須?
基本的な使用にはPythonの基礎知識が必要。ただしREADMEに複数のコード例が記載されており、テンプレートをコピー・カスタマイズするだけで最初は動作可能。
Q3: 対応している市場・銘柄の種類は?
A3: 株式、暗号資産、外為、CFD、先物、債券などの複数市場に対応。TradingViewのAPIを経由してこれらの市場データを取得可能。
Q4: スクリーニング結果をメール送信や他のシステムに連携できる?
A4: Pythonパッケージであるため、メール送信やデータベース保存などの連携機能はPythonコードで自由に実装可能。記事のクイックスタート例ではCSV保存が示されている。
無料で使えるのか?
tradingview-screenerパッケージ自体はOSSで無料。TradingViewのAPIを利用するため、TradingViewの利用規約に従う必要がある。
広告
🔌
MCP対応ツール特集
Claude Codeと連携できるMCPサーバーの日本語解説まとめ
GitHub で見る X 🧵 Threads Facebook LINE B! はてブ
🔔 AI速報、毎日Xで配信中
Claude Code・MCP・AIエージェントの最新ニュースをいち早くお届け
@peaks2314 をフォロー
Next Read →
📈 Qlib:Microsoft発のAI量的投資フレームワーク(39kスター)
関連記事
🔬 OLMo-core:大規模言語モデルの完全なトレーニング・推論スタックをオープンソース化
Allen Instituteが公開したOLMo-coreは、LLMの事前学習から推論まで一貫性を重視した実装を提供。モデル開発の透明性と再現性を実現するコアライブラリを活用する方法を解説。
2026.04.02
🎮 Intel AI Playground:インテルのAIツール統合プラットフォーム。803スターのOSSプロジェクト
Intelが提供するAIツール集約プラットフォーム。複数のAI機能を一元管理し、開発効率を向上させる。GitHubで803スター獲得の注目リポジトリ。今すぐ探索してみよう。
2026.03.31
⚙️ Prefect:データパイプラインのワークフロー管理とスケジューリングプラットフォーム
21,997スター獲得のPrefectは、複雑なデータワークフロー構築・監視・スケジューリングを統合管理する。Pythonベースのオーケストレーション機能で、ETL・機械学習パイプラインの信頼性向上を実現。公式ドキュメントとコミュニティサポートで導入・運用が容易。
2026.03.31
🎓 coding-interview-universityで基礎アルゴリズムを完全習得。338K超の学習教材
Googleエンジニアが設計した1年間の自習カリキュラム。データ構造・アルゴリズム・システム設計を段階的に学べる。技術面接対策の定番リソースをこの機会に。
2026.03.30
Popular
#1 POPULAR
🔓 Claude Codeのソースコード流出、npmソースマップに51万行が丸見えだった件
Anthropic Claude Codeのnpmパッケージにソースマップが含まれ、1,902ファイル・51万行超のTypeScriptソースが公開状態に。未公開プロジェクト「KAIROS」や107個のフィーチャーフラグなど、内部コードの全貌を解説する。
#2 POPULAR
🚨 【速報】JavaScript主流ライブラリAxios、NPM供給チェーン攻撃でRAT配布
JavaScriptの週間1億DL HTTPクライアント「Axios」がNPM供給チェーン攻撃の被害に。[email protected]と0.30.4に悪意あるパッケージplain-crypto-jsが注入され、クロスプラットフォーム対応RATが配布。証拠自動削除機能を備えた高度な攻撃。
#3 POPULAR
⚠️ Anthropic、Claude Codeで予想外の高速クォータ枯渇認める。キャッシュバグで料金10〜20倍
Claude Codeでプロンプトキャッシュを破壊する2つのバグが発見され、API利用料が10〜20倍に跳ね上がる問題が発生。Anthropicは「チームの最優先事項」と認める。Pro/Maxユーザーから月間の大半で使用不可との報告多数。
#4 POPULAR
🔍 Claude Codeセキュリティ事件を切り分ける:ソース漏洩とaxios攻撃の違いと対処法
3月31日にClaude Codeで起きたソース漏洩とaxiosマルウェア。感染チェックコマンド・対策コードを交えて、2つの別事件の実態と具体的な対応手順を解説。
#5 POPULAR
🚀 ソフトウェア開発者ではない人が400ドルから年7M達成。AI時代の先発者優位性
AI技術を活用して短期間で大規模な収益を生み出した事例から、開発経験がなくても可能な起業の実態と、AI知識の先発者優位性について解説する。
← 1週間で3スタートアップ×520万ビュー達成 — 広告費ゼロのバイラル戦略と超高速MVP検証を徹底解説 Qlib:Microsoft発のAI量的投資フレームワーク(39kスター) →