code: def _calculate_report_data(df: pd.DataFrame) -> pd.DataFrame:
      """
  
      :param df:
      :return:
      """
      index_names = df.index.names
      df.index = df.index.strftime("%Y-%m-%d")
  
      report_df = pd.DataFrame()
  
      report_df["cum_bench"] = df["bench"].cumsum()
      report_df["cum_return_wo_cost"] = df["return"].cumsum()
      report_df["cum_return_w_cost"] = (
          df["return"] - df["cost"]
      ).cumsum()
      # report_df['cum_return'] - report_df['cum_return'].cummax()
      report_df["return_wo_mdd"] = _calculate_mdd(
          report_df["cum_return_wo_cost"]
      )
      report_df["return_w_cost_mdd"] = _calculate_mdd(
          (df["return"] - df["cost"]).cumsum()
      )
  
      report_df["cum_ex_return_wo_cost"] = (
          df["return"] - df["bench"]
      ).cumsum()
      report_df["cum_ex_return_w_cost"] = (
          df["return"] - df["bench"] - df["cost"]
      ).cumsum()
      report_df["cum_ex_return_wo_cost_mdd"] = _calculate_mdd(
          (df["return"] - df["bench"]).cumsum()
      )
      report_df["cum_ex_return_w_cost_mdd"] = _calculate_mdd(
          (df["return"] - df["cost"] - df["bench"]).cumsum()
      )
      # return_wo_mdd , return_w_cost_mdd,  cum_ex_return_wo_cost_mdd, cum_ex_return_w
  
      report_df["turnover"] = df["turnover"]
      report_df.sort_index(ascending=True, inplace=True)
  
      report_df.index.names = index_names
      return report_df
  
imports: import pandas
  from ..graph import SubplotsGraph, BaseGraph
label_desc: Use image node_id 3 for calling a global function with example usage: _calculate_report_data(df) and returns: report_df