TradeSummary#
API documentation for tradeexecutor.analysis.trade_analyser.TradeSummary Python class in Trading Strategy framework.
- class TradeSummary[source]#
- Bases: - object- Some generic statistics over all the trades - Warning - Be very careful when editing or removing existing fields here as this can intefere with legacy data testing - TDOO: Cleam this up - __init__(won, lost, zero_loss, stop_losses, undecided, realised_profit, open_value, uninvested_cash, initial_cash, extra_return, duration, average_winning_trade_profit_pc, average_losing_trade_loss_pc, biggest_winning_trade_pc, biggest_losing_trade_pc, average_duration_of_winning_trades, average_duration_of_losing_trades, time_bucket=None, total_trades=None, average_trade=None, median_trade=None, max_pos_cons=None, max_neg_cons=None, max_delta_neutral_cons=None, max_pullback=None, max_loss_risk=None, max_realised_loss=None, avg_realised_risk=None, average_delta_neutral_profit_pc=None, biggest_delta_neutral_pc=None, delta_neutral=0, take_profits=0, trade_volume=0.0, trade_volume_wo_vault=0.0, trade_volume_taxed=0.0, token_tax_paid=0.0, lp_fees_paid=0, lp_fees_paid_wo_vault=0, lp_fees_average_pc=0, lp_fees_average_pc_wo_vault=0, daily_returns=None, compounding_returns=None, winning_stop_losses=0, losing_stop_losses=0, winning_take_profits=0, losing_take_profits=0, median_win=None, median_loss=None, median_delta_neutral=None, sharpe_ratio=None, sortino_ratio=None, profit_factor=None, max_drawdown=None, max_runup=None, average_duration_of_delta_neutral_positions=None, average_duration_of_zero_loss_trades=None, average_duration_of_all_trades=None, unrealised_profit=None, average_interest_paid_usd=None, total_interest_paid_usd=None, median_interest_paid_usd=None, max_interest_paid_usd=None, min_interest_paid_usd=None, total_claimed_interest=None, average_duration_between_position_openings=None, average_position_frequency=None, average_duration_between_positions=0, average_duration_between_postions=0, time_in_market=None, time_in_market_volatile=None, start_at=None, end_at=None)#
- Parameters:
- won (int) – 
- lost (int) – 
- zero_loss (int) – 
- stop_losses (int) – 
- undecided (int) – 
- realised_profit (float) – 
- open_value (float) – 
- uninvested_cash (float) – 
- initial_cash (float) – 
- extra_return (float) – 
- average_duration_of_winning_trades (timedelta) – 
- average_duration_of_losing_trades (timedelta) – 
- time_bucket (Optional[TimeBucket]) – 
- delta_neutral (int) – 
- take_profits (int) – 
- trade_volume (float) – 
- trade_volume_wo_vault (float) – 
- trade_volume_taxed (float) – 
- token_tax_paid (float) – 
- daily_returns (Optional[Series]) – 
- compounding_returns (Optional[Series]) – 
- average_duration_of_delta_neutral_positions (Optional[timedelta]) – 
- average_duration_of_zero_loss_trades (Optional[timedelta]) – 
- average_duration_between_position_openings (Optional[timedelta]) – 
- average_duration_between_positions (int) – 
- average_duration_between_postions (int) – 
 
- Return type:
- None 
 
 - Methods - __init__(won, lost, zero_loss, stop_losses, ...)- display()- Create human readable summary tables and display them in IPython notebook. - format_bars(duration_timedelta)- format_duration(duration_timedelta)- Format the summary dataframe for display in Jupyter notebook with clickable links. - from_dict(kvs, *[, infer_missing])- from_json(s, *[, parse_float, parse_int, ...])- Get metrics displayed on a equity curve benchmark tooltip. - help_links()- schema(*[, infer_missing, only, exclude, ...])- single_column_dfs(*dfs)- to_dataframe([format_headings])- Creates a human-readable Pandas dataframe summary table from the object. - to_dict([encode_json])- to_json(*[, skipkeys, ensure_ascii, ...])- Attributes - won- lost- zero_loss- stop_losses- undecided- realised_profit- Value at the open positinos at the end - Cash at hand at the end - initial_cash- extra_return- duration- average_winning_trade_profit_pc- average_losing_trade_loss_pc- biggest_winning_trade_pc- biggest_losing_trade_pc- average_duration_of_winning_trades- average_duration_of_losing_trades- time_bucket- total_positions- win_percent- lost_percent- delta_neutral_percent- return_percent- annualised_return_percent- all_stop_loss_percent- lost_stop_loss_percent- all_take_profit_percent- won_take_profit_percent- average_net_profit- end_value- total_trades- average_trade- median_trade- max_pos_cons- max_neg_cons- max_delta_neutral_cons- max_pullback- max_loss_risk- max_realised_loss- avg_realised_risk- average_delta_neutral_profit_pc- biggest_delta_neutral_pc- delta_neutral- take_profits- trade_volume- trade_volume_wo_vault- trade_volume_taxed- token_tax_paid- lp_fees_paid- lp_fees_paid_wo_vault- lp_fees_average_pc- lp_fees_average_pc_wo_vault- advanced users can use this property instead of the provided quantstats helper methods - compounding_returns- winning_stop_losses- losing_stop_losses- winning_take_profits- losing_take_profits- winning_stop_losses_percent- losing_stop_losses_percent- winning_take_profits_percent- losing_take_profits_percent- median_win- median_loss- median_delta_neutral- sharpe_ratio- sortino_ratio- profit_factor- max_drawdown- max_runup- average_duration_of_delta_neutral_positions- average_duration_of_zero_loss_trades- average_duration_of_all_trades- Profit in open positions at the end - Interest stats - total_interest_paid_usd- median_interest_paid_usd- max_interest_paid_usd- min_interest_paid_usd- total_claimed_interest- average_duration_between_position_openings- average_position_frequency- average_duration_between_positions- average_duration_between_postions- time_in_market- time_in_market_volatile- When the backtesting started - When the backtesting started - daily_returns: Optional[Series]#
- advanced users can use this property instead of the provided quantstats helper methods 
 - get_trading_core_metrics()[source]#
- Get metrics displayed on a equity curve benchmark tooltip. - See :py:func:``tradeexecutor.analysis.grid_search._get_hover_template`. 
 - to_dataframe(format_headings=True)[source]#
- Creates a human-readable Pandas dataframe summary table from the object. - Return type:
- DataFrame 
 
 - static format_summary_dataframe(df)[source]#
- Format the summary dataframe for display in Jupyter notebook with clickable links. - Parameters:
- df (DataFrame) – The dataframe to format. 
- Returns:
- Formatted dataframe with clickable links. 
- Return type:
- DataFrame 
 
 - __init__(won, lost, zero_loss, stop_losses, undecided, realised_profit, open_value, uninvested_cash, initial_cash, extra_return, duration, average_winning_trade_profit_pc, average_losing_trade_loss_pc, biggest_winning_trade_pc, biggest_losing_trade_pc, average_duration_of_winning_trades, average_duration_of_losing_trades, time_bucket=None, total_trades=None, average_trade=None, median_trade=None, max_pos_cons=None, max_neg_cons=None, max_delta_neutral_cons=None, max_pullback=None, max_loss_risk=None, max_realised_loss=None, avg_realised_risk=None, average_delta_neutral_profit_pc=None, biggest_delta_neutral_pc=None, delta_neutral=0, take_profits=0, trade_volume=0.0, trade_volume_wo_vault=0.0, trade_volume_taxed=0.0, token_tax_paid=0.0, lp_fees_paid=0, lp_fees_paid_wo_vault=0, lp_fees_average_pc=0, lp_fees_average_pc_wo_vault=0, daily_returns=None, compounding_returns=None, winning_stop_losses=0, losing_stop_losses=0, winning_take_profits=0, losing_take_profits=0, median_win=None, median_loss=None, median_delta_neutral=None, sharpe_ratio=None, sortino_ratio=None, profit_factor=None, max_drawdown=None, max_runup=None, average_duration_of_delta_neutral_positions=None, average_duration_of_zero_loss_trades=None, average_duration_of_all_trades=None, unrealised_profit=None, average_interest_paid_usd=None, total_interest_paid_usd=None, median_interest_paid_usd=None, max_interest_paid_usd=None, min_interest_paid_usd=None, total_claimed_interest=None, average_duration_between_position_openings=None, average_position_frequency=None, average_duration_between_positions=0, average_duration_between_postions=0, time_in_market=None, time_in_market_volatile=None, start_at=None, end_at=None)#
- Parameters:
- won (int) – 
- lost (int) – 
- zero_loss (int) – 
- stop_losses (int) – 
- undecided (int) – 
- realised_profit (float) – 
- open_value (float) – 
- uninvested_cash (float) – 
- initial_cash (float) – 
- extra_return (float) – 
- average_duration_of_winning_trades (timedelta) – 
- average_duration_of_losing_trades (timedelta) – 
- time_bucket (Optional[TimeBucket]) – 
- delta_neutral (int) – 
- take_profits (int) – 
- trade_volume (float) – 
- trade_volume_wo_vault (float) – 
- trade_volume_taxed (float) – 
- token_tax_paid (float) – 
- daily_returns (Optional[Series]) – 
- compounding_returns (Optional[Series]) – 
- average_duration_of_delta_neutral_positions (Optional[timedelta]) – 
- average_duration_of_zero_loss_trades (Optional[timedelta]) – 
- average_duration_between_position_openings (Optional[timedelta]) – 
- average_duration_between_positions (int) – 
- average_duration_between_postions (int) – 
 
- Return type:
- None