|
PineForge v0.13.1-379-g9b50973
Deterministic PineScript v6 backtest runtime — C ABI reference
|
One complete setup value, staged/copied by NativeStrategyHost before it is applied at begin. More...
#include <native_run_spec.hpp>
One complete setup value, staged/copied by NativeStrategyHost before it is applied at begin.
This aggregate owns no host phase, consumed-run counter, parsed-calendar authority, physical account, or C transport presence mask. Empty required strings and zero capital/value/FX defaults make an incomplete value invalid; price_tick == 0 explicitly selects unquantized prices. No timezone/timeframe/instrument facts are inferred.
Definition at line 521 of file native_run_spec.hpp.
| native_order::RunIdentity pineforge::native_run_spec_v3::NativeRunSpec::identity |
Definition at line 522 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::input_tf |
Definition at line 523 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::script_tf |
Definition at line 524 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| bool pineforge::native_run_spec_v3::NativeRunSpec::timeframe_undetected = false |
A public begin with fewer than two bars may not establish a timeframe.
This preserves that explicit state without inventing a clock literal.
Definition at line 527 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| NativeSlotLabelPolicy pineforge::native_run_spec_v3::NativeRunSpec::slot_label_policy = NativeSlotLabelPolicy::Canonical |
Strict native hosts retain the canonical slot-label rule.
A provider feed may opt into raw, strictly-increasing caller labels. The declared type spellings below are the ones the native C++ ABI guard pins.
Definition at line 531 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| NativeFeedTolerance pineforge::native_run_spec_v3::NativeRunSpec::legacy_tolerance = NativeFeedTolerance::None |
Definition at line 532 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| NativePathOrder pineforge::native_run_spec_v3::NativeRunSpec::path_order = NativePathOrder::Auto |
Definition at line 533 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::ticker |
Definition at line 535 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::tickerid |
Definition at line 536 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::type |
Definition at line 537 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::currency |
Definition at line 538 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::basecurrency |
Definition at line 539 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::description |
Definition at line 540 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::volumetype |
Definition at line 541 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::timezone |
Definition at line 543 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::session |
Definition at line 544 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::string pineforge::native_run_spec_v3::NativeRunSpec::chart_timezone |
Definition at line 545 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| double pineforge::native_run_spec_v3::NativeRunSpec::initial_capital = 0.0 |
Definition at line 547 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| double pineforge::native_run_spec_v3::NativeRunSpec::point_value = 0.0 |
Definition at line 548 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| double pineforge::native_run_spec_v3::NativeRunSpec::account_fx = 0.0 |
Definition at line 549 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| double pineforge::native_run_spec_v3::NativeRunSpec::price_tick = 0.0 |
Definition at line 550 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::uint32_t pineforge::native_run_spec_v3::NativeRunSpec::slippage_ticks = 0 |
Definition at line 551 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| NativePriceGrid pineforge::native_run_spec_v3::NativeRunSpec::price_grid = NativePriceGrid::None |
Opt-in instrument grid.
None keeps unquantized prices; both quantizing modes require price_tick > 0 and round before slippage.
Definition at line 554 of file native_run_spec.hpp.
| NativeGridRounding pineforge::native_run_spec_v3::NativeRunSpec::grid_rounding = NativeGridRounding::HalfUp |
Definition at line 555 of file native_run_spec.hpp.
| NativeFeeKind pineforge::native_run_spec_v3::NativeRunSpec::fee_kind = NativeFeeKind::Percent |
Definition at line 556 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| double pineforge::native_run_spec_v3::NativeRunSpec::fee_value = 0.0 |
Definition at line 557 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::optional<double> pineforge::native_run_spec_v3::NativeRunSpec::quantity_grid |
Definition at line 559 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| NativeCloseExecution pineforge::native_run_spec_v3::NativeRunSpec::close_execution = NativeCloseExecution::NextEligiblePoint |
Definition at line 560 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| NativeAbortReporting pineforge::native_run_spec_v3::NativeRunSpec::abort_reporting = NativeAbortReporting::Error |
Definition at line 561 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::optional<double> pineforge::native_run_spec_v3::NativeRunSpec::max_abs_units |
Definition at line 562 of file native_run_spec.hpp.
| std::optional<std::uint64_t> pineforge::native_run_spec_v3::NativeRunSpec::max_open_lots |
Definition at line 563 of file native_run_spec.hpp.
| NativeOpenDirections pineforge::native_run_spec_v3::NativeRunSpec::allowed_open_directions = NativeOpenDirections::Both |
Definition at line 564 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::optional<double> pineforge::native_run_spec_v3::NativeRunSpec::initial_margin_fraction |
Definition at line 565 of file native_run_spec.hpp.
| std::optional<NativeMarginModel> pineforge::native_run_spec_v3::NativeRunSpec::margin |
Opt-in generic margin model.
Mutually exclusive with initial_margin_fraction, which remains the one-scalar spelling. Folded into the continuation digest only when it is present, so a spec that declares none keeps its pre-margin-model identity byte for byte.
Definition at line 571 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::optional<NativeRiskLimits> pineforge::native_run_spec_v3::NativeRunSpec::risk |
Opt-in generic account risk limits.
Absent is the whole default surface: nothing is measured, no risk event is appended, and the continuation digest is the pre-risk one. Folded into it only when the block is present, exactly as margin is.
Definition at line 576 of file native_run_spec.hpp.
| NativeReportPolicy pineforge::native_run_spec_v3::NativeRunSpec::report_policy = NativeReportPolicy::HostRecorded |
Definition at line 577 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| bool pineforge::native_run_spec_v3::NativeRunSpec::report_open_position_at_end = false |
Report a position still open at run end as a mark-to-market closed row at the last close.
KernelRecorded only, and reporting only: the live book, the realized sums and every hash are left exactly as the run left them. Inert under HostRecorded, whose host owns the whole report series.
Definition at line 582 of file native_run_spec.hpp.
| NativeCalculationTrigger pineforge::native_run_spec_v3::NativeRunSpec::calculation = NativeCalculationTrigger::BarClose |
Calculation timing.
BarClose is the established cadence and the whole default surface; the other triggers only add calculations, never move or remove one. max_recalculations_per_point bounds the fill cascade at one matching point: further executions at that point are still applied and still delivered to on_native_applied, they just stop driving a new calculation. Zero is a legal bound and means "deliver, never recalculate". All three fold into the continuation hash only once the trigger or the open-bar view is non-default, so a spec that leaves the cadence alone keeps the continuation identity it had before these fields existed.
Definition at line 593 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::uint32_t pineforge::native_run_spec_v3::NativeRunSpec::max_recalculations_per_point = 8 |
Definition at line 594 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| NativeOpenBarView pineforge::native_run_spec_v3::NativeRunSpec::open_bar_view = NativeOpenBarView::Complete |
Definition at line 595 of file native_run_spec.hpp.
| IntrabarPath pineforge::native_run_spec_v3::NativeRunSpec::intrabar {} |
Definition at line 596 of file native_run_spec.hpp.
Referenced by pineforge::source::PineExecutionAdapter::project().
| std::vector<NativeTimeframeSubscription> pineforge::native_run_spec_v3::NativeRunSpec::subscriptions |
Declared higher-timeframe series.
Empty is the whole default surface: no evaluator is registered, no feed is prepared, and the run spec's continuation digest is the pre-subscription one.
Definition at line 600 of file native_run_spec.hpp.
| std::optional<NativeAuxiliaryFeed> pineforge::native_run_spec_v3::NativeRunSpec::auxiliary_feed |
Opt-in auxiliary finer feed.
Absent is the whole default surface: nothing is stored, nothing is routed, and the continuation digest is the pre-feed one. Folded into it only when the block is present, exactly as margin and risk are.
Definition at line 605 of file native_run_spec.hpp.
Referenced by main().