Debug kode Skrip Pine® anda dengan Log Pine

Aug 29, 2023

Jadikan dan bawa proses debug Skrip Pine® anda menuju tingkat lanjut dengan fungsi log.*() baru kami, yang menampilkan teks di panel Log Pine yang baru saat skrip dijalankan. Tiga fungsi logging baru antara lain:

  • log.error() membuat pesan bertipe “Error” yang ditampilkan dengan warna merah.
  • log.info() membuat pesan bertipe “Info” yang ditampilkan dalam warna abu-abu.
  • log.warning() membuat pesan bertipe “Peringatan” yang ditampilkan dalam warna oranye.

Anda dapat melihat Log Pine dengan memilih “Log Pine…” dari menu “Lainnya” pada Editor, atau dari menu “Lainnya” dari skrip yang dimuat pada chart anda jika menggunakan fungsi log.*().

Log Pine berfungsi di mana pun: pada bar historis, pada real time, dan dalam mode Putar Ulang. Fungsi logging dapat dipanggil dari seluruh jenis skrip (indikator, strategi, atau perpustakaan) dan dari mana saja di dalam skrip, termasuk local block, loop, dan dari dalam request.security() serta fungsi yang serupa. Anda dapat memanggil fungsi logging dengan dua cara: hanya menggunakan argumen string, atau menggunakan string pemformatan dan sebuah daftar nilai dalam mode str.format().

Skrip yang menggunakan log harus berupa skrip pribadi; skrip yang dipublikasikan secara pribadi atau publik tidak dapat menghasilkan log, meskipun skrip tersebut berisi panggilan ke fungsi log.*().

Contoh kode berikut menggunakan ketiga fungsi logging tersebut:

//@version=5
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)

Contoh ini menampilkan indeks bar pada setiap bar historis yang keseratus menggunakan sebuah pesan peringatan berwarna oranye. Secara real-time, ini menampilkan pesan error berwarna merah untuk setiap bar baru, dan untuk setiap update real-time, ini membuat pesan informasi berwarna abu-abu yang menunjukkan nomor update, harga penutupan, dan waktu yang telah berlalu sejak update chart terakhir.

Untuk melihat tindakan Log Pine:

  1. Simpan contoh kode di atas ke skrip pribadi dan tambahkan ke chart dengan kondisi pasar yang sedang aktif.
  2. Buka panel “Log Pine” menggunakan menu “Lainnya” di Editor atau menu “Lainnya” di indikator pada chart.

Timestamp mengawali setiap entri log. Ini merupakan waktu pembukaan bar untuk bar historis, dan waktu saat ini untuk pesan real-time. Pesan yang lebih baru muncul di bagian bawah panel. Hanya 10.000 pesan terakhir yang akan ditampilkan untuk bar historis; pesan real-time akan ditambahkan ke dalamnya.

Bagian atas panel berisi ikon yang memungkinkan anda untuk memulai/menghentikan logging, menentukan tanggal permulaan, memfilter log berdasarkan jenis pesan, dan mencari log. Bidang pencarian berisi submenu yang memungkinkan anda untuk mencocokkan huruf besar/kecil, seluruh kata, dan menggunakan regex.

Saat anda mengarahkan kursor ke pesan log, ikon akan muncul dan memungkinkan anda untuk melihat kode sumber yang menghasilkan pesan tersebut atau beralih ke bar dari chart yang sesuai:

Ketika beberapa skrip pada chart anda menggunakan log, masing-masing skrip menyimpan kumpulan pesannya sendiri. Anda dapat beralih di antara setiap log skrip dengan menggunakan dropdown di bagian atas panel Log Pine:

Untuk tetap mendapatkan informasi terkini tentang fitur-fitur Skrip Pine® yang baru, pantau terus Catatan Rilis Panduan Pengguna. Akun PineCoders juga menyiarkan pembaruan dari Squawk Box di Telegram, akun Twitter, dan dari obrolan publik Tanya Jawab Skrip Pine® di TradingView.

Kami berharap fitur yang paling banyak diminta ini dapat bermanfaat bagi anda, dan terus kirimkan masukan dan saran anda kepada kami agar kami dapat menjadikan platform ini sebaik mungkin. Kami membangun TradingView untuk anda, dan kami selalu ingin mendengar pendapat anda.

— Tim TradingView

Look first Then leap

TradingView dibangun untuk anda, karenanya manfaatkan fitur-fitur luar biasa kami semaksimal mungkin
Luncurkan Chart