PINE//OPS
STATUSSTANDBY

Pine Script v6 compiler

The current Pine version, with v6 rules enforced.

v6
Press Compile to plot your script.
DATASAMPLE (600 daily bars)

What changes in Pine Script v6

Version 6 tightened several rules. PineOps enforces the ones that most often break scripts copied from older tutorials:

  • No implicit number → bool casts. if volume must become if volume != 0.
  • transp is gone. Use color.new(color.red, 80) instead of transp = 80.
  • when is gone from strategy.* calls — wrap the call in an if.
  • Lazy and / or. The right side is skipped when the left side decides the result.
  • Integer division. 5 / 2 is 2.5 in v6 and 2 in v5.
  • Enums and negative array indices are available.

What the engine supports

AreaSupported
Versionsv4, v5, v6 — version-specific errors with migration hints, and a one-click v4 → v5 → v6 converter
Languageseries and history operator [], var/varip, tuples, user functions, if/for/for…in/while/switch, user-defined types, methods, enums, arrays and maps
Built-ins50+ ta.* functions (SMA, EMA, RMA, WMA, HMA, VWMA, RSI, MACD, BB, ATR, Stochastic, CCI, MFI, DMI/ADX, Supertrend, SAR, pivots…), math.*, str.*, color.*, array.*, map.*, input.*
Outputplot, plotshape, plotchar, plotarrow, hline, bgcolor, barcolor, labels, alertcondition, log.*
Strategiesstrategy.entry, order, close, close_all, exit (stop/limit/profit/loss), commission, net profit, win rate, profit factor and drawdown
Not yetlibrary imports, matrix.*, real multi-symbol request.* data, lines/boxes/tables rendering, fill() rendering

Frequently asked questions

Is this the official TradingView compiler?

No. PineOps is an independent Pine Script engine written from scratch that runs in your browser. It checks syntax and version rules, executes your script bar by bar and plots the result. It covers a large subset of the language; anything it does not support yet is reported as a clear error rather than silently ignored.

Which Pine Script versions are supported?

Version 4, version 5 and version 6 (the current release). The engine reads the //@version= line and applies that version's rules — for example study() and sma() in v4, indicator() and ta.sma() in v5, and the stricter boolean rules of v6.

What market data does the script run on?

By default, 600 daily bars of built-in sample data that is identical on every run, so results are reproducible. You can also load your own OHLCV data from a CSV file — it is read locally and never uploaded.

Will my results match TradingView exactly?

Indicator math (moving averages, RSI, MACD, Bollinger Bands, ATR and so on) follows the published formulas, but the data is different and the strategy tester is a simplified emulator. Use PineOps to catch errors, learn the language and prototype quickly, then confirm on TradingView before trading.

Is my code sent to a server?

No. Compilation and execution happen entirely in your browser. Share links store the code in the URL fragment, which browsers do not send to servers.

Related tools

Recon mode — drag to orbit · click to ping · scroll for altitude