These were the major changes contributing to each release:
(2021-12-13)
- Fix random generation with recent NumPy.
- Fix Pandas deprecation warnings.
- Replace Bokeh 3.0 deprecations.
(2021-08-03)
- New strategy performance method
backtesting.lib.compute_stats
(#281) - Improve plotting speed (#329) and optimization performance (#295) on large datasets.
- Commission constraints now allow for market-maker's rebates.
Backtest.plot
now returns the bokeh figure object for further processing.- Other small bugs and fixes.
(2021-01-25)
- Avoid some
pandas.Index
deprecations - Fix
Backtest.plot(show_legend=False)
for recent Bokeh
(2020-11-24)
- Faster model-based optimization using scikit-optimize (#154)
- Optionally faster optimization by randomized grid search (#154)
- Annualized Return/Volatility/Sharpe/Sortino/Calmar stats (#156)
- Auto close open trades on backtest finish
- Add
Backtest.plot(plot_return=)
, akin toplot_equity=
- Update Expectancy formula (#181)
(2020-10-27)
- Add
lib.random_ohlc_data()
OHLC data generator - Aggregate Equity on 'last' when plot resampling
- Update stats calculation for Buy & Hold to be long-only (#152)
(2020-09-10)
- Link hover crosshairs across plots
- Clicking plot legend glyph toggles indicator visibility
- Fix Bokeh tooltip showing literal ' '
(2020-08-21)
(2020-08-03)
- Add
Trade.entry_time/.exit_time
- Handle SL/TP hit on the same day the position was opened
(2020-07-15)
- New Order/Trade/Position API (#47)
- Add data pandas accessors
.df
and.s
- Add
Backtest(..., exclusive_orders=)
that closes previous trades on new orders - Add
Backtest(..., hedging=)
that makes FIFO trade closing optional - Add
bt.plot(reverse_indicators=)
param - Add
bt.plot(resample=)
and auto-downsample large data - Use geometric mean return in Sharpe/Sortino stats computation
(2020-07-14)
- Add Profit Factor statistic (#85)
(2020-03-23)
- Fix support for 2-D indicators
- Fix tooltip Date field formatting with Bokeh 2.0.0
(2020-03-09)
(2020-03-02)
(2020-02-25)
(2020-02-24)
- Show number of trades on OHLC plot legend
- Add parameter agg= to lib.resample_apply()
- Reset position price (etc.) after closing position
- Fix pandas insertion error on Windos
(2019-09-23)
- Make plot span 100% of browser width
(2019-09-23)
- Avoid multiprocessing trouble on Windos (#6)
- Add scatter plot indicators
(2019-01-15)
- Initial release