PineForge HPO 1.11.0
Native hyperparameter optimization for PineForge strategies
Loading...
Searching...
No Matches
pineforge::hpo::BacktestConfiguration Struct Reference

Immutable engine settings applied to every execution owned by a TrialExecutor. More...

#include <pineforge/hpo/trial_executor.hpp>

Public Attributes

std::string input_timeframe
 Timeframe represented by the input Dataset bars.
 
std::string script_timeframe
 Pine strategy execution timeframe; may differ from the input timeframe.
 
std::string chart_timezone
 Optional chart timezone applied through the strategy plugin.
 
bool bar_magnifier = false
 Enables PineForge bar-magnifier sampling.
 
int magnifier_samples = 4
 Positive number of magnifier samples per sub-bar.
 
pf_magnifier_distribution_t magnifier_distribution = PF_MAGNIFIER_ENDPOINTS
 Distribution used to place magnifier samples.
 
bool capture_equity_curve = true
 Whether ReportSnapshot owns a copy of the report equity curve.
 
bool capture_trades = false
 Whether ReportSnapshot owns the complete C-ABI trade records (off in the HPO hot loop).
 
bool return_stats_bar = false
 Computes the returns.bar statistics from the report's equity curve (see docs/return-stats.md).
 
bool return_stats_monthly = false
 Computes the returns.monthly statistics; the chart timezone above selects the calendar (only UTC is defined) and is read from this configuration, never from the process environment.
 
std::uint32_t pbo_blocks = 0
 Number of blocks S of the bar series to reduce per completed trial, and 0, the default, means the blocks are not requested.
 
std::optional< SymbolInfo > symbol_info
 Optional instrument metadata, applied after inputs and overrides.
 
std::shared_ptr< const SymbolFeeds > symbol_feeds
 Fixed other-symbol bars loaded once, validated before trials, and shared read-only.
 

Detailed Description

Immutable engine settings applied to every execution owned by a TrialExecutor.

Definition at line 26 of file trial_executor.hpp.

Member Data Documentation

◆ bar_magnifier

bool pineforge::hpo::BacktestConfiguration::bar_magnifier = false

Enables PineForge bar-magnifier sampling.

Definition at line 34 of file trial_executor.hpp.

◆ capture_equity_curve

bool pineforge::hpo::BacktestConfiguration::capture_equity_curve = true

Whether ReportSnapshot owns a copy of the report equity curve.

Scalar-only HPO can disable this copy. The default retains it for portfolio and custom objective consumers.

Definition at line 44 of file trial_executor.hpp.

◆ capture_trades

bool pineforge::hpo::BacktestConfiguration::capture_trades = false

Whether ReportSnapshot owns the complete C-ABI trade records (off in the HPO hot loop).

Definition at line 46 of file trial_executor.hpp.

◆ chart_timezone

std::string pineforge::hpo::BacktestConfiguration::chart_timezone

Optional chart timezone applied through the strategy plugin.

Definition at line 32 of file trial_executor.hpp.

◆ input_timeframe

std::string pineforge::hpo::BacktestConfiguration::input_timeframe

Timeframe represented by the input Dataset bars.

Definition at line 28 of file trial_executor.hpp.

◆ magnifier_distribution

pf_magnifier_distribution_t pineforge::hpo::BacktestConfiguration::magnifier_distribution = PF_MAGNIFIER_ENDPOINTS

Distribution used to place magnifier samples.

Definition at line 38 of file trial_executor.hpp.

◆ magnifier_samples

int pineforge::hpo::BacktestConfiguration::magnifier_samples = 4

Positive number of magnifier samples per sub-bar.

Definition at line 36 of file trial_executor.hpp.

◆ pbo_blocks

std::uint32_t pineforge::hpo::BacktestConfiguration::pbo_blocks = 0

Number of blocks S of the bar series to reduce per completed trial, and 0, the default, means the blocks are not requested.

Blocks are reduced from the full-window equity curve before the report is released, on the full window only: a pruned prefix is a different, shorter series and is never reduced against the S of the full window. A request that cannot be served, an odd S, a curve with fewer intervals than S and the like, is reported through the snapshot's block status and never as a trial error, so requesting blocks cannot move the optimizer's history.

Definition at line 63 of file trial_executor.hpp.

◆ return_stats_bar

bool pineforge::hpo::BacktestConfiguration::return_stats_bar = false

Computes the returns.bar statistics from the report's equity curve (see docs/return-stats.md).

Both return-statistics flags false, the default, means no reduction, no canary and no stored value: the executor behaves as before.

Definition at line 50 of file trial_executor.hpp.

◆ return_stats_monthly

bool pineforge::hpo::BacktestConfiguration::return_stats_monthly = false

Computes the returns.monthly statistics; the chart timezone above selects the calendar (only UTC is defined) and is read from this configuration, never from the process environment.

Definition at line 54 of file trial_executor.hpp.

◆ script_timeframe

std::string pineforge::hpo::BacktestConfiguration::script_timeframe

Pine strategy execution timeframe; may differ from the input timeframe.

Definition at line 30 of file trial_executor.hpp.

◆ symbol_feeds

std::shared_ptr<const SymbolFeeds> pineforge::hpo::BacktestConfiguration::symbol_feeds

Fixed other-symbol bars loaded once, validated before trials, and shared read-only.

Definition at line 67 of file trial_executor.hpp.

◆ symbol_info

std::optional<SymbolInfo> pineforge::hpo::BacktestConfiguration::symbol_info

Optional instrument metadata, applied after inputs and overrides.

Definition at line 65 of file trial_executor.hpp.


The documentation for this struct was generated from the following file: