moebius1977

arraybrowser

moebius1977 Atualizado   
█ ARRAY BROWSER

Add you arrays to the array browser window and scroll them away left and right.
Flexible formatting options (see below).
Many thanks to @kaigouthro for his beautiful matrixautotable library. (import kaigouthro/matrixautotable/14)

How to use
Copy the "ARRAY BROWSER" commented code section below to your script and uncomment.

See DEMO section in the library for usage examples.
Basically: add() your arrays and draw() on barstate.islast.
If your script adds the arrays every calculation do not forget to clear() before adding.
Otherwise, since the arrays are added by reference, no need to add them on every bar, every time you draw() the actual values are retrieved.

Up to 10 arrays of each type (float/string/line/label/box) are supported (total 50 arrays).

Change offset in the input settings to scroll left/right.

Usage example:
import moebius1977/arraybrowser/1			as arraybrowser	// this alias is used in the copied section, so better keep it  
[...]
<COPIED "ARRAY BROWSER" SECTION> 
[...]
arbr.clear()								// clears all rows and deletes the table 
arbr.add(arrayFloat, format = "0.00")					// adds an array with title
arbr.add(arrayInt)							// adds an array without title
arbr.add(arrayTimes, "array of times 1",  "date\ntime")		        // format date and time so as to fit in the cell.
arbr.add(arrayTimes, "array of times 2", "{0, time, HH:mm}")		// format date and time so as to fit in the cell.
arbr.add(arrayString)							// 
arbr.add(arrayLine, "arrayLines", "(x1, y1)\n(x2,y2)")			// use your own format combining "x1", "y1", "x2", "y2"
arbr.add(arrayLabel, "arrayLabel", "txt")				// only print label text, no coordinates 
arbr.add(arrayBox, showIds = true)					// show ID's for this array if input setting is "individually"
arbr.draw()								// shows the table with arrays, use on barstate.islast


Formatting options

For float/int you can always use format string like "{0, time, HH:mm:ss}" or "{0.00}".
Additional options are
- --- Number formats ---
- "number"
- "0"
- "0.0"
- "0.00"
- "0.000"
- "0.0000"
- "0.00000"
- "0.000000"
- "0.0000000"
- --- Date formats ---
- "date"
- "date : time"
- "dd.MM"
- "dd"
- --- Time formats ---
- "time"
- "HH:mm"
- "mm:ss"
- "date time"
- "date, time"
- "date,time"
- "date\time"

For line and box: Empty `format` returns coordinates as "(x1, y1) - (x2, y2)". Otherwise "x1", "x2", "y1", "y2" in `format` string are replaced by values. (e.g. toS(line, "x1, x2") will only return x1 and x2 separated by comma).

For label: Empty `format` returns coordinates and text as "(x, y): text = text". Otherwise "x1", "y1", "txt" in `format` string are replaced by values. (e.g. toS(label, "txt") will only return text of the label)
Notas de Lançamento:
v2 Added support for bool arrays.
Changing text color does not work temporarily.
Notas de Lançamento:
v3 A minor bug fix. (in deleteRow())
Notas de Lançamento:
v4 Same amendment as above.
Notas de Lançamento:
v5 Added support for varip arrays. Previous versions disrupted behaviour of varip arrays.
Biblioteca do Pine

No verdadeiro espírito TradingView, o autor publicou este código de Pine como uma biblioteca de código aberto para que outros programadores de Pine de nossa comunidade possam reutilizá-lo. Um brinde ao autor! Você pode usar esta biblioteca em particular ou em outras publicações de código aberto, mas a reutilização deste código em uma publicação é regida pelas Regras da Casa.

Aviso legal

As informações e publicações não devem ser e não constituem conselhos ou recomendações financeiras, de investimento, de negociação ou de qualquer outro tipo, fornecidas ou endossadas pela TradingView. Leia mais em Termos de uso.

Gostaria de usar essa biblioteca?

Copie a seguinte linha e cole-a em seu script.