Satukan dan anotasi: Jadual Pine sekarang menyokong pengepala dan tooltip

Mar 18, 2022

Pengepala dan gabungan sel

Ia adalah sekarang dibolehkan untuk menggabungkan beberapa sel di dalam satu jadual untuk mencipta satu pengepala dan pemisah ragam. Satu sel bergabung tidak perlu menjadi pengepala: anda boleh menggabungkan sel-sel di dalam mana-mana arah, asalkan sel terhasil tidak memberikan kesan kepada mana-mana sel yang telahpun bergabung, dan tidak pergi keluar daripada sempadan jadual.

Untuk mencipta satu sel bergabung, gunakan fungsi baru table.merge_cells(). Peraturan adalah mudah. Anda hendaklah memberikan koordinat sel pertama dan terakhir yang anda mahu gabungkan. Kesemua di antara mereka akan digabungkan kepada satu sel tunggal. Saiz satu sel bergabung ini adalah ditentukan secara automatik oleh ukuran baris dan lajur yang berhampiran.

Di dalam contoh skrip di bawah, anda boleh melihat tiga sel bergabung: yang pertama menggabungkan semua sel di dalam baris kosong dan mengandungi “SMA Table”, yang lain di bawahnya mencipta sub-pengepala.

//@version=5
indicator("MA Ratings", overlay = true)

TRANSP = 80
TABLE_WIDTH = 6
var CELL_TOOLTIP = "Cell color depends on the SMA direction: green for rising SMAs, red for falling ones"

var smaLengths = array.from(10, 20, 50, 100, 200, 500)

smaValues = array.new_float()
for i = 0 to array.size(smaLengths) - 1
    array.push(smaValues, ta.sma(close, array.get(smaLengths, i)))

var maTable = table.new(position.top_right, TABLE_WIDTH, 4, border_width = 2)

if barstate.isfirst
    headerColor = color.new(color.blue, TRANSP)
    table.cell(maTable, 0, 0, text = "SMA Table", bgcolor = headerColor)
    table.cell(maTable, 0, 1, text = "Short-term", bgcolor = headerColor)
    table.cell(maTable, 2, 1, text = "Long-term", bgcolor = headerColor)
    table.merge_cells(maTable, 0, 0, 5, 0)
    table.merge_cells(maTable, 0, 1, 1, 1)
    table.merge_cells(maTable, 2, 1, 5, 1)

if barstate.islast
    for i = 0 to TABLE_WIDTH - 1
        cellTitle = str.format("SMA {0}", array.get(smaLengths, i))
        cellValue = array.get(smaValues, i)
        cellColor = color.new(array.get(smaValues, i) >= array.get(smaValues[1], i) ? color.green : color.red, TRANSP)
        table.cell(maTable, i, 2, bgcolor = cellColor, text = cellTitle, text_color = color.gray, tooltip = CELL_TOOLTIP)
        table.cell(maTable, i, 3, bgcolor = cellColor, text = str.tostring(cellValue,  format.mintick), tooltip = CELL_TOOLTIP)

Tooltip

Penambahbaikan kedua kepada jadual adalah tooltip. Tooltip adalah label teks terapung yang wujud apabila anda menggerakkan kursor di atas satu sel jadual. Mereka adalah berguna untuk memberikan informasi pada kandungan sel tanpa menyesakkan jadual.

Untuk mencipta satu sel dengan satu tooltip, hanya berikan satu rentetan kepada argument tooltip untuk fungsi table.cell(). Lihat tooltip beraksi di dalam skrip contoh kami, di mana kami menggunakan tooltip = CELL_TOOLTIP di dalam panggilan table.cell() untuk dua garisan terakhir. Tooltip akan kelihatan seperti ini:

Untuk sentiasa mengetahui mengenai ciri-ciri baru Pine, sentiasa perhatikan Nota keluaran Manual Pengguna Pine kami. Akaun PineCoders juga menyiarkan kemaskini daripada Squawk Box pada Telegram, akaun Twitter, dan dari laman sembang awam Skrip Pine pada TradingView.

Kami harap anda akan mendapati ciri yang sangat dipinta ini berguna. Sila sentiasa menghantarkan kepada kami maklumbalas dan cadangan anda untuk penambahbaikan. Kami membina TradingView untuk anda, dan kami sentiasa berminat untuk mendengar daripada anda.

Look first Then leap

TradingView dibina untuk anda, pastikan anda memanfaatkan semua ciri-ciri hebat kami
Lancarkan Carta