我想了解更多關於Pine編輯器的資訊
若要啟用日誌,您可以使用三個新的日誌記錄功能:
- log.error() 建立以紅色顯示的Error類型訊息。
- log.info() 建立以灰色顯示的Info類型的訊息。
- log.warning() 建立以橘色顯示的Warning類型的訊息。
在圖表上新增腳本後,您可以開啟 Pine 日誌。使用入口點之一:
- 從編輯器的更多選單中選擇Pine日誌...
- 如果圖表使用 log.*() 函數,則從載入到圖表上的腳本的「更多」選單中獲取
Pine日誌在任何地方都可以工作:在歷史K線上、即時以及重播模式。可以從任何類型的腳本(指標、策略或程式庫)以及腳本中的任何位置呼叫日誌記錄函數,包括本機區塊、迴圈以及從request.security()和類似函數內部呼叫。您可以透過兩種方式呼叫日誌記錄函數:僅使用字串參數,或以str.format()方式使用格式化字串和值清單。
使用日誌的腳本必須是個人腳本;私人或公開發佈的腳本無法產生日誌,即使它們包含對 log.*() 函數的呼叫。
以下程式碼範例使用所有三個日誌記錄函數:
//@version=6
indicator("Pine logs")
if barstate.ishistory
if bar_index % 100 == 0
log.warning("\nBar index: {0,number,#}", bar_index)
else
// Realtime bar processing.
varip lastTime = timenow
varip updateNo = 0
if barstate.isnew
updateNo := 0
log.error("\nNew bar")
else
log.info("\nUpdate no: {0}\nclose: {1}\nSeconds elapsed: {2}", updateNo, close, (timenow - lastTime) / 1000)
updateNo += 1
lastTime := timenow
plot(timenow)
此範例使用橘色警告訊息顯示每一百個歷史K線的K線索引。它會即時為每個新K線顯示一條紅色錯誤訊息,並且對於每根K線即時更新,它會創建一條灰色資訊訊息,顯示更新編號、收盤價以及自上次圖表更新以來經過的時間 。
查看 Pine 日誌的運行情況:
- 將上述程式碼範例儲存到個人腳本中,並將其增加到具有活躍市場的圖表中。
- 使用編輯器的更多選單,或圖表上指標的更多選單開啟 Pine 日誌窗格。
每個日誌條目前面都有一個時間戳記。對於歷史K線,它是K線的開盤時間;對於即時訊息,它是當前時間。較新的訊息出現在窗格底部。歷史K線僅顯示最後 10,000 則訊息;即時訊息附加到這些訊息上。
窗格頂部包含可讓您啟動/停止日誌記錄、指定開始日期、按訊息類型過濾日誌以及搜尋日誌的圖示。搜尋欄位包含一個子選單,可讓您匹配大小寫、整個單字並使用正規表示式。
當您將滑鼠停在日誌訊息上時,會出現圖示,讓您可以查看生成該訊息的源代碼,或跳到對應的圖表K線:
當圖表上的多個腳本使用日誌時,每個腳本都會維護自己的一組訊息。您可以使用Pine日誌窗格頂部的下拉式選單在每個腳本的日誌之間移動: