
AIちゃん、先日読んだ『オニールの成長株発掘法』のCAN-SLIM、すごく納得したんだけど、あのスクリーニングってTradingViewで本当に自動化できるの? 難しそうだけど、楽に成長株を見つけられるならぜひやってみたい!

ええ、Jさん。TradingViewのPine Scriptを使えば、CAN-SLIMスクリーニングの数値条件を自動化できます。3ステップ・約10分で設定完了です。難しくありません、私と一緒に始めましょう。

※ 登録は3分・スマホで完結・いつでも解約OK
- 📝 区分:🔍 ツール実践
- 👤 執筆:Jさん(Jさん・投資勉強中)
- 📅 投稿日:2026年4月26日 / 🔄 最終更新:2026年5月3日
- 📋 運営者情報・編集方針・レビュー基準
- 📖 まずじっくり学びたい → TradingView完全攻略|ゼロから始めるチャート分析と売買ルール作りの全て
- ⚖️ 主要サービスを比較してから決めたい → おすすめネット証券完全比較ランキング2026
- 🚀 すぐ始めたい(無料・登録3分) → TradingViewで無料アカウントを作る
TradingViewとは?なぜCAN-SLIMに使うのか
CAN-SLIM提唱者
CAN-SLIM投資戦略は、投資家ウィリアム・J・オニール氏が提唱し、その著書『How to Make Money in Stocks』(邦題『オニールの成長株発掘法』)で体系化されました。この手法は、過去の優れた成長株の共通項を分析して導き出された7つの要素に基づいています。市場のトップパフォーマーを早期に発見することを目的としています。
TradingViewは、世界中の投資家が利用する高機能なチャート分析ツールです。無料プランから利用でき、世界中の株式、FX、仮想通貨などのリアルタイムデータを詳細なチャートで確認できます。
何百ものインジケーター(株価チャートに重ねて表示する分析補助ツール)が標準搭載されており、自分だけのカスタムインジケーターをPine Script(TradingView専用のプログラミング言語)で作成できるのが最大の特徴です。
オニール流CAN-SLIM投資法では、最新四半期EPS成長率や年間EPS成長率、株価の新高値更新など、具体的な数値基準に基づいた銘柄選定が求められます。
これらの数値条件は、Pine Scriptでプログラムし、自動でチェックさせることが可能です。また、条件を満たした際にアラート(自動通知)を設定できるため、毎日チャートに張り付く必要がなくなります。
TradingViewは、CAN-SLIMの数値基準を自動でスクリーニングし、リアルタイムでアラートしてくれるため、忙しい個人投資家にとって非常に強力な味方となります。
所要時間: 約 10分(コードのコピペと基本設定)
難易度: ★★☆☆☆(コピペするだけなら初級)
事前準備
TradingViewは、アカウントを作成するだけで多くの機能が無料で利用できます。
しかし、この記事で解説するアラート通知機能を最大限に活用し、より多くのカスタムインジケーターや複数チャートを表示するには、有料プラン(Pro以上)の契約が推奨されます。
1. TradingViewアカウントの作成: 公式サイトにアクセスし、メールアドレスなどで無料アカウントを作成します。
2. 有料プランの検討: アラートのリアルタイム通知や、同時に設定できるアラート数に制限があるため、本格的に利用する場合はPro以上のプランを検討しましょう。
実装手順
それでは、TradingViewのPine Scriptを使って、オニール流CAN-SLIMの数値基準を自動でスクリーニングするインジケーターを設定し、アラートを受け取るまでの手順を見ていきましょう。
ステップ1:TradingViewのPine Scriptエディタを開く
TradingViewにログインし、任意の銘柄チャートが開いている状態から始めます。
1. TradingViewにログイン後、画面上部の検索バーから任意の銘柄を検索し、チャート画面を開きます。
2. チャート画面下部の 「Pine エディタ」タブ をクリックします。これはTradingViewに標準で搭載されているコードエディタです。
3. 画面下部にPine エディタが表示されれば成功です。
Pine Scriptエディタは無料アカウントでも利用できます。ここで自分だけのインジケーターやストラテジー(売買戦略)を作成・編集できます。
ステップ2:CAN-SLIMスクリーナーのPine Scriptをコピペして保存する
Pine Scriptエディタが開いている状態から進みます。既存のコードがある場合は、すべて削除してから貼り付けてください。
1. Pine エディタの空白部分に、以下のPine Scriptコードをすべてコピー&ペーストします。
2. エディタ右上の 「保存」ボタン をクリックし、インジケーター名を「CAN-SLIM Screener」などと入力して保存します。
//@version=5
indicator("CAN-SLIM Screener", overlay=true)
// CAN-SLIM Criteria Inputs (Simplified for demonstration)
var float currentEPSGrowth = input.float(25.0, title="Current Qtr EPS Growth (%)", step=5)
var float annualEPSGrowth = input.float(20.0, title="Annual EPS Growth (%)", step=5)
var float priceRelativeTo52WHigh = input.float(10.0, title="Price within % of 52W High", step=1)
var float institutionalOwnershipChange = input.float(0.0, title="Institutional Ownership Change (%)", step=1) // Placeholder for I
// Fetching Data (Example: requires external data for full CAN-SLIM)
// For actual EPS, you would need a data provider that PineScript can access or integrate with a custom script.
// This example uses dummy values for EPS growth, assuming they can be calculated externally.
// Dummy data for demonstration purposes (replace with actual data fetching logic)
// In a real scenario, you'd use security() function or external data for EPS, Institutional Ownership etc.
epsCurrentQtrGrowth = ta.random(1, 50) // Simulate actual growth
epsAnnualGrowth = ta.random(1, 40) // Simulate actual growth
isNewHigh = close > ta.highest(high, 252)[1] // Check if current close is a new 52-week high
distanceTo52WHigh = (ta.highest(high, 252) - close) / ta.highest(high, 252) * 100
// CAN-SLIM Conditions (simplified)
condC = epsCurrentQtrGrowth >= currentEPSGrowth
condA = epsAnnualGrowth >= annualEPSGrowth // Simplified: check if growth > threshold
condN = isNewHigh and distanceTo52WHigh <= priceRelativeTo52WHigh
// condS: Supply and Demand - not easily implemented in PineScript without volume profile / float shares data
// condL: Leader or Laggard - requires industry comparison, complex in PineScript
// condI: Institutional Sponsorship - requires external data
// condM: Market Direction - can be implemented with market index comparison (e.g., SPX, NIKKEI)
// Combine conditions (C, A, N simplified)
// In a real application, you would integrate more robust data and logic for S, L, I, M.
canSlimSignal = condC and condA and condN
// Plotting signal
plotshape(canSlimSignal, title="CAN-SLIM Signal", location=location.belowbar, color=color.new(color.green, 0), style=shape.triangleup, size=size.normal)
// Alert setup
alertcondition(canSlimSignal, title="CAN-SLIM Buy Signal", message="CAN-SLIM criteria met for {{ticker}}!")
- `//@version=5`: Pine Scriptのバージョン指定です。最新バージョンを使用することを示します。
- `indicator(…)`: インジケーターの表示名(CAN-SLIM Screener)とチャート表示設定(`overlay=true` はチャート上に重ねて表示)を定義します。
- `input.float(…)`: ユーザーが変更できる数値入力項目を作成します。ここでCAN-SLIMの基準値(Current Qtr EPS Growth、Annual EPS Growth、Price within % of 52W High)を設定できます。例えば「Current Qtr EPS Growth」を25.0と設定することで、直近四半期のEPS成長率が25%以上の銘柄を絞り込めます。
- `epsCurrentQtrGrowth`, `epsAnnualGrowth`: 今回はデモデータを使用していますが、実際には外部データソースからEPS成長率を取得するロジックを記述します。
- `isNewHigh`: 現在の株価が過去52週(252営業日)の高値を更新しているかをチェックします。
- `distanceTo52WHigh`: 52週高値から現在の株価までの乖離率を計算します。
- `condC`, `condA`, `condN`: CAN-SLIMのC(Current EPS)A(Annual EPS)N(New High)の条件を定義しています。
- `canSlimSignal`: すべての条件が満たされた場合に `true` となる最終シグナルです。
- `plotshape(…)`: シグナルが `true` の場合にチャートに緑の▲マークを表示します。
- `alertcondition(…)`: シグナルが点灯した際にアラートを通知する設定です。
このスクリプトはCAN-SLIMのC、A、Nの条件の一部を実装しています。S(需給)L(リーダー企業)I(機関投資家)M(市場トレンド)については、Pine Script単体での実装が難しいか、外部データとの連携が必要になります。これらの要素は、後述するTradingViewの標準スクリーナーや他のツールで補完することを検討しましょう。
ステップ3:スクリプトをチャートに追加し、アラートを設定する
Pine Scriptが保存されている状態から進みます。
1. Pine エディタの右上にある 「チャートに追加」ボタン をクリックします。
2. チャートの下部に「CAN-SLIM Screener」というインジケーターが表示され、条件を満たしていればチャート上に緑の三角形のシグナルが表示されます。
これでPine Scriptがチャートに適用されたことを確認できます。
3. 次に、チャート画面上部にある 「時計アイコン」(アラート) → 「アラートを作成」 をクリックします。
4. 表示されたダイアログボックスで、「条件」 のドロップダウンから「CAN-SLIM Buy Signal」を選択します。
5. 「通知方法」 で、TradingViewからアラートを受け取りたい方法(例: アプリ内通知、メール、ウェブフックなど)を選択します。
リアルタイムのアラート通知でチャンスを逃さないためには、TradingViewの有料プランが最適です。無料体験期間を活用して、自動スクリーニングの威力を今すぐ実感しましょう。
6. 「作成」ボタン をクリックすると、アラートの設定は完了です。
アラート機能はTradingViewの強力な機能の一つです。無料プランではポップアップ通知に限定されることがありますが、Pro以上の有料プランにアップグレードすると、メールやアプリへのプッシュ通知、さらにはウェブフックを利用して他のアプリケーションと連携することも可能になります。これにより、常に市場を監視することなく、CAN-SLIM条件を満たす銘柄の出現を自動で検知できます。
[BUTTON affiliate-key=”TradingView” url=”https://jp.tradingview.com/gopro/?share_your_love=j-ailab”]TradingViewを無料で試してみる[/BUTTON]
ステップ4:TradingViewスクリーナーでファンダメンタルズ条件を追加する
Pine Scriptだけでは難しいCAN-SLIMのファンダメンタルズ要素(Leadership、Institutional Sponsorship、Supply and Demandの一部)を、TradingViewの標準スクリーナーで補完する手順です。
1. チャート画面上部の 「スクリーナー」タブ をクリックします。
2. 表示されたスクリーナー画面で、「フィルター」 をクリックし、CAN-SLIMの各要素に対応する条件を追加していきます。
- C (Current EPS Growth): 「EPS四半期成長率 (前年同期比)」 を選択し、「25%以上」 に設定。
- A (Annual EPS Growth): 「EPS年間成長率」 を選択し、「20%以上」 に設定。
- S (Supply and Demand): 「浮動株比率」 などを追加し、「低い」 などの条件を設定。
- L (Leadership): 「相対力指数 (RSI)」 などを追加し、「業界内で高順位」 の銘柄に注目。これは直接的なリーダーシップではないが、相対的な強さの目安になります。
- I (Institutional Sponsorship): 「機関投資家保有比率」 や 「機関投資家による売買高」 を追加し、増加傾向にある銘柄を絞り込みます。
3. これらのフィルターを組み合わせることで、Pine ScriptでカバーしきれないCAN-SLIMの側面を補完し、より多角的なスクリーニングが可能になります。
4. 設定したフィルターは保存しておき、定期的に実行することで、最新のCAN-SLIM候補銘柄を発見できます。
Pine Scriptはテクニカル分析や価格動向のスクリーニングに強みがありますが、TradingViewの標準スクリーナーは、ファンダメンタルズデータに基づいた条件設定に優れています。これら二つの機能を組み合わせることで、CAN-SLIMの多面的なスクリーニングをより高度に実行できます。
Jさんが実際にやってみた結果

いや〜、実際にやってみたら、思ったより簡単だった! Pine Scriptって難しそうだったけど、コピペで動くし、チャートにシグナルが表示されるのも分かりやすいね。しかも、アラートまで自動で来るなんて感動だ! これからは、週末の銘柄探しで焦らなくて済むし、もう高値掴みと狼狽売りは繰り返さないぞ!

その通りです、Jさん。Pine Scriptでの自動化は、感情に左右されない客観的な銘柄選定を可能にします。ただし、これはあくまで数値基準によるスクリーニングです。過去のデータではAIスクリーニングが市場平均を上回る傾向を示していますが、市場は常に変化します。より高度な分析には、TradingViewの標準スクリーナーや他のツールとの組み合わせが不可欠ですよ。
よくある質問
- QTradingViewの無料プランでもPine Scriptは使えますか?
- A
はい、Pine Scriptエディタ自体は無料プランでも利用可能です。
しかし、リアルタイムのアラート通知や複数のチャートレイアウト保存など、より高度な機能を利用するには有料プラン(Pro以上)の契約が推奨されます。
- QPine Scriptのコードが難しくてカスタマイズできません。どうすれば良いですか?
- A
ChatGPTなどの生成AIを活用しましょう。
例えば「このPine Scriptに、RSIが70を超えたら売りのシグナルを出す機能を追加してください」のように指示すれば、AIがコードを生成してくれます。
プログラミング知識がなくても、AIが強力なサポートになります。
- QPine ScriptでCAN-SLIMの全条件を実装できますか?
- A
Pine Scriptは主にテクニカル指標や価格データに基づいたスクリーニングが得意です。
CAN-SLIMの「N(新製品・新経営陣)」や「I(機関投資家動向)」のようなファンダメンタルズや定性的な情報は、TradingViewの標準スクリーナー機能や、Pythonと外部APIを組み合わせることで、より詳細に分析できます。
テクニカル分析の過信
テクニカル分析は市場の需給を視覚化する強力なツールですが、単独で絶対視することは危険です。過去のチャートパターンが必ずしも将来を保証するものではないという点は、投資の世界で古くから語り継がれる一般的な失敗パターンの一つです。市場の変動要因は多岐にわたり、ツールが示すシグナルと逆行する動きを見せることもあります。
まとめ
この記事では、TradingViewとPine Scriptを使って、オニール流CAN-SLIM成長株スクリーニングの数値条件を自動化する手順を解説しました。
初心者のJさんでも、コピペと数回のクリックで5分あれば基本的なPine Scriptの設定とアラートの有効化が可能です。
書籍で学んだCAN-SLIMの理論を、TradingViewという強力なツールで実践することで、時間と労力を大幅に削減し、客観的な銘柄選定が可能になります。
感情に左右されずに、AIが自動で有望な成長株のシグナルを検知してくれるため、日々の投資判断に安心感をもたらします。

【免責・広告表示】この記事はアフィリエイトプログラムに参加しており、リンク経由でご購入・口座開設いただいた場合に報酬が発生することがあります。この記事は投資の学習・情報収集を目的としており、特定の金融商品への投資を勧誘するものではありません。過去のデータや事例は将来の成果を保証するものではありません。株式・ETF・投資信託等への投資には元本割れリスクがあります。投資の最終判断はご自身の責任で行ってください。
次に読むべき記事

・3児の父。20年ぶりに投資を再開し、AIと一緒にお金を学ぶ中間管理職忙しい人。失敗談もリアルに書いています。