![]() |
algotradelib 0.0.0.9000
C++ header-only library for algorithmic trading
|
The events a runner delivers to a strategy's handlers, and the market phase. More...
#include <algotradelib/core>#include <array>#include <chrono>#include <cstdint>#include <optional>#include <ratio>#include <string>#include <vector>Go to the source code of this file.
Classes | |
| struct | algotradelib::strategy::SessionWindow |
| The intraday session of a market, as the operator states it. More... | |
| struct | algotradelib::strategy::BarEvent |
| One bar, delivered to on_bar. More... | |
| struct | algotradelib::strategy::BarSlice |
| Every instrument's bar of one interval for one period end, delivered to on_bars. More... | |
| struct | algotradelib::strategy::QuoteEvent |
| A quote the runner has just read, delivered to on_quote. More... | |
| struct | algotradelib::strategy::Fill |
| One execution of an order the strategy placed, delivered to on_fill. More... | |
Namespaces | |
| namespace | algotradelib |
| The library: broker-neutral types (core), and the modules below. | |
| namespace | algotradelib::strategy |
| What a strategy sees and emits: events, intents, the portfolio, reconciliation and risk limits. | |
Enumerations | |
| enum class | algotradelib::strategy::MarketPhase { algotradelib::strategy::UNKNOWN , algotradelib::strategy::CLOSED , algotradelib::strategy::PRE_OPEN , algotradelib::strategy::OPEN , algotradelib::strategy::POST_CLOSE } |
| Where the clock stands relative to the trading session. More... | |
Functions | |
| constexpr std::string_view | algotradelib::strategy::market_phase_name (MarketPhase phase) noexcept |
| Returns a lowercase name for a phase, such as "pre_open", for logs and display. | |
| constexpr bool | algotradelib::strategy::market_phase_session_ended (MarketPhase phase) noexcept |
| Tests whether a phase means the day's session is over (or never opened), so a day order no longer works. | |
| std::chrono::system_clock::time_point | algotradelib::strategy::bar_period_end (const Bar &bar, BarInterval interval, BarStamp stamp) |
| Computes the instant a bar's period ended. | |
| BarEvent | algotradelib::strategy::make_bar_event (InstrumentId instrument, BarInterval interval, BarStamp stamp, Bar bar) |
| Makes a bar event, computing its period_end_ with bar_period_end. | |
Variables | |
| constexpr std::array< MarketPhase, 5 > | algotradelib::strategy::all_market_phases |
| Every MarketPhase, in declaration order. | |
The events a runner delivers to a strategy's handlers, and the market phase.
Each event is complete when the handler receives it; a handler decides and returns without requesting more data.
Definition in file event.hpp.