These days pyfolio relies on empyrical for calculations like Sharpe.
The definition of the sharpe_ratio in empyrical (See here: empyrical - Sharpe Ratiodef sharpe_ratio(returns, risk_free=0, period=DAILY, annualization=None):
There is already a difference with the following :- ``riskfreerate`` (default: 0.01 -> 1%)
and a second here:- ``timeframe``: (default: ``TimeFrame.Years``)
because empyrical has a default of DAILY. This may be an entirely different thing and not directly related to the timeframe.
You'll have to check both sources.