資源の読み込みに... 荷物...

FMZ PINE スクリプトのドキュメント

作者: リン・ハーン発明者 量化 - 微かな夢作成日: 2022-05-06 14:27:06, 更新日: 2024-10-12 15:27:04

ceArray =array.new (サンプル入力) メソッド maintainQueue ((array srcArray, float value, bool takeSample = true) => 設定する if take サンプル srcArray.push (値) srcArray.shift (() について srcArray

方法 calcBB(array srcArray, float mult, bool 計算 = true) => var フローット平均 = na var float dev = na について 計算する場合は mean:= srcArray.avg() dev:= srcArray.stdev() *マルト [平均,平均 + デブ,平均 - デブ]

bool newSample = bar_index % n == 0

[sampleMean, highBand, lowBand] = sourceArray.maintainQueue ((sourceInput, newSample).calcBB ((倍数, newSample) ] ソースArray.maintainQueue ((sourceInput, newSample) ソースインプット,newSample).calcBB ((倍数,newSample)

グラフ (サンプル) 平均,ベース,色.オレンジ) 図面 (高帯,,色.) グラフ (lowBand), ,color.red)


可以看到使用关键字method声明的用户自定义方法:maintainQueue、calcBB的参数列表中第一个参数都是```array<float>```类型。表示该method是```array<float>```类型变量的方法,所以可以看到调用以下代码来计算布林指标。

```pine
[sampleMean, highBand, lowBand] = sourceArray.maintainQueue(sourceInput, newSample).calcBB(multiplier, newSample)

メソッドをリロードする

ユーザ定義メソッドは,同じ識別子を持つ既存の内蔵メソッドとユーザ定義メソッドを覆い,重載することができる.この機能は,ユーザが同じメソッド名で異なるパラメータ署名に関連した複数のインスタンスを定義することを許可する.例として,変数のタイプを識別するためにメソッドを定義したいと仮定します.ユーザ定義メソッドに関連したオブジェクトのタイプを明確に指定しなければならないため,私たちが認識したいすべてのタイプを定義する重載が必要です.下記では,GetType ( getType) メソッドを定義します.このメソッドは,変数のタイプの文字表示形式を返し,5つの基本的なタイプを重載します:

//@version=5
indicator("Type Inspection")

// @function   Identifies an object's type.
// @param this Object to inspect.
// @returns    (string) A string representation of the type.
method getType(int this) =>
    na(this) ? "int(na)" : "int"

method getType(float this) =>
    na(this) ? "float(na)" : "float"

method getType(bool this) =>
    na(this) ? "bool(na)" : "bool"

method getType(color this) =>
    na(this) ? "color(na)" : "color"

method getType(string this) =>
    na(this) ? "string(na)" : "string"

a = 1             // a.getType(): float
b = 1.0           // b.getType(): float
c = true          // c.getType(): bool
d = color.white   // d.getType(): string(na)
e = "1"           // e.getType(): string

runtime.log("a.getType():", a.getType())
runtime.log("b.getType():", b.getType())
runtime.log("c.getType():", c.getType())
runtime.log("d.getType():", d.getType())
runtime.log("e.getType():", e.getType())
runtime.error("stop")

各変数の基本型が決定されるgetType()FMZプラットフォームでは,PINEの脚本底部がJavaScript言語で実装されているため,数値型は浮点型データ (float) と判断される.

内蔵関数

函数呼び出し時に参数伝達,参数名付けを指定し,対応する参数位置で直接変数を伝達し,混合使用もサポートする.例えば:

plot(close, title="test plot")     // 直接传参数 close ;指定参数 title ,赋值字符串"test plot"

参数名付けを指定した後に,直接参数として変数を転送することはできません.その後の送信は,参数名付けの形式で記述する必要があります.

// plot(close, title="test", color.red)    // 虽然plot第三个参数是颜色值,但是这样写就会报错
plot(close, title="test", color=color.red) // 正确写法
plot(close, "test", color.red)             // 正确写法

時間枠

タイムフレーム.in_sec

送られてきます.timeframeパラメータの時間周期を秒に変換します.

timeframe.in_seconds(timeframe)

// Get chart timeframe:
i_tf = input.timeframe("1D")

// Convert timeframe to the int value (number of seconds in 1 Day):
tf = timeframe.in_seconds(i_tf)

plot(tf)

返した値 timeframeint は,K 行の秒数を表す形である.

パラメータ

  • timeframe(simple string) タイムフレーム、オプション、デフォルトはtimeframe.period。

コメントについてtimeframe>=1M関数は,月中の30.4167 (365/12) 日数による秒数である.

また会おう input.timeframe timeframe.period

ティッカー

ticker.heikinashi

コード識別子を作成して,平均K行値をスムーズに要求します.

ticker.heikinashi(symbol)

heikinashi_close = request.security(ticker.heikinashi(syminfo.tickerid), timeframe.period, close)

heikinashi_aapl_60_close = request.security(ticker.heikinashi(syminfo.tickerid), "60", close)
plot(heikinashi_close)
plot(heikinashi_aapl_60_close)

返した値 股票代码的字符串值,可以提供给request.security函数。

パラメータ

  • symbol(simple string) 商品コードの識別子.

また会おう syminfo.tickerid syminfo.ticker request.security

要求

request.data

外部のデータを求めます.

request.data(url, attribute)

/*backtest
start: 2024-09-01 16:00:00
end: 2024-10-10 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
args: [["RunMode",1,358374],["ZPrecision",0,358374]]
*/

var chart_data = "https://www.datadata.com/api/v1/query/ebe46218-c5c6-4366-8c72-413694417976/data"
spotPrice = request.data(chart_data, "$.spot_close_price")
futuresPrice = request.data(chart_data, "$.future_close_price")
diff = futuresPrice - spotPrice

plot(diff, "永续-现货差价")
plot(futuresPrice, "期货价格", overlay=true)
plot(spotPrice, "现货价格", overlay=true)

if diff > 80 and strategy.position_size >= 0
    runtime.log("diff > 80")
    strategy.entry("Enter Short", strategy.short)
if diff < 60 and strategy.position_size <= 0
    runtime.log("diff < 60")
    strategy.entry("Enter Short", strategy.long)

返した値パラメータattribute指定されたデータシリーズ.

パラメータ

  • url(simple string) 要求されたデータソースのurl,データソースが返信するデータ形式は,以下の条件を満たす必要があります (少なくともtime、data属性を含む):{"data": [], "schema": ["time", "data"]}◎例のデータ形式を参照してください:

    {
        "data": [
            [1720051200000, "{\"spot_close_price\" : 57050.01, \"future_close_price\" : 57045.9}"],
            [1720137600000, "{\"spot_close_price\" : 56628.79, \"future_close_price\" : 56604.9}"],
            // ...
        ],
        "schema": ["time", "data"]
    }
    
  • attribute(simple string) 属性の名前を指定し,必要なデータを返します.例えば:"$.spot_close_price"活用する$.前記として,属性名と要求されたデータソースで返信されたデータ内のdataフィールド内の属性が一致する

誤差が提示された場合,チェックする必要があります.request.dataリクエストの時間範囲がリクエストの設定時間範囲と一致するかどうか,リクエストの時間配列でデータをクエリできない場合はエラーが返されます.

この例では,data-data は SQL 文のデータクエリです.

WITH latest_data AS (
    SELECT 
        klines.spot_1d.Time AS time,
        CONCAT('{\"spot_close_price\" : ', klines.spot_1d.Close, ', \"future_close_price\" : ', klines.future_1d.Close, '}') AS data
    FROM 
        klines.spot_1d
    JOIN 
        klines.future_1d
    ON 
        klines.spot_1d.Time = klines.future_1d.Time
    WHERE
        klines.spot_1d.Symbol = 'btc_usdt'
    AND 
        klines.future_1d.Symbol = 'btc_usdt.swap'
    AND 
        klines.spot_1d.Exchange = 'Binance'
    AND 
        klines.future_1d.Exchange = 'Binance'
    ORDER BY 
        klines.spot_1d.Time DESC
    LIMIT 100
)
SELECT * FROM latest_data
ORDER BY time ASC;

動画はFMZで視聴できます.データ探索ページの検索,データリンク作成,例で使いますhttps://www.datadata.com/api/v1/query/ebe46218-c5c6-4366-8c72-413694417976/data

request.security

異なった種類/解像度を求めます.

request.security(symbol, timeframe, expression, gaps, lookahead, ignore_invalid_symbol, currency) 

s = request.security(syminfo.tickerid, "D", close)   // 1 Day
plot(s)

expr = ta.sma(close, 10)
s1 = request.security(syminfo.tickerid, "240", expr) // 240 Minutes
plot(s1)

// To avoid difference in calculation on history/realtime you can request not latest values and use merge strategy flags as follows:
s2 = request.security(syminfo.tickerid, "D", close[1], barmerge.gaps_off, barmerge.lookahead_on)
plot(s2)
f() => [open, high]
[o, h] = request.security(syminfo.tickerid, "D", f())
[l, c] = request.security(syminfo.tickerid, "D", [low, close])
plot((o + h + l + c) / 4)

返した値シリーズ要求

パラメータ

  • symbol(simple string) 商品コード.
  • timeframe(simple string) 時間周期.空の文字列は,グラフの現在の時間周期として解釈されます.
  • expression(series int/float/bool/color) は,request.security から計算を呼び出し,表現を返します. それは,一行または一行に変換できる要素を含む要素を含む一組である可能性があります.
  • gaps(barmerge_gaps) 要求されたデータへの統合ポリシー (データにOHLCの主要な一連のデータに自動的に結合することを要求する) 可能な値:barmerge.gaps_on,barmerge.gaps_off、barmerge.gaps_on - 要求されたデータと可能なギャップを組み合わせ (ナ値) ・barmerge.gaps_off - 要求されたデータが連続して不間断に結合され,すべてのギャップが前回の最新の既存の値で満たされる.デフォルト値はbarmerge.gaps_off。
  • lookahead(barmerge_lookahead) 要求されたデータへの統合ポリシー.可能な値:barmerge.lookahead_on,barmerge.lookahead_off.バージョン3からデフォルト値はbarmerge.lookahead_off.注意してください,動作はリアルタイムと同じで,歴史では異なります.
  • ignore_invalid_symbol(const bool) 選択参数.指定された商品が見つからない場合,関数の動作を決定する. falseの場合,スクリプトは停止し,実行時にエラーに戻る. trueの場合,関数はnaを返して実行を続けます. デフォルト値はfalseです.
  • currency(simple string) 商品の通貨関連値 (例えば OHLC) を変換した通貨である.その後,変換された値に基づいて式式を計算する.使用した変換率は,前日のFX_IDC対の日々の為替率 (計算されるK線に対して).オプション.デフォルト値はsyminfo.currencyである.可能な値:ISO 4217形式の通貨コード (例えばUSD) を含む3文字文字文字文字列または currency.名前空間の定数の一つ,例えばcurrency.USDである.

コメントこの機能を使用したPineScriptコードは,履歴とリアルタイムデータに対して異なる計算を行うことができます.要求された商品に追加パラメータを指定したい場合,例えば取引時間帯や調整タイプ,您可以使用ticker.newこの関数は, この関数に点差を伝達するには,ticker変数を使用することはできません.ticker.new変数または株コードの文字列表示形式,例えばAAPL+MSFT*TSLA.現在,1つのスクリプトには最大40の request.security コールができます. この変数/関数を使用すると指標が再描画される可能性があります. 解像度パラメータは以下の値で許容されます. 1S,5S,15S,30S - 秒間隔 (グラフ周期は,要求された周期よりも小さいまたはそれと同等である必要があります) 1から1440分まで 1Dから365Dまで 1Wから52Wまで 数週間で 1Mから12Mまで数ヶ月で

また会おう syminfo.ticker syminfo.tickerid timeframe.period ta.correlation barmerge.lookahead_off barmerge.lookahead_on

ストラ

str.contains

もしsource文字列はstr文字列は,文字列の文字列のいずれかである.

str.contains(source, str)

// If the current chart is a continuous futures chart, e.g “BTC1!”, then the function will return true, false otherwise.
var isFutures = str.contains(syminfo.tickerid, "!")
plot(isFutures ? 1 : 0)

返した値存在している場合source文字列で見つけましたstr偽の場合は true となる.

パラメータ

  • source(series string) ソース文字列
  • str(series string) 検索する子文字列.

また会おう str.pos str.match

str.endswith

もしsource文字列はstr指定された子文字列の終わりは true を返します.

str.endswith(source, str)

返した値もしsource文字列はstr指定された子文字列の終了は true,またはfalse です.

パラメータ

  • source(series string) ソース文字列
  • str(series string) 検索する子文字列.

また会おう str.startswith

str.startswith

もしsource文字列はstr中に指定された子文字列の始まりは true を返します.

str.startswith(source, str)

返した値もしsource文字列はstr指定された子文字列の始まりは true,または false です.

パラメータ

  • source(series string) ソース文字列
  • str(series string) 検索する子文字列.

また会おう str.endswith

str.substring

文字列を書き換えるには,source文字列の子文字列は、子文字列はbegin_pos指定されたインデックス文字から始まり,source文字列のend_pos - 1

str.substring(source, begin_pos)
str.substring(source, begin_pos, end_pos)

sym= "EXCHANGE_NAME:SYMBOL_NAME"
pos = str.pos(sym, ":")        // Get position of ":" character
tkr= str.substring(sym, pos+1) // "SYMBOL_NAME"
if barstate.islastconfirmedhistory
    runtime.log(tkr)

返した値ソース文字列から抽出した子文字列.

パラメータ

  • source(series string) ソース文字列から子文字列を抽出する.
  • begin_pos(series int) を抽出した子文字列の開始位置. それは独占的である. (抽出した子文字列にはその位置の文字が含まれている).
  • end_pos(series int) 終了位置、それは独占的である (引出した文字列にはその位置の文字が含まれていない)、オプションである。デフォルト値はsource文字列の長さ.

コメント文字列のインデックスは0から始まる.begin_posこれは,end_posこの関数は,空の文字列を返す.

また会おう str.contains str.pos str.match

str.tonumber

str.tonumber(string)

返した値有効数字を含む場合,文字列の浮点型,そうでない場合は na です.

パラメータ

  • string(series string) intまたはfloatの文字列表示形式.

str.format

形式文字列と値をフォーマット文字列に変換する.形式文字列には文字テキストとフォーマットされる各値の大きな括弧{} の1つの占有符が含まれます.各占有符には,その必須パラメータを代用するインデックス ((0から始まる) と選択可能な形式説明符が含まれます.インデックスはstr.formatパラメータリスト内のパラメータの位置を示します.

str.format(formatString, arg0, arg1, ...)

// The format specifier inside the curly braces accepts certain modifiers:
// - Specify the number of decimals to display:
s1 = str.format("{0,number,#.#}", 1.34) // returns: 1.3
runtime.log(s1)

// - Round a float value to an integer:
s2 = str.format("{0,number,integer}", 1.34) // returns: 1
runtime.log(s2)

// - Display a number in currency:
s3 = str.format("{0,number,currency}", 1.34) // returns: $1.34
runtime.log(s3)

// - Display a number as a percentage:
s4 = str.format("{0,number,percent}", 0.5) // returns: 50%
runtime.log(s4)

// EXAMPLES WITH SEVERAL ARGUMENTS
// returns: Number 1 is not equal to 4
s5 = str.format("Number {0} is not {1} to {2}", 1, "equal", 4)
runtime.log(s5)

// returns: 1.34 != 1.3
s6 = str.format("{0} != {0, number, #.#}", 1.34)
runtime.log(s6)

// returns: 1 is equal to 1, but 2 is equal to 2
s7 = str.format("{0, number, integer} is equal to 1, but {1, number, integer} is equal to 2", 1.34, 1.52)
runtime.log(s7)

// returns: The cash turnover amounted to $1,340,000.00
s8 = str.format("The cash turnover amounted to {0, number, currency}", 1340000)
runtime.log(s8)

// returns: Expected return is 10% - 20%
s9 = str.format("Expected return is {0, number, percent} - {1, number, percent}", 0.1, 0.2)
runtime.log(s9)

返した値形式化された文字列.

パラメータ

  • formatString(series string) 形式の文字列.
  • arg0, arg1, ...(series int/float/bool/string/na/int[]/float[]/bool[]/string[]) はフォーマットする値である.

コメント引用されていないスタイルのすべての括弧はバランスをとらなければなりません.例えば,ab {0} de"と"ab } de"は有効スタイルですが",ab {0} de,ab } de"と{"は有効スタイルではありません.

str.length

文字列の文字数に対応する整数を返します.

str.length(string)

返した値ソース文字列の文字数.

パラメータ

  • string(series string) ソース文字列

str.lower

文字をすべて小文字に変換した新しい文字列を返します.

str.lower(source)

返した値すべての文字が新しい文字列に変換される.

パラメータ

  • source(series string) 変換する文字列.

また会おう str.upper

str.upper

文字をすべて大文字に変換した新しい文字列を返します.

str.upper(source)

返した値すべての文字が新しい文字列に大文字で変換される.

パラメータ

  • source(series string) 変換する文字列.

また会おう str.lower

str.match

組み合わせた場合regexこの式は,source文字列の新しい子文字列,またはnaを返します.

str.match(source, regex) 

s = input.string("It's time to sell some EXCHANGE_NAME:SYMBOL_NAME!")

// finding first substring that matches regular expression "[\w]+:[\w]+"
var string tickerid = str.match(s, "[\\w]+:[\\w]+")

if barstate.islastconfirmedhistory
    runtime.log(tickerid) // "EXCHANGE_NAME:SYMBOL_NAME"

返した値 source文字列の新しい子文字列は,regex公式表現は,他の場合は,naです.

パラメータ

  • source(series string) ソース文字列
  • regex(series string) この文字列にマッチする正規表現.

コメントこの関数は,source文字列に最初に登場する正規表現である.regex文字列内の反斜め\記号は,追加の反斜めを使用して変換する必要があります.例えば,\dは正規式\dを代表します.

また会おう str.contains str.substring

str.pos

戻るsource文字列に最初に登場するstr文字列の位置が表示されなければ,naは返されます.

str.pos(source, str)

返した値 str文字列はsource文字列の位置は

パラメータ

  • source(series string) ソース文字列
  • str(series string) 検索する子文字列.

コメント文字列インデックスは0から始まる.

また会おう str.contains str.match str.substring

str.replace

この文字列は N + 1 番目の文字列を返します.target文字列や以前にもあったものtarget文字列はreplacementこの文字列は,occurrence中間指定. N は,代用するターゲット文字列がソース文字列に表示されるマッチングインデックスである.

str.replace(source, target, replacement, occurrence)

var source = "EXCHANGE1:SYMBOL1 / EXCHANGE1:SYMBOL2"

// Replace first occurrence of "EXCHANGE1" with "EXCHANGE2" replacement string
var newSource = str.replace(source, "EXCHANGE1",  "EXCHANGE2", 0)

if barstate.islastconfirmedhistory
    // Display "EXCHANGE2:SYMBOL1 / EXCHANGE1:SYMBOL2"
    runtime.log(newSource)

返した値文字列が処理されています

パラメータ

  • source(series string) ソース文字列
  • target(series string) 文字列を入れ替えました
  • replacement(series string) 挿入する文字列は,ターゲット文字列ではなく,
  • occurrence(series int) 代替するターゲット文字列は,ソース文字列に表示されるマッチングインデックスである.最初のマッチングインデックスは0から始まる.オプションである.デフォルト値は0である.

また会おう str.replace_all str.match

str.replace_all について

文字列を入れ替えて,ソース文字列に現れるたびに目標文字列を入れ替える.

str.replace_all(source, target, replacement)

返した値文字列が処理されています

パラメータ

  • source(series string) ソース文字列
  • target(series string) 文字列を入れ替えました
  • replacement(series string) 対象文字列が表示されるたびに,文字列が替わります.

str.split

文字列を子文字列の配列に分割し,配列IDを返します.

str.split(string, separator)

返した値文字列の行列のIDは、

パラメータ

  • string(series string) ソース文字列
  • separator(series string) 各子文字列を分離する文字列.

str.tostring

str.tostring(value)
str.tostring(value, format)
str.tostring(value[])
str.tostring(value[], format)

返した値 value参数の文字列が表示される形式は, もしvalue引数は文字列で,元のように返します. どこにいるのかvalueNa のとき,関数は文字列 NaN を返します.

パラメータ

  • value(series int/float/bool/string/int[]/float[]/bool[]/string[]) の要素が文字列の値または配列IDに変換される.
  • format(シリーズ文字列) フォーマット文字列. このフォーマットを受け入れます.* 定数: format.mintick, format.percent, format.volume. オプション. デフォルト値は #.##########.

コメント浮点値のフォーマットも必要に応じてこれらの値に四五を入れます.例えば,str.tostring ((3.99,#) は4を返します. 0の後ろを表示するには,#の代わりに0を使用してください. format.mintick を使用すると,この値は,syminfo.mintick で除ける余数なしの最も近い数に4を5にします. 返される文字列には0が続く. x 参数が文字列である場合,同じ文字列値を返す. Bool 型パラグラムは true true または false false を返します. x が na であれば,関数は NaN を返します.

color.new

機能の色は,透明性を指定し,与えられた色に適用します.

color.new(color, transp)

plot(close, color=color.new(color.red, 50))

返した値透明性のある色はあります.

パラメータ

  • color(シリーズの色)
  • transp(series int/float) 使用可能な値は0 (不透明) から100 (見えない) までです

コメント非常数のパラメータ (例えば,simple,input,またはseries) を使用すると,脚本設定/スタイルラベルページに表示される色に影響されます.詳細については,ユーザーマニュアルを参照してください.

color.rgb

RGB色モデルを使用して透明性のある新しい色を作成します.

color.rgb(red, green, blue, transp)

plot(close, color=color.rgb(255, 0, 0, 50))

返した値透明性のある色はあります.

パラメータ

  • red(series int/float) 赤色. 可能な値は0から255である.
  • green(series int/float) 緑色.可能な値は0から255である.
  • blue(series int/float) 青色. 可能な値は0から255である.
  • transp(series int/float) 選択可能です。色透明。可能な値は0 (非透明) から100 (透明) まで。デフォルト値は0である。

コメント非常数のパラメータ (例えば,simple,input,またはseries) を使用すると,脚本設定/スタイルラベルページに表示される色に影響されます.詳細については,ユーザーマニュアルを参照してください.

実行時間

runtime.debug

コントロールで変数情報を印刷します.

FMZ PINEは,FBの言語で機能している.runtime.debug(value)参数1つしかない.

runtime.log

ブログのコンテンツを輸出する.

FMZ PINEは,FBの言語で機能している.runtime.log(1, 2, 3, close, high, ...)複数のパラメータを転送できます.

runtime.error

実行時にエラーが発生し,message参数で指定されたエラーメッセージ.

runtime.error(message)

パラメータmessage (series string) エラーメッセージ.

インプット

インプット

インプットをスクリプト設定のインプットラベルページに追加し,スクリプトユーザーに設定オプションを提供することを許可します. この機能は,自動でdefvalのパラメータタイプを検出し,対応するインプットプラグインを使用します.

input(defval, title, tooltip, inline, group)
input(defval, title, inline, group, tooltip)

i_switch = input(true, "On/Off")     // 设置true,默认勾选
plot(i_switch ? open : na)

i_len = input(7, "Length")
i_src = input(close, "Source")       // 下拉框,默认选择close
plot(ta.sma(i_src, i_len))

i_col = input(color.red, "Plot Color")
plot(close, color=i_col)

i_text = input("Hello!", "Message")
runtime.log(i_text)

返した値変数の値を入力します.

パラメータ

  • defval(const int/float/bool/string/color or source-type built-ins) スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を設定し,スクリプトユーザが変更することができます. ソースタイプ内蔵関数は,計算ソースの指定された内蔵一連の浮点変数を指定します:closehlc3ほら
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.

コメントinput関数の返した値は常に変数に割り当てられる.上記の例を参照.

また会おう input.bool input.color input.int input.float input.string input.timeframe input.source

input.source

インプットをスクリプト設定のインプットラベルページに追加し,スクリプトユーザーに設定オプションを提供することを許可します. この機能には,ユーザが計算源,例えばclose,hl2などを選択できるようにドロップダウンメニューを追加します. スクリプトに1つのインプット.ソース (input.source) 呼び出しのみが含まれている場合,ユーザはグラフ上の別の指標の出力をソースとして選択することもできます.

input.source(defval, title, tooltip, inline, group)

i_src = input.source(close, "Source")
plot(i_src)

返した値変数の値を入力します.

パラメータ

  • defval(series int/float) は,スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を指定し,ユーザが変更することができます.
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.

コメント input.source函数的结果总是应该分配给一个变量,见上面的例子。

また会おう input.bool input.int input.float input.string input.timeframe input.color input

input.string

Input をスクリプト設定の入力オプションタブに追加します. この機能は,文字入力フィールドをスクリプトの入力に追加します.

input.string(defval, title, options, tooltip, inline, group, confirm)

i_text = input.string("Hello!", "Message")
runtime.log(i_text)

返した値変数の値を入力します.

パラメータ

  • defval(const string) スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を指定し,ユーザが変更できる.options参数と組み合わせた場合,この値は,そのうちの1つである必要があります.
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • options[...]) 選択可能なオプションのリスト.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.
  • confirm(const bool) true とすると,指標がグラフに追加される前に入力値を確認するように要求されます.デフォルト値は false です.

コメント input.string函数的结果总是应该分配给一个变量,见上面的例子。

また会おう input.bool input.int input.float input.timeframe input.source input.color input

input.bool

インプットをスクリプト設定の入力ラベルページに追加します.これはスクリプトユーザーに設定オプションを提供することを可能にします.この機能はスクリプトの入力に再選択ラベルを追加します.

input.bool(defval, title, tooltip, inline, group, confirm)

i_switch = input.bool(true, "On/Off")
plot(i_switch ? open : na)

返した値変数の値を入力します.

パラメータ

  • defval(const bool) は,スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を指定し,ユーザが変更することができます.
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.
  • confirm(const bool) true とすると,指標がグラフに追加される前に入力値を確認するように要求されます.デフォルト値は false です.

コメント input.bool函数的结果总是应该分配给一个变量,见上面的例子。

また会おう input.int input.float input.string input.timeframe input.source input.color input

input.int

インプットをスクリプト設定のインプットラベルページに追加します.これはスクリプトユーザーに設定オプションを提供することを可能にします.この機能は,インプットのインプットに整数のインプットフィールドを追加します.

input.int(defval, title, minval, maxval, step, tooltip, inline, group, confirm) 
input.int(defval, title, options, tooltip, inline, group, confirm)

i_len1 = input.int(10, "Length 1", minval=5, maxval=21, step=1)
plot(ta.sma(close, i_len1))

i_len2 = input.int(10, "Length 2", options=[5, 10, 21])
plot(ta.sma(close, i_len2))

返した値変数の値を入力します.

パラメータ

  • defval(const int) は,スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を設定し,スクリプトユーザが変更できる.options参数と組み合わせた場合,この値は,そのうちの1つである必要があります.
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • minval(const int) 入力変数の最小可能値です。オプションです。
  • maxval(const int) 入力変数の最大可能値です。オプションです。
  • step(const int) 入力のステップ長値を増やしたり減らしたりする. ※オプション. ※デフォルト値は 1 です.
  • options(tuple of const int values: [val1, val2,...]) 引き下ろしメニューから選択したオプションリスト,コマで区切られ,括弧で括り:[val1, val2,...]................................................................minvalmaxvalそしてstepパラメータは.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.
  • confirm(const bool) true とすると,指標がグラフに追加される前に入力値を確認するように要求されます.デフォルト値は false です.

コメント input.int函数的结果总是应该分配给一个变量,见上面的例子。

また会おう input.bool input.float input.string input.timeframe input.source input.color input

input.float

インプットをスクリプト設定のインプットラベルページに追加する.これは,スクリプトユーザーに設定オプションを提供することを可能にする.この機能は,浮点インプットフィールドをスクリプトのインプットに追加する.

input.float(defval, title, minval, maxval, step, tooltip, inline, group, confirm)
input.float(defval, title, options, tooltip, inline, group, confirm)

i_angle1 = input.float(0.5, "Sin Angle", minval=-3.14, maxval=3.14, step=0.02)
plot(math.sin(i_angle1) > 0 ? close : open, "sin", color=color.green)

i_angle2 = input.float(0, "Cos Angle", options=[-3.14, -1.57, 0, 1.57, 3.14])
plot(math.cos(i_angle2) > 0 ? close : open, "cos", color=color.red)

返した値変数の値を入力します.

パラメータ

  • defval(const int/float) は,スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を設定し,スクリプトユーザが変更できる.options参数と組み合わせた場合,この値は,そのうちの1つである必要があります.
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • minval(const int/float) 入力変数の最小可能値。オプション。
  • maxval(const int/float) 入力変数の最大可能値。オプション。
  • step(const int/float) 入力のステップ長値を増やしたり減らしたりします. ※オプションです. ※デフォルト値は 1 です.
  • options(tuple of const int/float values: [val1, val2,...]) 引き下げメニューから選択したオプションリストを,コマで区切って括弧で括り:[val1, val2,...];;この参数を使用すると使用できません.minvalmaxvalそしてstepパラメータは.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.
  • confirm(const bool) true とすると,指標がグラフに追加される前に入力値を確認するように要求されます.デフォルト値は false です.

コメント input.float函数的结果总是应该分配给一个变量,见上面的例子。

また会おう input.bool input.int input.string input.timeframe input.source input.color input

input.color

インプットをスクリプト設定のインプットラベルページに追加し,スクリプトユーザーに設定オプションを提供することを許可します. この機能は色選択器を追加し,ユーザーが色板または16桁の設定値から色と透明性を選択できるようにします.

input.color(defval, title, tooltip, inline, group, confirm) 

i_col = input.color(color.red, "Plot Color")
plot(close, color=i_col)

返した値変数の値を入力します.

パラメータ

  • defval(const color) は,スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を指定し,ユーザが変更することができます.
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.
  • confirm(const bool) true とすると,指標がグラフに追加される前に入力値を確認するように要求されます.デフォルト値は false です.

コメント input.color函数的结果总是应该分配给一个变量,见上面的例子。

また会おう input.bool input.int input.float input.string input.timeframe input.source input

input.price

価格入力をスクリプトに追加するタグ設定/タグページを入力するタグを使用します.confirm = trueインタラクティブな入力モードを有効にして,チャートをクリックして価格を選択します.

input.price(defval, title, tooltip, inline, group, confirm) 

price1 = input.price(title="Date", defval=42)
plot(price1)

price2 = input.price(54, title="Date")
plot(price2)

返した値変数の値を入力します.

パラメータ

  • defval(const int/float) は,スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を設定し,ユーザが変更することができます.
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.
  • confirm(const bool) true の場合は,インタラクティブな入力モードを有効にして,指標をグラフに追加するときにグラフをクリックして選択を完了するか,指標を選択し,その後選択を移動して選択を完了します. ※オプション. ※デフォルト値は false です.

コメント2つの関数に対して呼び出されている場合,inlineパラメータが同じパラメータを使用すると,時間入力と価格入力と組み合わせて使用できます.

また会おう input.bool input.int input.float input.string input.resolution input.source input.color input

input.timeframe

インプットがスクリプト設定の入力ラベルページに追加され,スクリプトユーザーに設定オプションを提供することを許可します. この機能は,ドラッグリストを追加し,ユーザーがタイムサイクルセレクターを使用して特定のタイムサイクルを選択し,文字列として戻すことを許可します. セレクターは,ユーザーがグラフのタイムサイクルを使用する可能性のあるタイムサイクルをドラッグメニューに追加したカスタムタイムサイクルを含みます.

input.timeframe(defval, title, options, tooltip, inline, group, confirm)

i_res = input.timeframe('D', "Resolution", options=['D', 'W', 'M'])
s = request.security(syminfo.tickerid, i_res, close)
plot(s)

返した値変数の値を入力します.

パラメータ

  • defval(const string) スクリプトの設定/入力ラベルページで提案された入力変数のデフォルト値を指定し,ユーザが変更できる.options参数と組み合わせた場合,この値は,そのうちの1つである必要があります.
  • title(const string) 入力されたヘッタール. 指定していない場合は,変数名を入力されたヘッタールとして使用します. 指定したヘッタールが空っぽのヘッタールであれば,名前は空の文字列になります.
  • options(tuple of const string values: [val1, val2,...]) 選択可能なオプションのリスト.
  • tooltip(const string) この文字列は,ツール提示のアイコンの上にマウスが停まっているときにユーザーに表示されます.
  • inline(const string) 一行に同じ参数を使用したすべての入力呼び出しを組み合わせます.参数として使用された文字列は表示されません.それは同じ行に属する入力だけを識別します.
  • group(const string) 同じ集合参数文字列を使用して,すべての入力の上に標本を作成します. この文字列は標本のテキストとしても使用されます.
  • confirm(const bool) true とすると,指標がグラフに追加される前に入力値を確認するように要求されます.デフォルト値は false です.

コメント input.timeframe函数的结果总是应该分配给一个变量,见上面的例子。

また会おう input.bool input.int input.float input.string input.source input.color input

input.integer

暫定

input.resolution

暫定

さん

ta.alma

Arnaud Legoux 移動平均線. これは,ガース分布を移動平均値の重みとして使用する.

ta.alma(series, length, offset, sigma) 
ta.alma(series, length, offset, sigma, floor) 

plot(ta.alma(close, 9, 0.85, 6))

// same on pine, but much less efficient
pine_alma(series, windowsize, offset, sigma) =>
    m = offset * (windowsize - 1)
    //m = math.floor(offset * (windowsize - 1)) // Used as m when math.floor=true
    s = windowsize / sigma
    norm = 0.0
    sum = 0.0
    for i = 0 to windowsize - 1
        weight = math.exp(-1 * math.pow(i - m, 2) / (2 * math.pow(s, 2)))
        norm := norm + weight
        sum := sum + series[windowsize - i - 1] * weight
    sum / norm
plot(pine_alma(close, 9, 0.85, 6))

返した値アルノ・レグオ 移動平均線

パラメータ

  • series(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)
  • offset(simple int/float) 制御のスムーズさ (<<<1>) と応答性 (<<<<<<<0>) のバランスを取る.
  • sigma(simple int/float) ALMAの滑らかさを変更する.シグマが大きいほど,ALMAが滑らかになる.
  • floor(simple bool) 選択可能なパラメータ.ALMAを計算する前に,偏差量計算が下限になるかどうかを指定する.デフォルト値はfalseである.

また会おう ta.sma ta.ema ta.rma ta.wma ta.vwma ta.swma

ta.sma

sma は移動平均値,つまりxの最後のy値を y で割る.

ta.sma(source, length) 

plot(ta.sma(close, 15))

// same on pine, but much less efficient
pine_sma(x, y) =>
    sum = 0.0
    for i = 0 to y - 1
        sum := sum + x[i] / y
    sum
plot(pine_sma(close, 15))

返した値 length線が戻るsource移動平均線は,

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)

また会おう ta.ema ta.rma ta.wma ta.vwma ta.swma ta.alma

ta.cog

cog (重点) は,統計学とフィボナッチ金比例に基づいた指標である.

ta.cog(source, length) 

plot(ta.cog(close, 10))

// the same on pine
pine_cog(source, length) =>
    sum = math.sum(source, length)
    num = 0.0
    for i = 0 to length - 1
        price = source[i]
        num := num + price * (i + 1)
    -num / sum

plot(pine_cog(close, 10))

返した値集中する

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)

また会おう ta.stoch

ta.dev

衡量系列与其ta.sma之间的差异

ta.dev(source, length) 

plot(ta.dev(close, 10))

// the same on pine
pine_dev(source, length) =>
    mean = ta.sma(source, length)
    sum = 0.0
    for i = 0 to length - 1
        val = source[i]
        sum := sum + math.abs(val - mean)
    dev = sum/length
plot(pine_dev(close, 10))

返した値 length線が戻るsource偏りがある.

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)

また会おう ta.variance ta.stdev

ta.stdev

ta.stdev(source, length, biased) 

plot(ta.stdev(close, 5))

//the same on pine
isZero(val, eps) => math.abs(val) <= eps

SUM(fst, snd) =>
    EPS = 1e-10
    res = fst + snd
    if isZero(res, EPS)
        res := 0
    else
        if not isZero(res, 1e-4)
            res := res
        else
            15

pine_stdev(src, length) =>
    avg = ta.sma(src, length)
    sumOfSquareDeviations = 0.0
    for i = 0 to length - 1
        sum = SUM(src[i], -avg)
        sumOfSquareDeviations := sumOfSquareDeviations + sum * sum

    stdev = math.sqrt(sumOfSquareDeviations / length)
plot(pine_stdev(close, 5))

返した値標準差

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)
  • biased(series bool) は,どの推定値を使用すべきかを指定します. ※オプションです. ※デフォルト値は true です.

コメントもしbiasedtrue の場合,関数は全体全体に対する偏差推定を使用して計算し,false の場合 - サンプルに対する偏差のない推定を用います.

また会おう ta.dev ta.variance

ta.ema

ema関数は指数加重移動平均線を返します. emaでは,加重因子は指数下降を示します. これは,次の式を使用して計算されます:EMA = alpha * source + (1 - alpha) * EMA[1], alpha = 2 / (length + 1) です.

ta.ema(source, length) 

plot(ta.ema(close, 15))

//the same on pine
pine_ema(src, length) =>
    alpha = 2 / (length + 1)
    sum = 0.0
    sum := na(sum[1]) ? src : alpha * src + (1 - alpha) * nz(sum[1])
plot(pine_ema(close,15))

返した値 source移動平均線の指数,alpha = 2 / (長さ + 1) ー

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(simple int) K線数 (長さ)

コメントこの変数/関数を使用すると指標が再描画される可能性があります.

また会おう ta.sma ta.rma ta.wma ta.vwma ta.swma ta.alma

ta.wma

Wma 関数は返しますlengthK線がsourceWMAでは,加重因子は算数級数で減算される.

ta.wma(source, length) 

plot(ta.wma(close, 15))

// same on pine, but much less efficient
pine_wma(x, y) =>
    norm = 0.0
    sum = 0.0
    for i = 0 to y - 1
        weight = (y - i) * y
        norm := norm + weight
        sum := sum + x[i] * weight
    sum / norm
plot(pine_wma(close, 15))

返した値 length線が戻るsource体重移動平均線は,

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)

また会おう ta.sma ta.ema ta.rma ta.vwma ta.swma ta.alma

ta.swma

固定長さの対称加重移動平均線:4.重量: [1/6,2 / 6,2 / 6,1 / 6].

ta.swma(source)

plot(ta.swma(close))

// same on pine, but less efficient
pine_swma(x) =>
    x[3] * 1 / 6 + x[2] * 2 / 6 + x[1] * 2 / 6 + x[0] * 1 / 6
plot(pine_swma(close))

返した値対称加重移動平均線は,

パラメータ

  • source(series int/float) ソースシリーズ.

また会おう ta.sma ta.ema ta.rma ta.wma ta.vwma ta.alma

ta.hma

hma関数は船体移動平均HMAを返します.

ta.hma(source, length)

src = input(defval=close, title="Source")
length = input(defval=9, title="Length")
hmaBuildIn = ta.hma(src, length)
plot(hmaBuildIn, title="Hull MA", color=#674EA7)

返した値Hull Moving Average を返します. Hull Moving Average を返します.

パラメータ

  • source(series int/float) 実行される一連の値.
  • length簡単な int 文字列数

また会おう ta.ema ta.rma ta.wma ta.vwma ta.sma

ta.rma

RSIで使用される移動平均線である. これは指数加重移動平均線で,alpha加重値は =1/長さである.

ta.rma(source, length)

plot(ta.rma(close, 15))

//the same on pine
pine_rma(src, length) =>
  alpha = 1/length
  sum = 0.0
  sum := na(sum[1]) ? ta.sma(src, length) : alpha * src + (1 - alpha) * nz(sum[1])
plot(pine_rma(close, 15))

返した値 source移動平均線は,x=1で,x=1で,x=1で,x=1で,x=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1で,y=1でlength

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(simple int) K線数 (長さ)

また会おう ta.sma ta.ema ta.wma ta.vwma ta.swma ta.alma ta.rsi

ta.rsi

相対強度指数. それは最後の使用です.lengthK線でsource変化が起こっていますta.rma()計算した.

ta.rsi(source, length)

plot(ta.rsi(close, 7))

// same on pine, but less efficient
pine_rsi(x, y) => 
    u = math.max(x - x[1], 0) // upward ta.change
    d = math.max(x[1] - x, 0) // downward ta.change
    rs = ta.rma(u, y) / ta.rma(d, y)
    res = 100 - 100 / (1 + rs)
    res

plot(pine_rsi(close, 7))

返した値比較強弱指標 (RSI)

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(simple int) K線数 (長さ)

また会おう ta.rma

ta.tsi

真の強弱指数. これは金融機関の潜在動力の移動平均線を使用する.

ta.tsi(source, short_length, long_length)

返した値真の強弱指数、範囲 [-1,1] の値、

パラメータ

  • source(series int/float) ソースシリーズ.
  • short_length(simple int) 短い長さ.
  • long_length(simple int) 長文字列の長さ

ta.roc

roc (変化率) が表示されるsource値と値の相違です.sourceブログに投稿されたlength値の差は, 公式は100 * change (src, length) / src (length) です.

ta.roc(source, length)

返した値 length線が戻るsource変化の割合は,

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)

ta.range

文字列の最小値と最大値の差を返します.

ta.range(source, length)

返した値序列の最小値と最大値の差である.

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)

ta.macd

MACD (滑らかな異動平均線) は,株価の傾向の強度,方向性,動力,持続時間の変化を明らかにするものである.

ta.macd(source, fastlen, slowlen, siglen) 

[macdLine, signalLine, histLine] = ta.macd(close, 12, 26, 9)
plot(macdLine, color=color.blue)
plot(signalLine, color=color.orange)
plot(histLine, color=color.red, style=plot.style_histogram)

単に1つの値が必要であれば,このような位置表示符_を使用してください.

[_, signalLine, _] = ta.macd(close, 12, 26, 9)
plot(signalLine, color=color.orange)

返した値3つのMACDシリーズ構成要素:MACD線,信号線,直線線.

パラメータ

  • source(series int/float) 実行される一連の値.
  • fastlen(simple int) ショートライン参数
  • slowlen(simple int) 遅い長さの参数.
  • siglen(simple int) シグナル長さのパラメータ.

また会おう ta.sma ta.ema

ta.mode

配列のパターンを返します. 同じ周波数を持つ複数の値がある場合は最小値を返します.

ta.mode(source, length)

返した値序列のパターンは

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)

ta.median

列の中位数を返します.

ta.median(source, length) 

返した値列の中位数である.

パラメータ

  • source(series int/float) 実行される一連の値.
  • length(series int) K線の数 (長さ)

ta.linreg

線形回帰曲線──ユーザが定義した時間帯内で指定した価格に最も一致する線──最小二乗を用いて計算される.この関数の結果は,次の式を用いて計算される:linreg = intercept + slope * (length - 1 - offset),ここで,intercept と slope は使用される.source列の最小二乗を計算する値である.

ta.linreg(source, length, offset) 

返した値線形回帰曲線

パラメータ

  • source(series int/float) ソースシリーズ.
  • length(シリーズ int)
  • offset(simple int) 偏移する

ta.bb

ブリンズ・バンド (Blink Band) とは,技術分析ツールで,証券価格の単純な移動平均線 (SMA) と2つの標準偏差 (正向と負向) の間隔が異なるが,ユーザーの好みに合わせて調整できる一組のラインで定義される.

ta.bb(series, length, mult) 

[middle, upper, lower] = ta.bb(close, 5, 4)
plot(middle, color=color.yellow)
plot(upper, color=color.yellow)
plot(lower, color=color.yellow)

// the same on pine
f_bb(src, length, mult) =>
    float basis = ta.sma(src, length)
    float dev = mult * ta.stdev(src, length)
    [basis, basis + dev, basis - dev]

[pineMiddle, pineUpper, pineLower] = f_bb(close, 5, 4)

plot(pineMiddle)
plot(pineUpper)
plot(pineLower)

返した値ブリン・ベルト.

パラメータ

  • series(series int/float) 実行中の系数

もっと

ウウオヤン取引が同時に行われることを望むなら,

軽い雲JSと同じようなトランザクションも行えますか? ありがとうございました.

リサ20231詳細なドキュメントをありがとうございました.

芸術このPineScriptは,Okexのシミュレーションディスクをプラットフォーム上でどのように使っているのでしょうか?

芸術開発者のプラットフォームに直接コピーして利用できます!

発明者 量化 - 微かな夢PINE言語は単種策のみを行うが,多種策は,python,javascript,c++で設計を書くのがベストである.

発明者 量化 - 微かな夢OKXは特殊なもので,彼らの模擬環境とリアルディスク環境は同じアドレスですが,別の場所では区別されます.

軽い雲OKX模擬盤は使えませんでした.

発明者 量化 - 微かな夢この多様なアーキテクチャの問題は,各取引所のインターフェースが異なるため,インターフェースの周波数制限が異なるため,多くの問題が生じる.

発明者 量化 - 微かな夢雲山さん,この提案をありがとうございました.

軽い雲JSと混同した方が良いと感じて,JSは様々な取引方法により適している.

トレンドハンター販売価格は各品種にわたって行われます.

発明者 量化 - 微かな夢嫌なことをする.

軽い雲素晴らしい,ありがとう,夢大さん.

発明者 量化 - 微かな夢PINE言語の戦略は,一時的に単一品種のみです.

発明者 量化 - 微かな夢この記事へのトラックバック一覧です.

発明者 量化 - 微かな夢ほら,もういいから

発明者 量化 - 微かな夢PINE 模範庫のパラメータは,交換取引所のベースアドレスを設定することができます. 文書の開始: PINE 言語取引庫の模範庫のパラメータ.