> ## Documentation Index
> Fetch the complete documentation index at: https://systematica.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Reports

> systematica.tools.schedulers.reports

## `ReportScheduler`

```python theme={null}
ReportScheduler(
    template: str,
    loader_cls: vectorbtpro.data.base.Data,
    loader_params: Dict[str, Any],
    model_cls: Any,
    all_params: Dict[str, Any],
    messenger: BaseMessenger,
    lookback: int = None,
    since: str = None,
    set_theme: str = 'dark',
    logger: systematica.generic.loggers.Logger = None,
)
```

Scheduled report analytics.

Method generated by attrs for class ReportScheduler.

### Ancestors

* `systematica.tools.schedulers.base.BaseScheduler`
* `abc.ABC`

### Class variables

* `template: str`: Template name.

* `loader_cls: vectorbtpro.data.base.Data`: Loader class.

* `loader_params: Dict[str, Any]`: Loader parameters.

* `model_cls: Any`: Model strategy.

* `all_params: Dict[str, Any]`: Model Parameters.

* `messenger: systematica.tools.messengers.base.BaseMessenger`: Custom `BaseMessenger`.

* `lookback: int`: Number of days (int) to slice the data for analytics.

* `since: str`: Date (string in YYYY-MM-DD format) to slice the data for analytics.

* `set_theme: str`: Set plot theme. Defaults to 'dark'

* `logger: systematica.generic.loggers.Logger`: Custom logger.

### Methods

#### `execute`

```python theme={null}
execute(
    self,
)
```

Create and send dashboard.

* The method slices the data and portfolio using the `lookback` period.
* It generates a performance dashboard using the `plot_dashboard`
  utility.
* The report is uploaded to the configured messenger with a summary
  message.
