Skip to content

prelude

TIP

Prelude 會自動載入到每個腳本中。它的類型和函數都應直接以名稱引用——不要加上命名空間前綴(例如寫 close,不要寫 prelude.close)。

類型

名稱說明
AlertFreqalert() 的觸發頻率常量。
Array<T>類型為 T 的有序、可索引的元素集合。
BarmergeGapsrequest.*() 函數的間隙模式。
BarmergeLookaheadrequest.*() 函數的前瞻模式。
Box方框圖的句柄。
CommissionTypestrategy() 的佣金計算方式。
Currency貨幣代碼(ISO 4217)。
DayOfWeek星期常數。
DefaultQtyTypestrategy() 的預設數量模式。
Direction策略訂單方向。
DividendsFieldrequest.dividends() 的欄位選擇器。
EarningsFieldrequest.earnings() 的欄位選擇器。
Extend線條延伸方向。
FontFamily文字繪圖的字體系列。
Format圖表和標籤的數值格式。
Hlinehline 創建的水平線的句柄。
HlineStyle水平線繪圖的樣式。
Label標籤繪圖的句柄。
LabelStyle標籤繪圖的樣式。
Line畫線句柄。
LineStyle線條繪圖的樣式。
Linefill兩行之間的行填充句柄。
Locationplot_shape() 和 plot_char() 的垂直位置。
Map<K, V>K 類型的鍵映射到 V 類型值的鍵值存儲。
Matrix<T>以行優先順序存儲的 T 類型元素的二維表。
OcaType策略訂單的 OCA(一單取消全部)行為。
Plotplot 創建的繪圖的句柄。
PlotDisplay顯示繪圖選項(例如全部、無、僅價格)。
PlotSimpleDisplay控制繪圖顯示的價格比例和圖表。
PlotStyle圖表系列的繪圖樣式。
Polyline多段線繪圖的句柄。
Position表格和標籤在圖表面板上的位置。
ScaleTypeindicator() 和 strategy() 的價格座標軸掛載模式。
Session交易時段類型。
Shapeplot_shape() 繪製的圖形。
Size繪圖和標籤的尺寸常量。
SortOrder陣列和矩陣操作的排序方向。
SplitsFieldrequest.splits() 的欄位選擇器。
Table表格繪圖的句柄。
TextFormat文字格式旗標(粗體、斜體)。可使用 + 組合多個值。
TextHAlign文字水平對齊方式。
TextVAlign文字垂直對齊方式。
TextWrap文字換行模式。
Xloc繪圖物件的 X 軸座標模式。
Yloc標籤的 Y 軸座標模式。

屬性

ask

類型: series float

當前 K 線的最優賣價(ask)。僅在 1T(tick)週期可用,其他週期返回 na


bar_index

類型: series int

當前 bar 的索引。編號從零開始,因此圖表上第一個(最舊的)bar 的索引為 0。每個後續 bar 的值都會增加 1。使用 bar_index[1] 引用前一個 bar 的索引。


bid

類型: series float

當前 K 線的最優買價(bid)。僅在 1T(tick)週期可用,其他週期返回 na


close

類型: series float

當前 bar 的收盤價。在歷史 bars 上,這是 bar 收盤時的最後交易價格。在實時 bars 上,這是當前的最後交易價格,並將發生變化,直到 bar 收盤。


day_of_month

類型: int

傳回交易品種時區中當前 bar 開市時間的月份 (1-31) 中的某一天。


day_of_week

類型: DayOfWeek

傳回當前 bar 的開放時間是星期幾。


high

類型: series float

當前 bar 期間達到的最高價格。在歷史 bars 上,這是最高交易價格。在實時 bars 上,該值可能會隨着新高的出現而增加。


hl2

類型: series float

高價和低價的中點:(high + low) / 2。也稱為中位價格。可用於簡單估算 bar 的中心價格。


hlc3

類型: series float

典型價格:(high + low + close) / 3。一種常見的價格代理,對收盤價和高低範圍的權重相等。常用於體積加權計算。


hlcc4

類型: series float

加權收盤價:(high + low + close + close) / 4。對收盤價給予額外權重,佔總權重的 50%。


hour

類型: int

傳回符號時區中當前 bar 開放時間的小時 (0-23)。


last_bar_index

類型: series int

圖表上最後一個(最新)bar 的索引。與 bar_index 結合,這可用於確定從當前 bar 到圖表末尾的距離,例如,last_bar_index - bar_index 給出剩餘的 bars。


last_bar_time

類型: series int

圖表上最後一個 bar 的時間戳,採用 UNIX 格式(自 1970-01-01 00:00:00 UTC 以來的毫秒數)。對於確定圖表的時間範圍或相對於圖表結束的基於時間的計算很有用。


low

類型: series float

當前 bar 期間達到的最低價格。在歷史 bars 上,這是最低交易價格。在實時 bars 上,該值可能會隨着新低的出現而減小。


minute

類型: int

傳回交易品種時區中當前 bar 開市時間的分鐘 (0-59)。


month

類型: int

傳回交易品種時區中當前 bar 開放時間的月份 (1-12)。


ohlc4

類型: series float

平均價格:(open + high + low + close) / 4。所有四個 OHLC 價格的算術平均值,代表 bar 的整體價格活動。


open

類型: series float

當前 bar 的開盤價。這是 bar 開盤時的第一個交易價格。在實時 bars 上,一旦 bar 打開,該值就固定。


second

類型: int

傳回交易品種時區中當前 bar 開放時間的秒數 (0-59)。


time

類型: series int

bar 左邊緣的 UNIX 時間戳。該值以 Unix 紀元的毫秒數表示,並且在當前實時 bar 仍在形成時不會漂移。


time_close

類型: series int

bar 右邊緣的 UNIX 時間戳。在基於時間的圖表上,這是活躍 bar 的預定收盤價。


time_now

類型: series int

UNIX 格式的當前實際時間(自 1970-01-01 00:00:00 UTC 以來的毫秒數)。與傳回 bar 時間的 time 不同,time_now 傳回實際的當前時間並在實時 bars 上持續更新。


time_tradingday

類型: series int

傳回當前 bar 所屬交換會話的 UTC 午夜標記。對於共享同一交易時段的所有 bars,結果保持相同,這在交易跨日曆邊界時非常方便。


volume

類型: series float

當前 bar 的交易量。代表交易的股票或合約總數。如果交易品種的成交量資料不可用,則可能為 na


week_of_year

類型: int

傳回符號時區中當前 bar 開放時間的一年中的第幾周 (1-53)。


year

類型: int

傳回符號時區中當前 bar 開放時間的年份。

函數

alert

navi
alert(message: series string, freq: input AlertFreq = AlertFreq.OncePerBar)

使用給定的消息和頻率創建警報。

參數

名稱類型預設值說明
messageseries string
freqinput AlertFreqAlertFreq.OncePerBar

alert_condition

navi
alert_condition(
    condition: series bool,
    title: const string,
    message: const string
  )

創建可用於根據布爾條件觸發警報的警報條件。

參數

名稱類型預設值說明
conditionseries bool
titleconst string
messageconst string

bar_color

navi
bar_color(
    color: series color,
    offset: simple int = 0,
    editable: input bool = true,
    show_last: input int = na,
    title: const string = na,
    display: input PlotSimpleDisplay
  )

設定圖表上價格 bars 的顏色。每個 bar 可以有自己的顏色,允許根據指示器條件進行動態着色。

參數

名稱類型預設值說明
colorseries color應用於 bar 的顏色。使用 na 保留默認顏色。
offsetsimple int0將顏色向左(負)或右(正)移動指定數量的 bars。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯該設定。
show_lastinput intna如果設定,則僅對最後 N 個 bars 着色。
titleconst stringna標題顯示在樣式對話框中。
displayinput PlotSimpleDisplay控制顏色可見的位置。

bg_color

navi
bg_color(
    color: series color,
    offset: simple int = 0,
    editable: input bool = true,
    show_last: input int = na,
    title: const string = na,
    display: input PlotSimpleDisplay = display.ALL,
    force_overlay: const bool = na
  )

用指定的顏色填充圖表 bars 的背景。用於突出顯示圖表上的特定條件或時間段。

參數

名稱類型預設值說明
colorseries color背景顏色。使用 na 表示透明。
offsetsimple int0將背景顏色向左(負)或右(正)移動指定數量的 bars。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯該設定。
show_lastinput intna如果設定,則僅填充最後 N 個 bars。
titleconst stringna標題顯示在樣式對話框中。
displayinput PlotSimpleDisplaydisplay.ALL控制背景可見的位置。
force_overlayconst boolna如果為 true,力將顯示在主圖表窗格上。

bool

x 值轉換為 bool 值。

參數

名稱類型預設值說明
xint

返回: bool — 如果 x 是 nafalse 或等於 0int/float 值,則為 falsetrue 對於所有其他值。

將浮點數轉換為布爾值;如果 na 或零則傳回 false,否則傳回 true。

參數

名稱類型預設值說明
xfloat

返回: bool

將布爾值轉換為布爾值;如果 na 傳回 false,否則傳回該值。

參數

名稱類型預設值說明
xbool

返回: bool

將任意類型的值轉換為bool;如果 na 傳回 false,否則傳回 true。

參數

名稱類型預設值說明
xT

返回: bool


box

navi
box(x: Box): Box

將 na 轉換為盒子類型。對於初始化稍後將分配的框變量很有用。

參數

名稱類型預設值說明
xBox

返回: Box


color

navi
color(x: color): color

將 na 投射為顏色

參數

名稱類型預設值說明
xcolor

返回: color


day_of_month

navi
day_of_month(timestamp: int, timezone: string = syminfo.timezone): int

從指定時區的 UNIX 時間戳中提取月份中的日期 (1-31)。

參數

名稱類型預設值說明
timestampintUNIX 時間戳(以毫秒為單位)。
timezonestringsyminfo.timezone用於解釋的時區。默認為符號的時區。

返回: int


day_of_week

navi
day_of_week(timestamp: int, timezone: string = syminfo.timezone): DayOfWeek

從指定時區的 UNIX 時間戳中提取星期幾。

參數

名稱類型預設值說明
timestampintUNIX 時間戳(以毫秒為單位)。
timezonestringsyminfo.timezone用於解釋的時區。默認為符號的時區。

返回: DayOfWeek — 1(週日)至 7(週六)。


fill

用純色填充兩條水平線之間的區域。對於創建視覺區域(例如超買/超賣區域)很有用。

參數

名稱類型預設值說明
hline1Hline第一個水平線句柄(來自 hline)。
hline2Hline第二個水平線句柄(來自 hline)。
colorseries colorcolor.BLUE填充顏​​色。
titleconst stringna標題顯示在樣式對話框中。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯填充。
fill_gapsconst boolfalse如果為真,則填補資料中的空白。
displayinput PlotSimpleDisplaydisplay.ALL控制填充的可見位置。

用純色填充兩個圖之間的區域。對於可視化兩個系列之間的差異或分佈很有用。

參數

名稱類型預設值說明
plot1Plot第一個繪圖句柄(來自 plot)。
plot2Plot第二個繪圖句柄(來自 plot)。
colorseries colorcolor.BLUE填充顏​​色。
titleconst stringna標題顯示在樣式對話框中。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯填充。
show_lastinput intna如果設定,則僅填充最後 N 個 bars。
fill_gapsconst boolfalse如果為真,則填補資料中的空白。
displayinput PlotSimpleDisplaydisplay.ALL控制填充的可見位置。

用垂直漸變填充兩個圖之間的區域。漸變從 top_value 處的 top_color 過渡到 bottom_value 處的 bottom_color,從而根據價格水平創建平滑的顏色過渡。

參數

名稱類型預設值說明
plot1Plot第一個繪圖句柄(來自 plot)。
plot2Plot第二個繪圖句柄(來自 plot)。
top_valueseries float應用頂部顏色的價格水平。
bottom_valueseries float應用底部顏色的價格水平。
top_colorseries colorcolor.BLUE漸變頂部的顏色。
bottom_colorseries color#3a3c42漸變底部的顏色。
titleconst stringna標題顯示在樣式對話框中。
displayinput PlotSimpleDisplaydisplay.ALL控制填充的可見位置。
fill_gapsconst boolfalse如果為真,則填補資料中的空白。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯填充。

fixnan

navi
fixnan(value: series T): series T

na 值替換為系列中最後一個非 na 值。延續最新的有效值,有效“填補”資料空白。如果尚未看到有效值,則傳回 na。對於保持偶爾缺失值的系列的連續性很有用。

參數

名稱類型預設值說明
valueseries T要處理的系列值。

返回: series T — 當前值(如果不是 na),否則為最新的非 na 值,或者 na(如果尚未看到有效值)。


float

將 na 強制轉換為浮動

參數

名稱類型預設值說明
xfloat

返回: float

將 int 轉換為 float。

參數

名稱類型預設值說明
xint

返回: float


hline

navi
hline(
    price: input float,
    title: const string = na,
    color: input color = color.BLUE,
    linestyle: input HlineStyle = HlineStyle.Dashed,
    linewidth: input int = 1,
    editable: input bool = true,
    display: input PlotSimpleDisplay = display.ALL
  ): Hline

在整個圖表上以固定價格水平繪製一條水平線。與 plot 不同,價格必須是常量或傳入值,而不是序列。

參數

名稱類型預設值說明
priceinput float繪製線的價格水平。
titleconst stringna標題顯示在樣式對話框中。
colorinput colorcolor.BLUE線條顏色。
linestyleinput HlineStyleHlineStyle.Dashed線條樣式:hLineStyle.SolidhLineStyle.DashedhLineStyle.Dotted
linewidthinput int1線條的寬度(以像素 (1-4) 為單位)。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯該線。
displayinput PlotSimpleDisplaydisplay.ALL控制線的可見位置。

返回: Hline — 可與 fill 一起使用的 hline 句柄。


hour

navi
hour(timestamp: int, timezone: string = syminfo.timezone): int

從指定時區的 UNIX 時間戳中提取小時 (0-23)。

參數

名稱類型預設值說明
timestampintUNIX 時間戳(以毫秒為單位)。
timezonestringsyminfo.timezone用於解釋的時區。默認為符號的時區。

返回: int


indicator

navi
indicator(
    title: const string,
    shorttitle: const string = na,
    overlay: const bool = false,
    format: const Format = Format.Inherit,
    precision: const int = na,
    scale: const ScaleType = na,
    max_bars_back: const int = na,
    timeframe: const string = na,
    timeframe_gaps: const bool = true,
    explicit_plot_zorder: const bool = false,
    max_lines_count: const int = 50,
    max_labels_count: const int = 50,
    max_boxes_count: const int = 50,
    calc_bars_count: const int = na,
    max_polylines_count: const int = 50,
    dynamic_requests: const bool = true,
    behind_chart: const bool = true
  )

將腳本指定為指標並設定與指標相關的屬性。

參數

名稱類型預設值說明
titleconst string腳本的標題。當不使用 shorttitle 參數時,它會顯示在圖表上,並在發佈腳本時成為出版物的默認標題。
shorttitleconst stringna腳本在圖表上的顯示名稱。如果指定,它將替換大多數圖表相關窗口中的 title 參數。
overlayconst boolfalse如果為 true,則如果用户將腳本直接添加到圖表,則腳本的視覺效果將顯示在主圖表窗格上;如果用户將腳本應用到該腳本,則腳本的視覺效果將顯示在另一個腳本的窗格中。如果為 false,則腳本的視覺效果將顯示在單獨的窗格中。
formatconst FormatFormat.Inherit指定腳本顯示值的格式。可能的值:Format.InheritFormat.PriceFormat.VolumeFormat.Percent。選修的。
precisionconst intna指定腳本顯示值的浮點後的位數。必須是不大於 16 的非負整數。如果 format 設定為 Format.Inherit 並指定 precision,則格式將設定為 Format.Price。當函數的 format 參數使用 Format.Volume 時,precision 參數不會影響結果,因為 Format.Volume 定義的小數精度規則會取代其他精度設定。選修的。默認值繼承自圖表符號的精度。
scaleconst ScaleTypena使用的價格等級。可能的值:scale.rightscale.leftscale.nonescale.none 值只能與 overlay = true 結合使用。選修的。默認情況下,腳本使用與圖表相同的比例。使用 scale_type 類型。
max_bars_backconst intna腳本為每個變量和函數保留的歷史緩衝區的長度,它確定可以使用 [] 歷史引用運算符引用多少個過去的值。
timeframeconst stringna向簡單腳本添加多時間範圍功能。
timeframe_gapsconst booltrue指定當時間範圍高於圖表的時間範圍時指標值如何在圖表 bars 上顯示。如果是 true,則僅當較高的 timeframe 值可用時,值才會出現在圖表 bar 上,否則傳回 na (因此會出現“間隙”)。使用 false 時,原本存在的間隙將被傳回的最新已知值填充,從而避免使用 na 值。選修的。默認為 true
explicit_plot_zorderconst boolfalse指定腳本的繪圖、填充和線條的渲染順序。如果是 true,則按照腳本代碼中出現的順序繪製繪圖,每個較新的繪圖都繪製在之前的繪圖上方。這僅適用於 plot*() 函數、fillhline
max_lines_countconst int50最後顯示的 line 繪圖的數量。可能的值:1-500。計數為近似值;可能會顯示多於指定數量的繪圖。
max_labels_countconst int50最後顯示的 label 繪圖的數量。可能的值:1-500。計數為近似值;可能會顯示多於指定數量的繪圖。
max_boxes_countconst int50最後顯示的 box 繪圖的數量。可能的值:1-500。計數為近似值;可能會顯示多於指定數量的繪圖。
calc_bars_countconst intna將腳本的初始計算限制為最後指定的 bars 數量。默認值為 na,在這種情況下,腳本將在所有可用的 bars 上執行。
max_polylines_countconst int50最後顯示的 polyline 繪圖的數量。可能的值:1-100。計數為近似值;可能會顯示多於指定數量的繪圖。
dynamic_requestsconst booltrue指定腳本是否可以動態調用 request.*() 命名空間中的函數。條件結構(例如 if)、循環(例如 for)和導出函數的本地範圍內允許動態 request.*() 調用。此外,此類調用允許其許多參數使用“系列”參數。
behind_chartconst booltrue控制所有繪圖和繪圖是顯示在圖表顯示後面(如果 true)還是顯示在圖表顯示前面(如果 false)。該參數僅在overlay參數為true時生效。

示例

navi
// RSI indicator in a separate pane
indicator("My RSI", shorttitle: "RSI", overlay: false);
plot(ta.rsi(close, 14), title: "RSI");
navi
// Overlay indicator on the price chart
indicator("EMA Cross", overlay: true);
plot(ta.ema(close, 9),  color: color.GREEN);
plot(ta.ema(close, 21), color: color.RED);

input

創建在腳本設定 UI 中公開的傳入值。

參數

名稱類型預設值說明
defvalconst int
titleconst stringna
tooltipconst stringna
inlineconst stringna
groupconst stringna
displayconst PlotDisplaydisplay.ALL
activeinput booltrue

返回: input int

創建在腳本設定 UI 中公開的傳入值。

參數

名稱類型預設值說明
defvalconst float
titleconst stringna
tooltipconst stringna
inlineconst stringna
groupconst stringna
displayconst PlotDisplaydisplay.ALL
activeinput booltrue

返回: input float

創建在腳本設定 UI 中公開的傳入值。

參數

名稱類型預設值說明
defvalconst bool
titleconst stringna
tooltipconst stringna
inlineconst stringna
groupconst stringna
displayconst PlotDisplaydisplay.ALL
activeinput booltrue

返回: input bool

創建在腳本設定 UI 中公開的傳入值。

參數

名稱類型預設值說明
defvalconst color
titleconst stringna
tooltipconst stringna
inlineconst stringna
groupconst stringna
displayconst PlotDisplaydisplay.ALL
activeinput booltrue

返回: input color

創建在腳本設定 UI 中公開的傳入值。

參數

名稱類型預設值說明
defvalconst string
titleconst stringna
tooltipconst stringna
inlineconst stringna
groupconst stringna
displayconst PlotDisplaydisplay.ALL
activeinput booltrue

返回: input string

創建在腳本設定 UI 中公開的傳入值。

參數

名稱類型預設值說明
defvalconst expression
titleconst stringna
tooltipconst stringna
inlineconst stringna
groupconst stringna
displayconst PlotDisplaydisplay.ALL
activeinput booltrue

返回: input float


int

將 na 轉換為 int

參數

名稱類型預設值說明
xint

返回: int

將 float 轉換為 int(通過 math.floor 截斷為零)。

參數

名稱類型預設值說明
xfloat

返回: int


label

navi
label(x: Label): Label

將 na 轉換為標籤類型。對於初始化稍後分配的標籤變量很有用。

參數

名稱類型預設值說明
xLabel

返回: Label


library

navi
library(
    title: const string,
    overlay: const bool = false,
    dynamic_requests: const bool = true
  )

將腳本標識為庫的聲明語句。

參數

名稱類型預設值說明
titleconst string圖書館的標題及其標識符。它不能包含空格、特殊字符或以數字開頭。它用作出版物的默認標題,並在另一個腳本使用它時在 import 語句中唯一標識該庫。它也用作圖表上的腳本名稱。
overlayconst boolfalse如果為 true,則庫導出函數生成的任何視覺效果都將繪製在主圖表窗格上。如果是 false,它們將出現在單獨的窗格中。選修的。默認為 false
dynamic_requestsconst booltrue指定庫的導出函數是否可以包含動態 request.*() 調用 - 即放置在條件結構或循環內的調用,或者接受通常需要更簡單限定符的參數的“系列”參數的調用。選修的。默認為 true

line

navi
line(x: Line): Line

將 na 轉換為線型。對於初始化稍後將分配的行變量很有用。

參數

名稱類型預設值說明
xLine

返回: Line


linefill

navi
linefill(x: Linefill): Linefill

將 na 轉換為行填充類型。對於初始化稍後分配的行填充變量很有用。

參數

名稱類型預設值說明
xLinefill

返回: Linefill


max_bars_back

navi
max_bars_back(variable: variableref, num: const int)

通過 [] 歷史引用運算符設定特定變量或內置系列可用的歷史 bars 的最大數量。如果 bars 的實際數量超過最大值,則只有最新的 bars 可用。

參數

名稱類型預設值說明
variablevariableref
numconst int歷史 bars 的最大數量。

minute

navi
minute(timestamp: int, timezone: string = syminfo.timezone): int

從指定時區的 UNIX 時間戳中提取分鐘 (0-59)。

參數

名稱類型預設值說明
timestampintUNIX 時間戳(以毫秒為單位)。
timezonestringsyminfo.timezone用於解釋的時區。默認為符號的時區。

返回: int


month

navi
month(timestamp: int, timezone: string = syminfo.timezone): int

從指定時區的 UNIX 時間戳中提取月份 (1-12)。

參數

名稱類型預設值說明
timestampintUNIX 時間戳(以毫秒為單位)。
timezonestringsyminfo.timezone用於解釋的時區。默認為符號的時區。

返回: int


na

navi
na(value: any): bool

測試 value 是否為 na(不可用)。對於處理資料間隙、系列缺失值或未初始化變量至關重要。

參數

名稱類型預設值說明
valueany要測試的值。可以是任何類型。

返回: bool — 如果值未定義或缺失,則為 true,否則為 false


nz

na 值替換為指定的替換值。如果 source 不是 na,則傳回 source 不變。如果 sourcena,則傳回 replacement。對於確保計算不會傳播 na 值至關重要。

參數

名稱類型預設值說明
sourceT要檢查的值。
replacementT如果 sourcena,則傳回值。

返回: T

na 整數值替換為替換值(默認 0)。當您需要對丟失的整數資料進行數字回退時很有用。

參數

名稱類型預設值說明
sourceint要檢查的整數值。
replacementint0如果 sourcena,則傳回值。默認為 0。

返回: int

na 浮點值替換為替換值(默認 0.0)。當您需要為缺失的價格或計算資料提供數字回退時很有用。

參數

名稱類型預設值說明
sourcefloat要檢查的浮點值。
replacementfloat0如果 sourcena,則傳回值。默認為 0.0。

返回: float

na 顏色值替換為替換值(默認黑色)。當您需要可見的後備顏色來進行條件着色時非常有用。

參數

名稱類型預設值說明
sourcecolor要檢查的顏色值。
replacementcolor#000000如果 sourcena,則傳回值。默認為#000000。

返回: color


plot

navi
plot(
    series: series float,
    title: const string = na,
    color: series color = color.BLUE,
    linewidth: input int = 1,
    style: input PlotStyle = PlotStyle.Line,
    track_price: input bool = false,
    hist_base: input float = 0,
    offset: simple int = 0,
    join: input bool = false,
    editable: input bool = true,
    show_last: input int = na,
    display: input PlotDisplay = display.ALL,
    format: input Format = na,
    precision: input int = na,
    force_overlay: const bool = na,
    linestyle: input PlotStyle = PlotStyle.Line
  ): Plot

在圖表上繪製一系列資料作為可視化表示。支持線條、柱狀圖、面積、柱狀圖等多種樣式。

參數

名稱類型預設值說明
seriesseries float要繪製的一系列值。
titleconst stringna繪圖的標題,顯示在樣式對話框中並作為資料窗口工具提示。
colorseries colorcolor.BLUE繪製元素的顏色。
linewidthinput int1繪製線的寬度,以像素為單位 (1-4)。
styleinput PlotStylePlotStyle.Line繪圖樣式:plot.style_lineplot.style_histogramplot.style_areaplot.style_columns 等。
track_priceinput boolfalse如果為 true,則會在最後一個值處顯示一條水平價格線。
hist_baseinput float0直方圖/列樣式的基值。條形圖從此水平延伸至系列值。
offsetsimple int0將繪圖向左(負)或右(正)移動指定數量的 bars。
joininput boolfalse如果為真,則用線連接系列中的間隙。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯打印樣式。
show_lastinput intna如果設定,則僅顯示最後 N 個 bars。
displayinput PlotDisplaydisplay.ALL控制繪圖的顯示位置。使用 display.alldisplay.nonedisplay.panedisplay.price_scale 等。
formatinput Formatna覆蓋資料窗口中該圖的默認數字格式。
precisioninput intna顯示的小數位數。
force_overlayconst boolna如果為 true,則強制繪圖顯示在主圖表窗格上。
linestyleinput PlotStylePlotStyle.Line線條樣式:PlotStyle.LinePlotStyle.LinePlotStyle.Line

返回: Plot — 可與 fill 一起使用的繪圖句柄來填充繪圖之間的區域。

示例

navi
// Plot a simple moving average
let smaLine = plot(ta.sma(close, 20), title: "SMA 20", color: color.BLUE);
navi
// Plot two EMAs and fill between them
let p1 = plot(ta.ema(close, 9), title: "EMA 9", color: color.GREEN); let p2 =
plot(ta.ema(close, 21), title: "EMA 21", color: color.RED); fill(p1, p2,
color: color.new(color.GRAY, 80));

plot_arrow

navi
plot_arrow(
    series: series float,
    title: const string = na,
    color_up: series color = color.BLUE,
    color_down: series color = color.BLACK,
    offset: simple int = 0,
    min_height: input int = 5,
    max_height: input int = 100,
    editable: input bool = true,
    show_last: input int = na,
    display: input PlotDisplay = display.ALL,
    format: input Format = na,
    precision: input int = na,
    force_overlay: const bool = na
  )

根據系列的符號在圖表上繪製向上和向下箭頭。當值為正時繪製向上箭頭,當值為負時繪製向下箭頭。箭頭高度與絕對值成正比,在 minheightmaxheight 之間縮放。對於可視化動量或方向變化很有用。

參數

名稱類型預設值說明
seriesseries float資料系列。正值繪製向上箭頭,負值繪製向下箭頭。 na 或零值不會繪製任何內容。
titleconst stringna標題顯示在樣式對話框和資料窗口中。
color_upseries colorcolor.BLUE向上箭頭的顏色。
color_downseries colorcolor.BLACK向下箭頭的顏色。
offsetsimple int0將箭頭向左(負)或右(正)移動指定的 bars。
min_heightinput int5最小箭頭高度(以像素為單位)。
max_heightinput int100最大箭頭高度(以像素為單位)。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯繪圖。
show_lastinput intna如果設定,則僅顯示最後 N 個 bars 上的箭頭。
displayinput PlotDisplaydisplay.ALL控制箭頭的顯示位置。
formatinput Formatna覆蓋資料窗口中的默認數字格式。
precisioninput intna顯示的小數位數。
force_overlayconst boolna如果為 true,力將顯示在主圖表窗格上。

plot_bar

navi
plot_bar(
    open: series float,
    high: series float,
    low: series float,
    close: series float,
    title: const string = na,
    color: series color = color.BLUE,
    editable: input bool = true,
    show_last: input int = na,
    display: input PlotDisplay = display.ALL,
    format: input Format = na,
    precision: input int = na,
    force_overlay: const bool = na
  )

在圖表上繪製 OHLC bars。每個 bar 將開盤價、最高價、最低價和收盤價顯示為傳統的 bar 圖表元素。對於覆蓋自定義 OHLC 資料或顯示轉換後的價格資料非常有用。

參數

名稱類型預設值說明
openseries float每個 bar 的開盤價。
highseries float每個 bar 的價格很高。
lowseries float每個 bar 的低價。
closeseries float每個 bar 的收盤價。
titleconst stringna標題顯示在樣式對話框和資料窗口中。
colorseries colorcolor.BLUE條形顏色。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯繪圖。
show_lastinput intna如果設定,則僅顯示最後 N 個 bars。
displayinput PlotDisplaydisplay.ALL控制 bars 的顯示位置。
formatinput Formatna覆蓋資料窗口中的默認數字格式。
precisioninput intna顯示的小數位數。
force_overlayconst boolna如果為 true,力將顯示在主圖表窗格上。

plot_candle

navi
plot_candle(
    open: series float,
    high: series float,
    low: series float,
    close: series float,
    title: const string = na,
    color: series color = color.BLUE,
    wick_color: series color = color.BLUE,
    editable: input bool = true,
    show_last: input int = na,
    border_color: series color = color.BLACK,
    display: input PlotDisplay = display.ALL,
    format: input Format = na,
    precision: input int = na,
    force_overlay: const bool = na
  )

在圖表上繪製燭台。每根蠟燭均顯示開盤價、最高價、最低價和收盤價,並帶有實體和影線。對於覆蓋自定義燭台資料(例如 Heikin-Ashi)或顯示轉換後的價格系列非常有用。

參數

名稱類型預設值說明
openseries float每根蠟燭的開盤價。
highseries float每根蠟燭的價格很高。
lowseries float每支蠟燭的低價。
closeseries float每根蠟燭的收盤價。
titleconst stringna標題顯示在樣式對話框和資料窗口中。
colorseries colorcolor.BLUE蠟燭體顏色。
wick_colorseries colorcolor.BLUE燭芯顏色。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯繪圖。
show_lastinput intna如果設定,則僅顯示最後 N 根蠟燭。
border_colorseries colorcolor.BLACK蠟燭體邊框顏色。
displayinput PlotDisplaydisplay.ALL控制蠟燭的顯示位置。
formatinput Formatna覆蓋資料窗口中的默認數字格式。
precisioninput intna顯示的小數位數。
force_overlayconst boolna如果為 true,力將顯示在主圖表窗格上。

plot_char

在系列具有非 na 值的每個 bar 處繪製一個字符。該字符基於 location 相對於 bar 定位。用於在圖表上標記特定事件或條件。

參數

名稱類型預設值說明
seriesseries float資料系列。當值不是 na 時,將繪製字符。
titleconst stringna標題顯示在樣式對話框和資料窗口中。
charinput string"⭐"要顯示的字符(支持 Unicode)。
locationinput LocationLocation.AboveBar垂直位置:location.abovebarlocation.belowbarlocation.toplocation.bottomlocation.absolute
colorseries colorcolor.BLUE人物顏色。
offsetsimple int0將字符向左(負)或右(正)移動 bars。
textconst stringna顯示在角色附近的可選文本。
text_colorseries colorcolor.BLUE可選文本的顏色。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯繪圖。
sizeconst SizeSize.Auto字符大小:Size.AutoSize.TinySize.SmallSize.NormalSize.LargeSize.Huge
show_lastinput intna如果設定,則僅顯示最後 N 個 bars 上的字符。
displayinput PlotDisplaydisplay.ALL控制字符的顯示位置。
formatinput Formatna覆蓋資料窗口中的默認數字格式。
precisioninput intna顯示的小數位數。
force_overlayconst boolna如果為 true,力將顯示在主圖表窗格上。

在布爾系列為 true 的每個 bar 處繪製一個字符。當值為 true 時繪製字符。

參數

名稱類型預設值說明
seriesseries bool布爾系列。當 true 時,將繪製一個字符。
titleconst stringna標題顯示在樣式對話框和資料窗口中。
charinput string"⭐"要顯示的字符(支持 Unicode)。
locationinput LocationLocation.AboveBar垂直位置:location.abovebarlocation.belowbarlocation.toplocation.bottomlocation.absolute
colorseries colorcolor.BLUE人物顏色。
offsetsimple int0將字符向左(負)或右(正)移動 bars。
textconst stringna顯示在角色附近的可選文本。
text_colorseries colorcolor.BLUE可選文本的顏色。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯繪圖。
sizeconst SizeSize.Auto字符大小:Size.AutoSize.TinySize.SmallSize.NormalSize.LargeSize.Huge
show_lastinput intna如果設定,則僅顯示最後 N 個 bars 上的字符。
displayinput PlotDisplaydisplay.ALL控制字符的顯示位置。
formatinput Formatna覆蓋資料窗口中的默認數字格式。
precisioninput intna顯示的小數位數。
force_overlayconst boolna如果為 true,力將顯示在主圖表窗格上。

plot_shape

在每個 bar 處繪製一個形狀,其中該系列具有非 na 值。提供各種形狀樣式(箭頭、圓形、十字形等)。該形狀基於 location 相對於 bar 定位。

參數

名稱類型預設值說明
seriesseries float資料系列。當值不是 na 時,將繪製形狀。
titleconst stringna標題顯示在樣式對話框和資料窗口中。
styleinput ShapeShape.XCross形狀樣式:shape.xcrossshape.crossshape.triangleupshape.triangledownshape.flagshape.circleshape.arrowupshape.arrowdownshape.labelupshape.labeldownshape.squareshape.diamond
locationinput LocationLocation.AboveBar垂直位置:location.abovebarlocation.belowbarlocation.toplocation.bottomlocation.absolute
colorseries colorcolor.BLUE形狀顏色。
offsetsimple int0將形狀向左(負)或右(正)移動 bars。
textconst stringna形狀附近顯示的可選文本。
text_colorseries colorcolor.BLUE可選文本的顏色。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯繪圖。
sizeconst SizeSize.Auto形狀大小:Size.AutoSize.TinySize.SmallSize.NormalSize.LargeSize.Huge
show_lastinput intna如果設定,則僅顯示最後 N 個 bars 上的形狀。
displayinput PlotDisplaydisplay.ALL控制形狀的顯示位置。
formatinput Formatna覆蓋資料窗口中的默認數字格式。
precisioninput intna顯示的小數位數。
force_overlayconst boolna如果為 true,力將顯示在主圖表窗格上。

在布爾級數為真的每個 bar 處繪製一個形狀。當值為 true 時繪製形狀。

參數

名稱類型預設值說明
seriesseries bool布爾系列。當為 true 時,會繪製一個形狀。
titleconst stringna標題顯示在樣式對話框和資料窗口中。
styleinput ShapeShape.XCross形狀樣式:shape.xcrossshape.crossshape.triangleupshape.triangledownshape.flagshape.circleshape.arrowupshape.arrowdownshape.labelupshape.labeldownshape.squareshape.diamond
locationinput LocationLocation.AboveBar垂直位置:location.abovebarlocation.belowbarlocation.toplocation.bottomlocation.absolute
colorseries colorcolor.BLUE形狀顏色。
offsetsimple int0將形狀向左(負)或右(正)移動 bars。
textconst stringna形狀附近顯示的可選文本。
text_colorseries colorcolor.BLUE可選文本的顏色。
editableinput booltrue如果為 true,則可以在樣式對話框中編輯繪圖。
sizeconst SizeSize.Auto形狀大小:Size.AutoSize.TinySize.SmallSize.NormalSize.LargeSize.Huge
show_lastinput intna如果設定,則僅顯示最後 N 個 bars 上的形狀。
displayinput PlotDisplaydisplay.ALL控制形狀的顯示位置。
formatinput Formatna覆蓋資料窗口中的默認數字格式。
precisioninput intna顯示的小數位數。
force_overlayconst boolna如果為 true,力將顯示在主圖表窗格上。

second

navi
second(timestamp: int, timezone: string = syminfo.timezone): int

從指定時區的 UNIX 時間戳中提取秒數 (0-59)。

參數

名稱類型預設值說明
timestampintUNIX 時間戳(以毫秒為單位)。
timezonestringsyminfo.timezone用於解釋的時區。默認為符號的時區。

返回: int


strategy

navi
strategy(
    title: const string,
    shorttitle: const string = na,
    overlay: const bool = false,
    format: const Format = Format.Inherit,
    precision: const int = na,
    scale: const ScaleType = na,
    pyramiding: const int = 0,
    calc_on_order_fills: const bool = false,
    calc_on_every_tick: const bool = false,
    max_bars_back: const int = na,
    backtest_fill_limits_assumption: const int = 0,
    default_qty_type: const DefaultQtyType = DefaultQtyType.Fixed,
    default_qty_value: const float = 1,
    initial_capital: const float = 1000000,
    currency: simple string = syminfo.currency,
    slippage: const int = 0,
    commission_type: const CommissionType = CommissionType.Percent,
    commission_value: const float = 0,
    process_orders_on_close: const bool = false,
    close_entries_rule: const string = "FIFO",
    margin_long: const float = 100,
    margin_short: const float = 100,
    explicit_plot_zorder: const bool = false,
    max_lines_count: const int = 50,
    max_labels_count: const int = 50,
    max_boxes_count: const int = 50,
    calc_bars_count: const int = na,
    risk_free_rate: const float = 2,
    use_bar_magnifier: const bool = false,
    fill_orders_on_standard_ohlc: const bool = false,
    max_polylines_count: const int = 50,
    dynamic_requests: const bool = true,
    behind_chart: const bool = true
  )

將腳本指定為策略並設定與策略相關的屬性。

參數

名稱類型預設值說明
titleconst string腳本的標題。未設定 shorttitle 時顯示在圖表上,併成為發佈時的默認標題。
shorttitleconst stringna圖表和大多數圖表相關窗口中顯示的腳本的縮寫顯示名稱。選修的。
overlayconst boolfalse如果是 true,則策略的視覺效果將繪製在主圖表窗格上。如果是 false,它們將出現在單獨的窗格中。選修的。默認為 false
formatconst FormatFormat.Inherit指定策略顯示值的格式。可能的值:Format.InheritFormat.PriceFormat.VolumeFormat.Percent。選修的。
precisionconst intna策略顯示值的小數位數。必須是不大於16的非負整數。當使用Format.Volume時,此設定無效。選修的。默認值繼承自圖表符號的精度。
scaleconst ScaleTypena使用的價格範圍。可能的值:scale.rightscale.leftscale.none。僅當 overlay = true 時才允許 scale.none。選修的。
pyramidingconst int0同一時間允許在同一方向上進入的最大數量。選修的。默認值為 0,表示每個方向僅允許一個條目。
calc_on_order_fillsconst boolfalse如果是 true,則只要在 bar 期間執行訂單,策略就會重新計算其邏輯,而不僅僅是在 bar 收盤時。選修的。默認為 false
calc_on_every_tickconst boolfalse如果是 true,策略會在每次傳入的實時價格更新(變動點)時重新計算。如果是 false,則計算僅在 bar 關閉時發生。選修的。默認為 false
max_bars_backconst intna為所有變量和函數保留的歷史緩衝區的深度,控制可以使用 [] 運算符讀取多少個過去的值。選修的。
backtest_fill_limits_assumptionconst int0在假設執行限價單之前,市場必須移動超出限價的價格變動數。選修的。默認為 0
default_qty_typeconst DefaultQtyTypeDefaultQtyType.Fixed確定如何解釋 default_qty_value。可能的值:strategy.fixedstrategy.percent_of_equitystrategy.cash。選修的。默認值為 strategy.fixed
default_qty_valueconst float1在入場調用中未指定數量時使用的默認訂單大小。它的含義取決於default_qty_type。選修的。默認為 1.0
initial_capitalconst float1000000回測開始時策略可用的啓動資金,以 currency 表示。選修的。默認為 1000000.0
currencysimple stringsyminfo.currency策略跟蹤資本、利潤和損失所用的基礎貨幣。選修的。默認為圖表符號的貨幣。
slippageconst int0添加到每個訂單執行價格以模擬執行滑點的價格變動數量。選修的。默認為 0
commission_typeconst CommissionTypeCommissionType.Percent指定如何計算交易佣金。可能的值:strategy.commission.percentstrategy.commission.cash_per_contractstrategy.commission.cash_per_order。選修的。默認為 strategy.commission.percent
commission_valueconst float0佣金金額,根據 commission_type 解釋。選修的。默認為 0.0
process_orders_on_closeconst boolfalse如果是 true,則在 bar 期間生成的訂單將按該 bar 的收盤價處理,而不是在下一個 bar 的開盤價處理。選修的。默認為 false
close_entries_ruleconst string"FIFO"關閉多個打開的條目時應用的排序規則。 \"FIFO 首先關閉最舊的條目; ANY 允許關閉調用通過 ID 定位特定條目。選修的。默認為 FIFO\"
margin_longconst float100多頭頭寸的保證金要求,以頭寸價值的百分比表示。值 100 表示沒有槓桿。選修的。默認為 100.0
margin_shortconst float100空頭頭寸的保證金要求,以頭寸價值的百分比表示。值 100 表示沒有槓桿。選修的。默認為 100.0
explicit_plot_zorderconst boolfalse如果 true,繪圖、填充和線條將按照它們在腳本代碼中出現的順序呈現,後面的聲明繪製在前面的聲明之上。選修的。默認為 false
max_lines_countconst int50圖表上保存的最新 line 繪圖的最大數量。可能的值:1–500。選修的。默認為 50
max_labels_countconst int50圖表上保存的最新 label 繪圖的最大數量。可能的值:1–500。選修的。默認為 50
max_boxes_countconst int50圖表上保存的最新 box 繪圖的最大數量。可能的值:1–500。選修的。默認為 50
calc_bars_countconst intna將回測限制為指定的最新 bars 數量。當 na 時,策略在所有可用歷史記錄上運行。選修的。默認為 na
risk_free_rateconst float2計算夏普比率和索爾蒂諾比率時使用的年度無風險利率(百分比)。選修的。默認為 2.0
use_bar_magnifierconst boolfalse如果是 true,引擎會使用更高分辨率的柱內資料來確定每個 bar 內更準確的訂單執行價格。選修的。默認為 false
fill_orders_on_standard_ohlcconst boolfalse如果 true,限價單和止損單將根據 bar 的標準 OHLC 價格執行,忽略任何柱內價格路徑。選修的。默認為 false
max_polylines_countconst int50圖表上保存的最新 polyline 繪圖的最大數量。可能的值:1–100。選修的。默認為 50
dynamic_requestsconst booltrue指定策略是否可以在條件結構或循環內包含動態 request.*() 調用,或者接受通常為非系列參數的“系列”參數的調用。選修的。默認為 true
behind_chartconst booltrue如果是 true,則所有圖表和繪圖都將呈現在圖表的燭台或 bars 後面。僅當 overlay = true 時生效。選修的。默認為 true

string

navi
string(x: string): string

將 na 轉換為字符串

參數

名稱類型預設值說明
xstring

返回: string


table

navi
table(x: Table): Table

將 na 轉換為表類型。對於初始化稍後分配的表變量很有用。

參數

名稱類型預設值說明
xTable

返回: Table


time

解析由 timeframesession 選擇的 bar 存儲桶的打開時間戳。當您希望在特定時區解釋目標會話時,此重載非常方便。

參數

名稱類型預設值說明
timeframeseries string時間範圍代碼,例如 \"D60W\"
sessionseries stringna可選的會話窗口。省略時,將使用交易品種的常規會話規則。
timezoneseries stringsyminfo.timezone評估會話字符串時使用的時區。

返回: series int — 匹配 bar 開始的毫秒時間戳,或當前 bar 不屬於請求的會話時的 na

將當前圖表 bar 映射到另一個時間範圍並傳回該目標 bar 的開盤時間戳。查找可以首先在圖表時間範圍上移動,然後再在目標時間範圍上移動。

參數

名稱類型預設值說明
timeframeseries string目的地時間範圍。空字符串回落至圖表時間範圍。
sessionseries stringna用於目標查找的可選會話過濾器。
bars_backseries int0在映射之前在圖表時間範圍上應用的偏移量。
timeframe_bars_backseries int0找到目標 bar 後應用額外偏移。

返回: series int


time_close

解析由 timeframesession 選擇的 bar 存儲桶的關閉時間戳。

參數

名稱類型預設值說明
timeframeseries string時間範圍代碼,例如 \"D60W\"
sessionseries stringna查找過程中使用的可選會話窗口。
timezoneseries stringsyminfo.timezone解釋會話字符串時使用的時區。

返回: series int — 匹配 bar 關閉的毫秒時間戳,或噹噹前 bar 位於請求的會話之外時的 na

將當前圖表 bar 映射到另一個時間範圍並傳回該目標 bar 的結束時間戳。它使用與 time 相同的兩階段偏移模型,但報告 bar 結束而不是 bar 開始。

參數

名稱類型預設值說明
timeframeseries string目的地時間範圍。空字符串回落至圖表時間範圍。
sessionseries stringna用於目標查找的可選會話過濾器。
bars_backseries int0在映射之前在圖表時間範圍上應用的偏移量。
timeframe_bars_backseries int0找到目標 bar 後應用額外偏移。

返回: series int


timestamp

解析日期/時間字符串並傳回相應的 UNIX 時間戳(以毫秒為單位)。該字符串必須採用 ISO 8601 格式(例如“2024-01-15”或“2024-01-15T09:30:00Z”)或 IETF RFC 2822 格式。

參數

名稱類型預設值說明
date_stringstring要解析的日期/時間字符串。

返回: int

使用圖表的時區從日期/時間組件創建 UNIX 時間戳。

參數

名稱類型預設值說明
yearint年份(例如 2024 年)。
monthint月份(1-12)。
dayint一個月中的某一天 (1-31)。
hourint0小時 (0-23)。默認為 0。
minuteint0分鐘 (0-59)。默認為 0。
secondint0第二個(0-59)。默認為 0。

返回: int — 自 1970-01-01 00:00:00 UTC 以來的毫秒數。

根據指定時區的日期/時間組件創建 UNIX 時間戳。

參數

名稱類型預設值說明
timezonestringsyminfo.timezone時區(例如“America/New_York”、“UTC”、“GMT+8”)。
yearint年份(例如 2024 年)。
monthint月份(1-12)。
dayint一個月中的某一天 (1-31)。
hourint0小時 (0-23)。默認為 0。
minuteint0分鐘 (0-59)。默認為 0。
secondint0第二個(0-59)。默認為 0。

返回: int — 自 1970-01-01 00:00:00 UTC 以來的毫秒數。


week_of_year

navi
week_of_year(timestamp: int, timezone: string = syminfo.timezone): int

從指定時區的 UNIX 時間戳中提取一年中的第幾周 (1-53)。第 1 周是包含 1 月 4 日的那一週 (ISO 8601)。

參數

名稱類型預設值說明
timestampintUNIX 時間戳(以毫秒為單位)。
timezonestringsyminfo.timezone用於解釋的時區。默認為符號的時區。

返回: int


year

navi
year(timestamp: int, timezone: string = syminfo.timezone): int

從指定時區的 UNIX 時間戳中提取年份。

參數

名稱類型預設值說明
timestampintUNIX 時間戳(以毫秒為單位)。
timezonestringsyminfo.timezone用於解釋的時區。默認為符號的時區。

返回: int

基於 MIT 許可證發佈。