For code/output blocks: Use ``` (aka backtick or grave accent) in a single line before and after the block. See: http://commonmark.org/help/
Pyfolio Integration Error : Grouper and axis must be same length
-
Hi there,
I am trying to generate tear sheet for intraday strategy. I have followed every single part of the documentation but failed to resolve this issue.1 pf.create_full_tear_sheet(returns=retur, positions=positions, transactions=transactions, estimate_intraday=True) --------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-116-ea97606746b1> in <module> ----> 1 pf.create_full_tear_sheet(returns=retur, positions=positions, transactions=transactions, estimate_intraday=True) ~/anaconda3/lib/python3.7/site-packages/pyfolio/tears.py in create_full_tear_sheet(returns, positions, transactions, market_data, benchmark_rets, slippage, live_start_date, sector_mappings, bayesian, round_trips, estimate_intraday, hide_positions, cone_std, bootstrap, unadjusted_returns, style_factor_panel, sectors, caps, shares_held, volumes, percentile, turnover_denom, set_context, factor_returns, factor_loadings, pos_in_dollars, header_rows, factor_partitions) 197 198 positions = utils.check_intraday(estimate_intraday, returns, --> 199 positions, transactions) 200 201 create_returns_tear_sheet( ~/anaconda3/lib/python3.7/site-packages/pyfolio/utils.py in check_intraday(estimate, returns, positions, transactions) 306 elif estimate: 307 if positions is not None and transactions is not None: --> 308 return estimate_intraday(returns, positions, transactions) 309 else: 310 raise ValueError('Positions and txns needed to estimate intraday') ~/anaconda3/lib/python3.7/site-packages/pyfolio/utils.py in estimate_intraday(returns, positions, transactions, EOD_hour) 350 # Cumulate transaction amounts each day 351 txn_val['date'] = txn_val.index.date --> 352 txn_val = txn_val.groupby('date').cumsum() 353 354 # Calculate exposure, then take peak of exposure every day ~/anaconda3/lib/python3.7/site-packages/pandas/core/generic.py in groupby(self, by, axis, level, as_index, sort, group_keys, squeeze, observed, **kwargs) 7892 squeeze=squeeze, 7893 observed=observed, -> 7894 **kwargs 7895 ) 7896 ~/anaconda3/lib/python3.7/site-packages/pandas/core/groupby/groupby.py in groupby(obj, by, **kwds) 2520 raise TypeError("invalid type: {}".format(obj)) 2521 -> 2522 return klass(obj, by, **kwds) ~/anaconda3/lib/python3.7/site-packages/pandas/core/groupby/groupby.py in __init__(self, obj, keys, axis, level, grouper, exclusions, selection, as_index, sort, group_keys, squeeze, observed, **kwargs) 389 sort=sort, 390 observed=observed, --> 391 mutated=self.mutated, 392 ) 393 ~/anaconda3/lib/python3.7/site-packages/pandas/core/groupby/grouper.py in _get_grouper(obj, key, axis, level, sort, observed, mutated, validate) 650 in_axis=in_axis, 651 ) --> 652 if not isinstance(gpr, Grouping) 653 else gpr 654 ) ~/anaconda3/lib/python3.7/site-packages/pandas/core/groupby/grouper.py in __init__(self, index, grouper, obj, name, level, sort, observed, in_axis) 257 self.name = name 258 self.level = level --> 259 self.grouper = _convert_grouper(index, grouper) 260 self.all_grouper = None 261 self.index = index ~/anaconda3/lib/python3.7/site-packages/pandas/core/groupby/grouper.py in _convert_grouper(axis, grouper) 680 elif isinstance(grouper, (list, Series, Index, np.ndarray)): 681 if len(grouper) != len(axis): --> 682 raise ValueError("Grouper and axis must be same length") 683 return grouper 684 else: ValueError: Grouper and axis must be same length
Please help
-
-
Pyfolio
integration is deprecated due to API changes -
Pyfolio
was not designed for intraday data.
-