Skip to content

v7.29.0

Choose a tag to compare

@MDUYN MDUYN released this 18 Mar 15:15
· 315 commits to main since this release

Release v7.29.0

Bug Fixes

  • fix: TypeError in stop-loss/take-profit evaluation when last_reported_price is None (#384)
    • Added defensive None guard in TradeStopLoss.has_triggered() and TradeTakeProfit.has_triggered()
    • Re-query open trades after order fills so newly created trades get price updates before stop-loss/take-profit evaluation
  • fix: KeyError trades_average_gain_percentage in trade_metrics_table.py (#352)
    • Corrected dictionary key names: trades_average_gain_percentageaverage_trade_gain_percentage, trades_average_loss_percentageaverage_trade_loss_percentage

Dependency Updates

  • Bump pyjwt 2.10.1 → 2.12.0
  • Bump tornado 6.5.2 → 6.5.5
  • Bump protobuf 6.33.1 → 6.33.5
  • Bump cryptography 46.0.3 → 46.0.5
  • Bump flask 3.1.2 → 3.1.3
  • Bump werkzeug 3.1.5 → 3.1.6
  • Bump ajv 8.17.1 → 8.18.0 (docusaurus)
  • Bump svgo 3.3.2 → 3.3.3 (docusaurus)
  • Bump minimatch and serve-handler (docusaurus)

Test Improvements

  • Refactored scenario tests for deterministic offline execution using committed test data (#376, #381)
  • Added regression tests for #384 (stop-loss/take-profit None price) and #352 (trade metrics KeyError)
  • Excluded dependency_injector from coverage reports

Internal

  • Resolved CI test failures (timezone-aware dates, polars dtype, metrics assertion)
  • Version bump: v7.28.0 → v7.29.0