kernc / backtesting.py

:mag_right: :chart_with_upwards_trend: :snake: :moneybag: Backtest trading strategies in Python.
https://kernc.github.io/backtesting.py/
GNU Affero General Public License v3.0
5.06k stars 990 forks source link

bt.plot() error #1004

Closed sitwano closed 1 year ago

sitwano commented 1 year ago

Expected Behavior

calling bt.plot() opens the browser and plots all the indicators and relevant data.

Actual Behavior

ERROR:

File ~/.local/lib/python3.11/site-packages/spyder_kernels/py3compat.py:356 in compat_exec exec(code, globals, locals)

File ~/Documents/trading/DeFi/uni_trading_algo/my_backtest.py:369 bt.plot()

File ~/.local/lib/python3.11/site-packages/backtesting/backtesting.py:1592 in plot return plot(

File ~/.local/lib/python3.11/site-packages/backtesting/_plotting.py:203 in plot df, indicators, equity_data, trades = _maybe_resample_data(

File ~/.local/lib/python3.11/site-packages/backtesting/_plotting.py:153 in _maybe_resample_data trades = trades.assign(count=1).resample(freq, on='ExitTime', label='right').agg(dict(

File ~/.local/lib/python3.11/site-packages/pandas/core/resample.py:329 in aggregate result = ResamplerWindowApply(self, func, args=args, kwargs=kwargs).agg()

File ~/.local/lib/python3.11/site-packages/pandas/core/apply.py:163 in agg return self.agg_dict_like()

File ~/.local/lib/python3.11/site-packages/pandas/core/apply.py:420 in agg_dict_like results = {

File ~/.local/lib/python3.11/site-packages/pandas/core/apply.py:421 in key: obj._gotitem(key, ndim=1).agg(how) for key, how in arg.items()

File ~/.local/lib/python3.11/site-packages/pandas/core/groupby/generic.py:269 in aggregate return self._python_agg_general(func, *args, **kwargs)

File ~/.local/lib/python3.11/site-packages/pandas/core/groupby/generic.py:288 in _python_agg_general result = self.grouper.agg_series(obj, f)

File ~/.local/lib/python3.11/site-packages/pandas/core/groupby/ops.py:994 in agg_series result = self._aggregate_series_pure_python(obj, func)

File ~/.local/lib/python3.11/site-packages/pandas/core/groupby/ops.py:1015 in _aggregate_series_pure_python res = func(group)

File ~/.local/lib/python3.11/site-packages/pandas/core/groupby/generic.py:285 in f = lambda x: func(x, *args, **kwargs)

File ~/.local/lib/python3.11/site-packages/backtesting/_plotting.py:148 in f new_bar_idx = new_index.get_loc(mean_time, method='nearest')

TypeError: Index.get_loc() got an unexpected keyword argument 'method'

Steps to Reproduce

  1. Fetch historical data from python-binance
  2. Backtest data
  3. Plot

python code goes here

Additional info