PyneCore v6.8.6 released — TradingView's fill prices, average entry price and math.round…

Fixes

  • Filled prices are booked on the symbol’s tick grid, the form TradingView stores them in
  • strategy.position_avg_price is the accumulated cost divided by the position size, re-derived on every fill
  • math.round matches TradingView’s tie handling, including the 1e-10 tolerance its relational operators carry
  • A session-qualified time() / time_close() reports session bars instead of a masked timeframe grid; timeframe_bars_back walks those bars, and endpoints keep their nominal wall clock across DST changes
  • calc_on_order_fills re-executions stand where the fill happened, bounded to the four passes per bar TradingView shows
  • The newest leg of a pyramid round no longer stays unprotected — the exit bracket defers until the position book is complete
  • External-flatten detection works again for bots with an armed bracket, on a bounded 120 s confirmation clock
  • FIFO cleanup no longer tears down a live entry’s tracking after a netting fold
  • A reconnect backfill can no longer move the strategy’s clock backwards
  • The Pyne magic-comment pre-check accepts a module docstring longer than 1 KB

Features

  • adopt_untracked_position_legs() is the canonical adoption path for untracked venue legs on netting venues
  • import_hook.source_starts_with_pyne is public

Full release notes: https://github.com/PyneSys/pynecore/releases/tag/v6.8.6