DMM FX
Pineスクリプト

Pine Script(Pineスクリプト)入門解説(16)Security関数のgapsとlookaheadとは?

はじめに

今回はPineScript入門ガイドの16回目です。今回は、Security関数の引数の中の、「gaps」と「lookahead」とについてまとめておきたいと思います。

Security関数は、現在チャートに表示されているシンボルと違うシンボルや時間足の値を取得するもので、とても便利で頻繁に使う関数です。ここで、Security関数の中の引数の「gaps」と「lookahead」がわかりずらいので最初は戸惑います。

今回はその「gaps」と「lookahead」の意味を、設定結果の実例を見ながら説明していきたいと思います。

「gaps」と「lookahead」とは

security関数の引数は、以下の通りです。
security(symbol, resolution, expression, gaps, lookahead)

PineScriptの公式リファレンスマニュアルでは、gapsとlookaheadについて以下のように解説されています。

gaps
リクエストされたデータのマージ方法(リクエストされたデータは自動的にメイン系列 (OHLCデータ) とマージされます)。可能な値は: barmerge.gaps_on, barmerge.gaps_off です。barmerge.gaps_on – リクエストされたデータはギャップ (na値) ありでマージされます。 barmerge.gaps_off – リクエストされたデータはギャップなしで連続してマージされ、すべてのギャップは以前の最も近い既存の値で埋められます。デフォルト値は barmerge.gaps_off です。
lookahead
リクエストされたデータ位置のマージ方法。可能な値は: barmerge.lookahead_on, barmerge.lookahead_off です。デフォルト値はバージョン3から barmerge.lookahead_off です。2つのパラメータの動作はリアルタイム時には同じで、ヒストリカルデータの時のみ異なる事ににご注意下さい。

 

むむむ・・・。読んでもよくわからないですね。そこで、サンプルスクリプトを実際にチャートに表示させて、違いをみることにします。

gaps_on/offの違いと、lookahead_on/offの違いをチャートで見てみよう

日足の安値を取得する以下のサンプルスクリプトを使って、1時間足チャートに表示させてみます。

//@version=4
study('My Script', overlay=true)
a = security(syminfo.tickerid, 'D', low, gaps=barmerge.gaps_off, lookahead=barmerge.lookahead_off)
plot(a, color=color.red)
b = security(syminfo.tickerid, 'D', low, gaps=barmerge.gaps_off, lookahead=barmerge.lookahead_on)
plot(b, color=color.green)
c = security(syminfo.tickerid, 'D', low, gaps=barmerge.gaps_on, lookahead=barmerge.lookahead_off)
plot(c, color=color.blue)
d = security(syminfo.tickerid, 'D', low, gaps=barmerge.gaps_on, lookahead=barmerge.lookahead_on)
plot(d, color=color.orange)

a, b, c, dは、それぞれ以下の組み合わせです。

a: gaps=「barmerge.gaps_off」かつ「barmerge.lookahead_off」
b: gaps=「barmerge.gaps_off」かつ「barmerge.lookahead_on」
c: gaps=「barmerge.gaps_on」かつ「barmerge.lookahead_off」
d: gaps=「barmerge.gaps_on」かつ「barmerge.lookahead_on」

gaps_offのケースで、lookaheadのon/offの違い

まず、gaps=barmerge.gaps_offのケースで;
a: lookahead=barmerge.lookahead_off
b: lookahead=barmerge.lookahead_on

の違いを、1時間足で表示したものが以下のチャートです。

日足の安値に相当する水平線が、1日ずれていることがわかりますね。
barmerge.lookahead_offの場合は、当日の日足の安値は当日の最後の1時間足確定のタイミング(すなわち、当日の日足の安値が確定したタイミング)で取得されます。

一方、barmerge.lookahead_onの場合は、当日の日足の安値は、当日中、最新の安値を常にリアルタイムで表示していることがわかります。(当日中に安値を更新するたびに当日のラインは変わります(「リペイント」されます。)

「lookahead(先読み)」の意味が、これでわかりますね。

gaps_onのケースで、lookaheadのon/offの違い

次に、gaps=barmerge.gaps_onのケースで;
c: lookahead=barmerge.lookahead_off
d: lookahead=barmerge.lookahead_on

の違いを、1時間足で表示したものが以下のチャートです。

lookaheadのon/offの違いで1日ずれることは、前述のbarmerge.gaps_offのケースと同じですが、水平線ではなく、斜めの線になっていますね。

すなわち;
barmerge.gaps_onでは、日中の1時間足の部分は値無しとする(ギャップ有りとする)
barmerge.gaps_offでは、日中の1時間足の部分は、直近の1時間足の時点の値と同じとする(連続してギャップ無しにする)ということですね。

これをふまえて、公式リファレンスの以下の記述を再度読むと、理解できます。
barmerge.gaps_onでは、「ギャップ (na値) ありでマージ」
barmerge.gaps_offでは、「ギャップなしで連続してマージされ、すべてのギャップは以前の最も近い既存の値で埋められる

 

スポンサーリンク

海外のFX会社おすすめ・ベスト3
XM

運営歴10年、口座数3.5百万、196か国対応、Tier1ライセンス所有
最大レバレッジ888倍、最小入金5ドル、追証なし、口座開設ボーナス3,000円、入金ボーナスも多彩
多彩な教育・リサーチコンテンツ
ボーナスで有名な大手ブローカーですが、最大の強みは約定力、信頼度もトップクラスです。

>> XMのウェブサイトはこちら

HotForex

2010年から運営、Tier1ライセンス所有のグローバル大手ブローカーが日本人向けサービスを拡大中
口座数2百万、27か国言語、業界表彰歴35件
最小入金5ドル、レバレッジ1000倍、追証なし
多彩なボーナス、多彩なコンテスト
FXだけなく、仮想通貨、米国株・アジア株・欧州株、ETF、各国の株式指数、VIX指数、原油、商品などの投資もあわせて研究したければ、HotForexがイチオシの品ぞろえです。

>> HotForexのウェブサイトはこちら

Exness

運営歴12年、HotForex・XMに劣らないグローバル大手、Tier1ライセンス・ブローカーが日本向けサービスにも注力展開中。
最小入金1ドルで、レバレッジは無限大(条件あり)、追証なし、通貨ペアの数は、驚異の107ペア!
月次の口座数、取引高、デロイトの監査もすべて開示。レアルマドリッドのスポンサー
老舗巨大ブローカー、ユニークさは抜群です。

>> Exnessのウェブサイトはこちら

FOREX Caffe
タイトルとURLをコピーしました