スクリプトからより多くのデータをリクエスト

05 31, 2022

Pineスクリプト™ の2つの新しい関数 - request.security_lower_tf()request.economic() - と既存の request.security() 関数の改良により、スクリプトからより多くのデータにアクセスできるようになりました。

request.security_lower_tf()

新しい request.security_lower_tf() 関数で、チャートより下位の時間足のデータを簡単にリクエストできるようになりました。従来は、60分足のチャートのバーを構成するすべての1分足のイントラバーにアクセスするためには、複雑なユーザー定義関数と request.security() の呼び出しが必要でした。新しい request.security_lower_tf() では、各イントラバーに対して指定した式の値を含む配列を返すことで、これを簡単に行うことができるようになりました。イントラバーの数は、チャートの各バーごとに異なる可能性があることにご注意ください。

次のインジケーターは、チャートの各バー内における1分足のイントラバーの方向を調べます。イントラバーの大半がチャートのバーと同じ方向でない場合、バーの実体をオレンジ色にカラーリングします。

//@version=5
indicator("Polarity Divergences", overlay = true)
// 各1分足のイントラバーの+1/0/-1方向を含む配列をフェッチします。
array<float> directionsArray = request.security_lower_tf(syminfo.tickerid, "1", math.sign(close - open))
// イントラバーの方向の大半がチャートのバーの方向と一致しない場合、
// チャートのバーをオレンジ色にカラーリングします。
barcolor(math.sign(array.sum(directionsArray)) != math.sign(close - open) ? color.orange : na)
// イントラバーの数をインジケーター値とデータウィンドウにプロットします。
plotchar(array.size(directionsArray), "Intrabars", "", location.top)

request.economic()

request.economic() 関数は、国または地域の経済データを取得することができます。経済データには、
国の経済状態(例.GDP、インフレ率)や特定の業種や業界の情報(例.鉄鋼生産量、ICUベッド数)などが含まれます:

//@version=5
indicator("Gross domestic product of the US")
plot(request.economic("US", "GDP"))

ヘルプセンターの記事で、利用可能なすべての国/地域と指標を一覧でご紹介しています。各指標に関する記事では、その指標についての説明と利用可能な国/地域をリストアップしています。例えば、こちらはGDPの記事です。

request.security() improvements

request.security() は、配列、文字列、ブール値、色、およびこれらの型のタプルを返せるようになりました:

//@version=5
indicator("")

// OHLC値を含む配列を作成します。
array<float>  ohlc = array.from(open, high, low, close)

// チャートの時間足でシンボル "NASDAQ:TSLA" のコンテキストで評価したタプルをリクエストします。
// タプルは以下を含みます:
//   - OHLC値の配列。
//   - シンボルのティック精度でのOHLC値の文字列表現。
//   - シンボルの通貨の文字列。
[ohlcArray, ohlcString, curString]  = request.security("NASDAQ:TSLA", timeframe.period, [ohlc, str.tostring(ohlc, format.mintick), syminfo.currency])

if barstate.islastconfirmedhistory
    label.new(bar_index, high, 
      "OHLC values: " + str.tostring(ohlcArray) +
      "\nFormatted OHLC values: " + ohlcString +
      "\nCurrency: " + curString)

Pineの新機能については、ユーザーマニュアルのリリースノートでご確認ください。PineCodersは、TelegramのSquawk Boxチャンネル、Twitterアカウント、TradingViewの “Pine Script™ Q&A” の公開チャットでも最新情報を配信しています。

これらの改善点がお役に立てば幸いです。引き続きご意見・ご提案をお寄せください。私たちは皆様のためにTradingViewを構築していますので、皆様からのフィードバックをお待ちしております。

Look first Then leap

あなたのためのTradingView、その最高の機能を最大限にご活用ください
チャートを起動