algotradelib 0.0.0.9000
C++ header-only library for algorithmic trading
Loading...
Searching...
No Matches
engine.hpp File Reference

The backtest engine: Backtester replays bars (and quotes) through the same Runner a live session uses. More...

#include "./clock.hpp"
#include "./fill.hpp"
#include "./ledger.hpp"
#include "../runner/order_updates.hpp"
#include "../runner/runner.hpp"
#include <algotradelib/core>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <optional>
#include <stdexcept>
#include <string>
#include <utility>
#include <vector>
Include dependency graph for engine.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  algotradelib::backtest::QueuedOrder< BrokerTag >
 One order a replay accepted and has not yet filled or withdrawn. More...
class  algotradelib::backtest::QueueingExecutor< BrokerTag >
 The replay's executor: accepts orders and holds them until they fill or are withdrawn. More...
struct  algotradelib::backtest::EquityPoint
 One point on a replay's equity curve, recorded per bar. More...
struct  algotradelib::backtest::ReplayResult
 Everything a replay produced; summarize turns it into a Report. More...
struct  algotradelib::backtest::ReplayConfig
 A replay's settings, besides the strategy and the bars. More...
class  algotradelib::backtest::Backtester< Strategy, CapsType >
 Replays bars (and quotes) through one strategy, with a ledger and a fill model. More...

Namespaces

namespace  algotradelib
 The library: broker-neutral types (core), and the modules below.
namespace  algotradelib::backtest
 Replays a strategy over stored bars: fill and cost models, the replay ledger, and the report.

Detailed Description

The backtest engine: Backtester replays bars (and quotes) through the same Runner a live session uses.

An order decided on bar n is queued and filled against bar n+1 or later, never the bar it was decided on. Nothing assumes a bar is a day: the same engine replays intraday and daily bars.

Definition in file engine.hpp.