📊 Pine スクリプトでゴールデンクロスストラテジーを作る方法
TradingView
で自分だけの売買ルールを作ってみたい初心者向けに、Pine スクリプトの基本文法を解説します。
今回はゴールデンクロスを例に、シンプルな売買ルールを
チャート
上で動かす方法を学びます。
難しい指標は必要ありません。売買ルールの仕組みや考え方を理解することが目的です。
この記事を読むことで、手を動かしながら売買サインの仕組みを実践的に学べます。
💡 この STEP の記事では
バックテスト
や検証の詳細には触れず、Pine スクリプトを使った実装メインの工程にフォーカスしています。
バックテスト
や改善の手順は、別記事で詳しく解説していますので、実装後のステップで参考にしてください。
👉 TradingView で学ぶバックテスト入門|売買ルールの検証と最適化ガイド
👥 この記事は誰向け?
この記事は以下のような方におすすめです。
- TradingView を使い始めのトレーダー
- 「売買ルールを自分で作ってみたい」と思っている人
- プログラミング経験はほとんどなくても OK
📖 この記事でわかること
- Pine スクリプトの基本構文(変数、関数の使い方など)
- ゴールデンクロスの概念とチャート上での確認方法
- シンプルな売買ルールをコードで書く方法
- 実際に TradingView に表示してサインを確認する手順
1. Pine スクリプトとは?特徴と基本構文の解説
Pine スクリプトとは?
TradingView
専用のプログラミング言語で、
チャート
上に
インジケーター
やストラテジーを表示できます。
チャート
上で条件に沿った計算や表示が可能で、手動トレードではなく自動でサインを確認できるのが特徴です。
Pineスクリプトを使ってストラテジー作成・テストを行うのに最適なツールです。
無料プランでも十分に実装やテストが可能なので、アカウント未所持の方はこの機会に登録をおすすめします。
💡当サイトのリンクは一部アフィリエイトを含みます。記事が参考になったら、
以下のリンクから登録いただけると嬉しいです!🙏
2. Pine スクリプトの基本構文や前提知識
前回は「コメント」について触れました。今回は実際に変数や関数を使って売買サインを作る準備をしていきます。
変数宣言
price = close // 終値を変数priceに代入
- = で値を代入
- close はローソク足の終値(他にも open 始値、high 高値、low 安値 があります)
💬 変数は値を覚えておく箱を作るイメージです
関数の書き方
関数というのは、「入力を与えると自動で処理をして結果を返してくれる仕組み」のことです。
上の例では ta.sma という関数に「終値(close)」と「期間(5)」を渡すと、その平均値(単純
移動平均線
)が計算されます。
sma5 = ta.sma(close, 5) // 5期間の単純移動平均
- ta.sma(価格, 期間) で移動平均を計算
- ta. がつく関数は TradingView 標準のテクニカル指標
💬 関数は料理でいうと、材料を渡すと調理して料理を返してくれるイメージです
📌 期間の考え方について
移動平均の「期間」は 足の本数 を意味します。
同じ「25 期間」でも、表示している
チャート
の時間足によって意味が変わります。
- 5 分足チャート → 25 本 = 125 分(約 2 時間ちょっと)の平均
- 日足チャート → 25 本 = 25 日の平均(いわゆる 25 日線)
3. 短期・長期移動平均線をチャートに描画する手順
ここまでで「移動平均の計算」までは完了しました。
ただし、このままでは
チャート
に表示されないので、次に 描画 をしてみましょう。
短期線の描画
// ※コード全文
//@version=6
indicator("ゴールデンクロスサンプル", overlay = true)
// 5期間の移動平均を計算
sma5 = ta.sma(close, 5)
// チャートに表示
plot(sma5, color = color.blue)
plot
関数
💡 plot 関数は、渡された数値を「線」として
チャート
に描画する命令です。
ここでは 青い線 として、短期の
移動平均線
を表示しています。
👉 つまり、「期間 = ○○ 本」なので、時間軸が変われば同じ数値でも指している長さが変わる、という点を意識すると理解しやすいです。
インジケーターをチャートで確認
- TradingView で Pine エディタを表示
- 新しいスクリプトを作成
- 上記コードをコピー&ペースト
- 「チャートに追加」で 短期 MA が表示されるか確認
💡 以降はコードを変更・保存すれば自動で
チャート
に反映されます。
長期線の描画
短期線が描けたら、同じように 長期線 を表示してみましょう。
sma25 = ta.sma(close, 25) // 長期移動平均(25期間)
plot(sma25, color = color.red)
これで、青い線(短期移動平均)と赤い線(長期移動平均)が同時に
チャート
に描画されます。
👉 ここまでできれば、「短期と長期が交わるタイミング(ゴールデンクロス・デッドクロス)」を見つける準備が整いました。