Analyzers stats when datas have only trading days
-
Hi there,
I'd like to know if the fact that a line has only trading days (i.e 180 days instead of 365) in a year, could affect analyzers calculations such as annualized returns, because something like that would be wrong:dt = st.data._dataname['open'].index bt_period = dt[-1] - dt[0] bt_period_days = bt_period.days annual_return_pct = (1 + total_return)**(365.25 / bt_period_days) - 100)
-
I've used different sources of data for stocks and futures, but never seen weekends or holidays included in the data sets. I assume that the standard approach is to skip empty days and keep only trading days.
bt
uses standard number of days (252) for the annualization. -
@ab_trader :
Thanks, yes of course. The example above came from this guy's performance report:
https://github.com/Oxylo/btreport/blob/master/report.py and it relies on ALL the days of the period, just checking on how the built-in analyzers deal with that... -
The calculations above looks correct. Doesn't matter how many trading days you have,
dt[-1] - dt[0]
will give you calendar number of days. -
@exu said in Analyzers stats when datas have only trading days:
just checking on how the built-in analyzers deal with that...
I fail to understand what the built-in analyzers have to deal with. They have de-facto default values (the ones mostly used by the industry/people/call-it-X) which you can customize to your liking.