Open JustinGuese opened 10 months ago
or is that functionality actually already there?
class _Data:
"""
A data array accessor. Provides access to OHLCV "columns"
as a standard `pd.DataFrame` would, except it's not a DataFrame
and the returned "series" are _not_ `pd.Series` but `np.ndarray`
for performance reasons.
"""
def __init__(self, df: pd.DataFrame):
self.__df = df
self.__i = len(df)
self.__pip: Optional[float] = None
self.__cache: Dict[str, _Array] = {}
self.__arrays: Dict[str, _Array] = {}
self._update()
so would I pass something like data = { "MSFT" : yf.download("MSFT"), "AAPL" : ...?
Check out https://github.com/dodid/minitrade, a fork from this project which allows for multiasset backtesting. Would love to have this functionality here under @kernc project though!
Seconding this since it is getting more important to mess with pair trading. Also @PabloCanovas do you know of any equivalents for bt
?
You may want to take a look at https://github.com/s-kust/python-backtesting-template/
You can easily run backtests of your strategy for several (or several dozen) tickers simultaneously. The results of these backtests are combined and saved in the output.xlsx file.
Hi, I like the direction where backtesting.py is going, but I am missing some backtrader functionality... Maybe the most important - currently only one stock is supported right?
Because if I have a strategy which uses 2 stocks, how would I deal with that? The backtrader way was using self.datas instead of data, which then becomes an array with all the stock datas, and then obviously the buy/sell functions would need a ticker parameter... Or is there already a way to achieve this?