Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.darvas.app/llms.txt

Use this file to discover all available pages before exploring further.

Runtime budgets

ResourceLimitError raised
Source script size50 KBINVALID_REQUEST
Heap memory64 MBHEAP_LIMIT
Stack depth1 MBRUNTIME_ERROR
Top-level eval1.5 s wall-clockTIMEOUT
Per-bar onBar50 ms wall-clockTIMEOUT
Total run time10 s wall-clockTIMEOUT
Bar lookback100 000 barsINVALID_REQUEST

Drawing primitive budgets

PrimitiveLimitOverflow behavior
plot() series64Error at evaluation time
hline()64Error at evaluation time
fill()64Error at evaluation time
bgcolor() entries1 000 most recentSilent truncation (oldest dropped)
barcolor() entries1 000 most recentSilent truncation (oldest dropped)

Entity budgets

Entity typePer-type limitOverflow behavior
Line500Warning in console; oldest truncated
Box500Warning in console; oldest truncated
Label500Warning in console; oldest truncated
Marker500Warning in console; oldest truncated
LineFill500Warning in console; oldest truncated
All entities combined1 500Global cap enforced after per-type check
Entity overflow is silent on screen - no chart error. Watch the Console panel for "Line limit exceeded" and similar warnings when you hit the per-type cap.

Series budget

ResourceLimitNotes
Series() instances64 totalShared with ta.barssince and ta.cum internal series
Every unique key passed to ta.barssince(key, ...) or ta.cum(key, ...) consumes one slot from this budget.

Console output budget

ResourceLimit
Console log lines100 per evaluation
Characters per line200
Lines beyond the cap are dropped. The console panel shows a truncation notice when the limit is reached.

Banned constructs

The following are rejected at parse time (not at runtime - the script will not evaluate at all):
  • Function, eval, globalThis, window, self
  • WebAssembly, Atomics, SharedArrayBuffer
  • Reflect, Proxy
  • setTimeout, setInterval, setImmediate, queueMicrotask
  • fetch, XMLHttpRequest, WebSocket, Worker
  • process, require, __dirname, __filename
  • import declarations and dynamic import()
  • with statements
  • async function / async () =>
  • Generators
  • for await ... of
  • while(true) without a syntactic break
  • for(;;) without a break
  • Literal loop bounds > 100 000
  • Property walks through __proto__ / constructor / prototype

Performance tips

How to stay within budgets on large bar counts.

Troubleshooting

Common limit-related error messages.

Series

64-series budget details.