Skip to content

Datastore Backtest Statistics

The Datastore Back Test Statistics calculates a pro-forma backtest of a portfolio vs. a specific benchmark over a designed period of time, creating a new datastore with the backtest results.

Parameters

The Datastore BackTest Statistics worker must receive specific parameters in order to execute properly. When parameters are not set correctly it may cause the worker to not work as expected. This worker's parameters are separated in the following tabs: Input, Output and Advanced.

Input

The Input tab contains parameters which are consumed by the worker, in order to execute its calculations.

Portfolio

Set the target portfolio using Fixed Portfolio, Get Latest or Upstream Data variants.

Workspace

Set the research workspace of the portfolio using Fixed Workspace variant. The default is using the current workspace.

Benchmark

Specify a benchmark to be used in the backtest using Symbol variant. The default is using IND:SPX.

Risk Free Rate Index

Select the Risk Free Rate to be used in the calculation of back test statistics.

Date Range

Set the Date Range that will be used in the calculations. These options can be selected from Custom Range, Last N Periods and Period to Date.

Custom Range

Select the oldest and newest date to use in the calculation.

Last N Periods

Select the latest periods to use through the following options:  Days, Weeks, Months and Years.

Period to Date

Select a Period to date to use in the calculation through the following options: Month, Quarter and Year.

Output

The Output tab contains parameters that defines the worker execution results, and how it will be provided to downstream workers.

Name

Set the output datastore name using Template Text or Upstream Data variants. Default setting is the name of the input portfolio.

Date

Set the output datastore date using Fixed Date or Upstream Data variants. Default setting is the date of the input portfolio.

Workspace

Set the workspace in which the output datastore will be saved on the platform using Fixed Workspace. Default setting is the workspace of the input portfolio.

Tags

Set the output datastore tags using Fixed Tags or Upstream Data variants. Default setting is the tags of the input portfolio.

Persist

Select if the output datastore will be saved on the platform or be a transient one (temporary during workflow execution), through the following options: Transient or Create. The default is a transient datastore.

Advanced

The Advanced tab contains the configuration of the datastore column generation parameters.

Header Suffix

Set the header suffix that will be added to the end of selected properties columns in the datastore using Template Text or Upstream Data variants. The default is not using header suffix.

Result

Once the worker finishes its executions successfully, it will return a result object containing the datastore to the workflow, which can be used by downstream workers. Below you can see an example of the datastore result object hierarchy.

  • Datastore (datastore)
  • ID (string)
  • Name (string)
  • Date (date)
  • Tags (list of strings)
  • Data (list of lists)

The Data component is composed of the columns common to all datastores, attributes and aggregations, including the selected properties columns. The possible columns added to the datastore are listed below.

  • "port_bt_start_date"
  • "port_bt_end_date"
  • "port_bt_monthly_return_average"
  • "port_bt_monthly_return_high"
  • "port_bt_monthly_return_low"
  • "port_bt_monthly_return_compounded"
  • "port_bt_annual_return_compounded"
  • "port_bt_monthly_return_cummulative"
  • "port_bt_percent_positive_months"
  • "port_bt_percent_negative_months"
  • "port_bt_average_positive_month",
  • "port_bt_average_negative_month"
  • "port_bt_profit_to_loss"
  • "port_bt_maximum_drawdown"
  • "port_bt_maximum_drawdown_start"
  • "port_bt_maximum_drawdown_end"
  • "port_bt_streak_positive_months"
  • "port_bt_streak_positive_start"
  • "port_bt_streak_positive_end"
  • "port_bt_streak_negative_months"
  • "port_bt_streak_negative_start"
  • "port_bt_streak_negative_end"
  • "port_bt_monthly_standard_deviation"
  • "port_bt_annual_standard_deviation"
  • "port_bt_annual_var"
  • "port_bt_annual_var_confidence"
  • "port_bt_monthly_downside_deviation"
  • "port_bt_annual_downside_deviation"
  • "port_bt_skewness"
  • "port_bt_excess_kurtosis"
  • "port_bt_risk_free_rate"
  • "port_bt_risk_free_rate_average"
  • "port_bt_monthly_sharpe_ratio"
  • "port_bt_annual_sharpe_ratio"
  • "port_bt_monthly_sortino_ratio"
  • "port_bt_annual_sortino_ratio"
  • "port_bt_monthly_treynor_ratio"
  • "port_bt_annual_treynor_ratio"
  • "port_bt_monthly_information_ratio"
  • "port_bt_annual_information_ratio"
  • "port_bt_benchmark"
  • "port_bt_monthly_alpha"
  • "port_bt_annual_alpha"
  • "port_bt_beta"
  • "port_bt_correlation"
  • "port_bt_r2"
  • "port_bt_monthly_tracking_error"
  • "port_bt_annual_tracking_error"
  • "port_bt_upside_capture"
  • "port_bt_downside_capture"