Dev Updates
Development in the open. PyneCore and PyneComp releases land here as they happen — what got fixed, what got added, and now and then what we got wrong — along with progress on work that is not finished yet. Synced directly from our Discord dev-updates channel.
PyneCore’s full changelog lives on GitHub; PyneComp’s progress you will find here and nowhere else. More granular and more technical than News — this is the engineering log, not the announcements.
PyneComp v6.1.1 — maps returned from methods iterate correctly, and request.security…
A for [k, v] in loop over a map returned by a user method (h.getMap()) or read from a field (hs.get(0).m) put the key into v too; v now gets the value. (#112) - In Pine v6, c ? <bool> : na and c ? na : <bool> are now…
Read more →PyneCore v6.13.5 released — Python 3.15 support and a batch of TradingView parity fixes…
Python 3.15 support, with wheels built for cp315 A history reference in an else if condition, or in a later switch case, now advances on every bar the if runs (#118) - a[1] of an array, matrix or map is now the object…
Read more →PyneIDE v0.14.2 (Preview) adds bid/ask spread costs to strategy backtests and optional…
Set Spread in strategy Properties to charge bid/ask costs and choose which side triggers stop orders. - Enable Ask side in the Symbol Browser when downloading cTrader data.
Read more →PyneCore v6.13.4 released — OHLCV files can store the ask side of bid/ask feeds, and the…
OHLCV v2 stores the ask side in the record; the bid and ask series are real on bars with a quoted ask - New strategy(spread_type=...): strategy.spread.trade fills buys at the ask and triggers every order on the side it…
Read more →PyneComp v6.1.0 — compiling and converting now run on a completely rewritten compiler.
Scripts that TradingView itself rejects are now reported as errors instead of being compiled. - When you convert a script to v6, everything that needs no change keeps your original text: indicator("N") is no longer…
Read more →PyneCore v6.13.3 released — Pine semantics fixes measured on TradingView, a Typer 0.29…
year, month, dayofmonth and the other date components of an na time now read it as the Unix epoch in the requested time zone, as TradingView does (#111) - timestamp() recognizes a month word by its first three letters,…
Read more →PyneComp v6.0.82 — scripts that TradingView rejects are now refused with a clear error,…
import someone/class/1, an input.source whose default is another input, and an undeclared type such as array.new<foo> now stop with a compile error at the right line instead of producing a script that fails when it runs…
Read more →PyneComp v6.0.81 — Compiled and converted scripts now match TradingView more closely on…
A var or varip variable initialized with an if, switch, for or while block now runs that block only until it yields a value, then never again, as on TradingView - A v6 for loop whose to bound calls a function now…
Read more →PyneCore v6.13.2 released — Pine semantics measured on TradingView: exact constant…
bool() of a constant is exact (bool(1e-10) is true), and v4/v5 bool(na) stays na (#107) - for loops: a by of zero or below is an error, also on descending loops; a fractional counter's end is compared with Pine's…
Read more →PyneCore v6.13.1 released — coin-flip backtests now run in parallel and stop early once…
pyne robustness --jobs runs the per-draw coin-flip backtests in parallel processes; the results do not depend on the worker count - --early-stop edge|better|off ends a coin-flip test as soon as its verdict is clear…
Read more →