Skip to contents

Package

ledgr ledgr-package
ledgr: Deterministic Event-Sourced Backtesting

Experiment Workflow

ledgr_experiment()
Define a reusable ledgr experiment
print(<ledgr_experiment>)
Print a ledgr experiment
ledgr_strategy_schedule() ledgr_schedule_month_start() ledgr_schedule_month_end() ledgr_schedule_week_start() ledgr_schedule_quarter_start() ledgr_schedule_year_start() ledgr_schedule_dates() ledgr_schedule_weekday() ledgr_schedule_month_day() ledgr_schedule_from_param()
Declare when a strategy should make decisions
ledgr_universe_members() ledgr_valuation_stale() print(<ledgr_universe_rule>) print(<ledgr_valuation_policy>)
Point-in-time universe and valuation policies
ledgr_experiment_plan() print(<ledgr_experiment_plan>)
Inspect an experiment's effective execution plan
ledgr_opening()
Define an opening portfolio state
print(<ledgr_opening>)
Print an opening portfolio state
ledgr_opening_from_broker()
Create opening state from a broker adapter
ledgr_run()
Run a ledgr experiment
ledgr_feature_grid() ledgr_strategy_grid() ledgr_grid_cross() ledgr_grid_named() ledgr_grid_add_baseline()
Create feature, strategy, and executable sweep grids
ledgr_precompute_features()
Precompute feature payloads for a parameter grid
print(<ledgr_precomputed_features>)
Print a precomputed feature payload
ledgr_sweep()
Run a parameter sweep
ledgr_sweep_retention()
Sweep retention policy
ledgr_return_panel()
Return panel evidence
ledgr_sweep_returns() ledgr_sweep_trades() ledgr_sweep_returns_wide() ledgr_sweep_returns_panel() ledgr_sweep_returns_matrix() ledgr_sweep_returns_data_frame() ledgr_sweep_returns_xts()
Retained sweep return series
ledgr_sweep_review()
Review sweep candidates without selecting one
ledgr_pbo()
PBO/CSCV diagnostic
ledgr_min_track_record()
Minimum track record length diagnostic
ledgr_k_ratio()
K-Ratio diagnostic
ledgr_effective_trials()
Effective-trial diagnostic
ledgr_dsr()
Deflated Sharpe ratio diagnostic
ledgr_business_objective()
Business-objective criterion chain
ledgr_objective_even_trades() ledgr_objective_even_profit() ledgr_objective_stable_region() ledgr_objective_max_drawdown() ledgr_objective_stable_runs() ledgr_objective_min_trades() ledgr_objective_positive_trajectory() ledgr_objective_diagnostic_threshold()
Business-objective criteria
ledgr_sweep_filter()
Evaluate a sweep against a business objective
ledgr_sweep_save() ledgr_sweep_open() ledgr_sweep_list() ledgr_sweep_info()
Save, reopen, list, and inspect sweep artifacts
print(<ledgr_sweep_results>)
Print sweep results
ledgr_candidate()
Select one sweep candidate for promotion
ledgr_candidate_reproduction_key()
Return the compact reproduction key for a sweep candidate
print(<ledgr_sweep_candidate>)
Print a sweep candidate
ledgr_promote()
Promote a sweep candidate to a committed run
ledgr_fold() ledgr_folds_rolling() ledgr_folds_anchored()
Walk-forward fold constructors
ledgr_rule_argmax() ledgr_rule_argmin()
Walk-forward scalar selection rules
ledgr_walk_forward()
Run walk-forward evaluation
ledgr_walk_forward_open() ledgr_walk_forward_scores() ledgr_walk_forward_folds()
Inspect a persisted walk-forward session
print(<ledgr_walk_forward_degradation>)
Print a walk-forward degradation table
ledgr_promotion_context()
Read promotion context for a promoted run
ledgr_run_promotion_context()
Read promotion context from an experiment store

Cost And Timing

Target Risk

Identity And Diagnostics

ledgr_identity_fields ledgr_identity
ledgr identity fields
ledgr_condition_classes ledgr_cost_model_unspecified ledgr_invalid_cost_chain_order ledgr_invalid_cost_model ledgr_invalid_timing_model ledgr_invalid_fill_proposal ledgr_invalid_fill_context ledgr_run_not_found ledgr_unresolved_feature_id ledgr_run_window_too_short ledgr_invalid_lot_fill ledgr_snapshot_hash_invalid_timestamp ledgr_snapshot_hash_rule_unsupported ledgr_snapshot_hash_order_invalid ledgr_store_rebuild_required ledgr_invalid_store ledgr_invalid_valuation_policy ledgr_availability_inactive ledgr_availability_sessions_required ledgr_backtest_availability_unsupported ledgr_sessions_incomplete ledgr_promote_identity_mismatch ledgr_membership_universe_not_found ledgr_compiled_availability_unsupported ledgr_policy_schema_mismatch ledgr_strategy_provenance_missing ledgr_session_time_ambiguous ledgr_session_time_nonexistent ledgr_fact_ambiguous_membership_shape ledgr_fact_invalid_membership_list ledgr_facts_inspection_invalid_args ledgr_facts_scope_not_found ledgr_facts_snapshot_not_sealed ledgr_facts_snapshot_hash_mismatch ledgr_session_adapter_invalid ledgr_session_override_invalid ledgr_indicator_gap_parity ledgr_invalid_indicator_declaration ledgr_indicator_history_contradiction ledgr_invalid_strategy_state ledgr_strategy_error ledgr_invalid_strategy_schedule ledgr_schedule_sessions_required ledgr_schedule_axis_invalid ledgr_schedule_intraday_unsupported ledgr_schedule_date_out_of_range ledgr_schedule_param_unresolved ledgr_schedule_no_decision ledgr_schedule_identity_mismatch ledgr_target_sizing_unavailable ledgr_restricted_target ledgr_nonmember_exposure_increase ledgr_post_risk_inadmissible ledgr_short_exposure_unsupported ledgr_affordability_reconciliation_failed ledgr_run_terminal_evidence_invalid ledgr_run_explanation_unavailable ledgr_invalid_sweep_id ledgr_sweep_id_exists ledgr_sweep_not_found ledgr_sweep_snapshot_not_found ledgr_sweep_snapshot_hash_mismatch ledgr_sweep_schema_incompatible ledgr_invalid_sweep_retention ledgr_sweep_returns_unretained ledgr_sweep_returns_candidate_not_found ledgr_sweep_returns_candidate_not_completed ledgr_sweep_returns_first_row_invalid ledgr_sweep_returns_incomplete_panel ledgr_sweep_trades_unretained ledgr_sweep_trades_candidate_not_found ledgr_sweep_trades_candidate_not_completed ledgr_sweep_trades_candidate_not_retained ledgr_incomplete_sweep_candidate ledgr_promote_incomplete_candidate ledgr_validation_pbo_incomplete_panel ledgr_missing_package ledgr_validation_pbo_invalid_s ledgr_validation_pbo_too_few_candidates ledgr_validation_pbo_too_few_observations ledgr_validation_pbo_invalid_metric ledgr_validation_pbo_invalid_panel ledgr_validation_pbo_invalid_threshold ledgr_validation_min_trl_invalid_reference ledgr_validation_min_trl_invalid_confidence ledgr_validation_min_trl_invalid_risk_free ledgr_validation_min_trl_too_few_observations ledgr_validation_min_trl_invalid_returns ledgr_invalid_business_objective ledgr_duplicate_objective_criterion ledgr_business_objective_hash_mismatch ledgr_invalid_objective_criterion ledgr_unknown_objective_criterion ledgr_objective_non_serializable_params ledgr_objective_criterion_hash_mismatch ledgr_invalid_objective_verdict ledgr_objective_missing_evidence ledgr_objective_non_finite_evidence ledgr_objective_invalid_evidence ledgr_invalid_diagnostic_threshold ledgr_diagnostic_source_hash_mismatch ledgr_stable_region_invalid_min_neighbors ledgr_stable_region_invalid_grid ledgr_stable_region_invalid_metric ledgr_stable_region_unordered_axis ledgr_stable_region_unsupported_axis ledgr_stable_region_collapsed_axis ledgr_stable_region_duplicate_tuple ledgr_stable_region_incomplete_grid ledgr_stable_region_no_adjacent_pairs ledgr_invalid_sweep_filter_input ledgr_sweep_filter_no_completed_candidates ledgr_sweep_filter_diagnostic_source_mismatch ledgr_sweep_filter_parameter_missing ledgr_sweep_filter_ambiguous_parameter ledgr_invalid_sweep_filter_result ledgr_sweep_filter_evidence_only ledgr_sweep_filter_not_candidate ledgr_sweep_filter_promotion_forbidden ledgr_sweep_filter_walk_forward_forbidden ledgr_metric_context_cadence_mismatch ledgr_walk_forward_metric_missing ledgr_walk_forward_metric_class_invalid ledgr_walk_forward_no_selection ledgr_walk_forward_gapped_carry ledgr_walk_forward_overlapping_carry ledgr_walk_forward_candidate_key_missing ledgr_walk_forward_test_run_failed ledgr_walk_forward_session_not_found ledgr_walk_forward_snapshot_hash_mismatch ledgr_walk_forward_snapshot_override_mismatch ledgr_walk_forward_invalid_session ledgr_walk_forward_latest_without_rationale ledgr_walk_forward_candidate_not_found ledgr_ambiguous_bundle_output ledgr_availability_validation_failed ledgr_availability_valuation_out_of_order ledgr_broker_adapter_not_supported ledgr_candidate_cost_identity_mismatch ledgr_candidate_missing_snapshot_hash ledgr_candidate_risk_identity_mismatch ledgr_candidate_snapshot_mismatch ledgr_checkpoint_failed ledgr_compiled_spot_fifo_invalid_input ledgr_compiled_spot_fifo_unavailable ledgr_config_invalid_json ledgr_config_non_deterministic ledgr_config_non_finite ledgr_config_unsupported_type ledgr_corporate_action_clock_mismatch ledgr_corporate_action_clock_missing ledgr_corporate_action_double_credit ledgr_corporate_action_entitlement_missing ledgr_corporate_action_quantity_unsupported ledgr_corporate_action_unsupported ledgr_db_not_found ledgr_distribution_adjusted_bars_unsupported ledgr_duplicate_corporate_action_event ledgr_duplicate_corporate_action_fact ledgr_duplicate_executable_grid_labels ledgr_duplicate_fact_family ledgr_duplicate_feature_id ledgr_duplicate_grid_labels ledgr_duplicate_grid_rows ledgr_empty_warmup_input ledgr_event_buffer_capacity_exceeded ledgr_fact_civil_date_unresolved ledgr_fact_identity_conflict ledgr_fact_invalid_clock_order ledgr_fact_invalid_complete ledgr_fact_invalid_completeness ledgr_fact_invalid_id ledgr_fact_invalid_instrument ledgr_fact_invalid_instrument_master ledgr_fact_invalid_interval ledgr_fact_invalid_lifetime ledgr_fact_invalid_logical ledgr_fact_invalid_membership_set ledgr_fact_invalid_precedence ledgr_fact_invalid_provenance ledgr_fact_invalid_provenance_tier ledgr_fact_invalid_shape ledgr_fact_invalid_source ledgr_fact_invalid_status ledgr_fact_invalid_subtype ledgr_fact_invalid_supersession ledgr_fact_invalid_time ledgr_fact_structural_conflict ledgr_fact_unvalidated_term ledgr_failed_sweep_candidate ledgr_feature_factory_requires_params ledgr_feature_lookahead_detected ledgr_grid_filter_invalid ledgr_history_identity_mismatch ledgr_invalid_accounting_event ledgr_invalid_alias_map ledgr_invalid_args ledgr_invalid_backtest ledgr_invalid_con ledgr_invalid_config ledgr_invalid_corporate_action_event ledgr_invalid_corporate_action_fidelity ledgr_invalid_corporate_action_policy ledgr_invalid_event_order ledgr_invalid_executable_grid ledgr_invalid_execution_spec ledgr_invalid_experiment ledgr_invalid_experiment_features ledgr_invalid_experiment_strategy ledgr_invalid_facts ledgr_invalid_feature_def ledgr_invalid_feature_input ledgr_invalid_feature_map ledgr_invalid_feature_output ledgr_invalid_feature_params ledgr_invalid_feature_resolution ledgr_invalid_feature_value ledgr_invalid_fill_input ledgr_invalid_fill_intent ledgr_invalid_fold_execution ledgr_invalid_grid ledgr_invalid_grid_column ledgr_invalid_grid_value ledgr_invalid_history_policy ledgr_invalid_history_substrate ledgr_invalid_history_treatment ledgr_invalid_history_field ledgr_invalid_history_request ledgr_invalid_history_result ledgr_invalid_indicator_bundle ledgr_invalid_ledger_event ledgr_invalid_ledger_meta ledgr_invalid_metric_context ledgr_invalid_opening ledgr_invalid_option ledgr_invalid_parallel_backend ledgr_invalid_parallel_workers ledgr_invalid_param_constructor ledgr_invalid_param_reference ledgr_invalid_parameterized_bundle ledgr_invalid_post_risk_targets ledgr_invalid_precompute_range ledgr_invalid_precomputed_features ledgr_invalid_price_basis ledgr_invalid_promotion_context_summary ledgr_invalid_pulse_context ledgr_invalid_pulse_plan ledgr_invalid_pulse_wide_names ledgr_invalid_result_table ledgr_invalid_return_panel ledgr_invalid_return_panel_input ledgr_invalid_risk_context ledgr_invalid_risk_model ledgr_invalid_risk_plan ledgr_invalid_run ledgr_invalid_runtime_projection ledgr_invalid_snapshot ledgr_invalid_state ledgr_invalid_strategy ledgr_invalid_strategy_helper ledgr_invalid_strategy_params ledgr_invalid_strategy_preflight ledgr_invalid_strategy_result ledgr_invalid_strategy_signature ledgr_invalid_strategy_type ledgr_invalid_sweep_candidate_input ledgr_invalid_sweep_projection ledgr_invalid_sweep_review_input ledgr_invalid_sweep_review_rank ledgr_invalid_target_price ledgr_invalid_timestamp ledgr_invalid_warmup_input ledgr_invalid_worker_dependencies ledgr_invalid_worker_packages ledgr_invariant_violation ledgr_legacy_feature_factory_feature_params_unsupported ledgr_levered_weights ledgr_lot_state_invariant ledgr_missing_bars ledgr_missing_dependency ledgr_missing_metric_context ledgr_missing_optional_dependency ledgr_missing_precomputed_features_warning ledgr_mixed_metric_cadence ledgr_negative_weights ledgr_no_active_alias_map ledgr_observation_invalid_shape ledgr_observation_quarantine_duplicate ledgr_ohlc_non_positive ledgr_opening_cost_basis_missing ledgr_parallel_backend_missing ledgr_parallel_error ledgr_parallel_strategy_not_allowed ledgr_parallel_sweep_interrupted ledgr_parallel_worker_failed ledgr_parallel_worker_package_missing ledgr_param_missing ledgr_param_non_scalar ledgr_partial_selection ledgr_precomputed_coverage_error ledgr_precomputed_engine_mismatch ledgr_precomputed_feature_mismatch ledgr_precomputed_grid_mismatch ledgr_precomputed_history_mismatch ledgr_precomputed_range_mismatch ledgr_precomputed_snapshot_mismatch ledgr_precomputed_universe_mismatch ledgr_promote_failed_candidate ledgr_promotion_context_write_failed ledgr_purity_violation ledgr_quarantine_requires_sessions ledgr_return_panel_ambiguous_shape ledgr_return_panel_invalid_ts ledgr_return_panel_missing_candidate_ids ledgr_risk_application_error ledgr_risk_plan_parameter_missing ledgr_run_hash_mismatch ledgr_run_lookup_mismatch ledgr_run_not_complete ledgr_run_registration_failed ledgr_run_telemetry_failed ledgr_scalar_accessor_loop ledgr_session_boundary_unresolved ledgr_session_coverage_incomplete ledgr_session_instant_duplicate ledgr_session_instant_off_date ledgr_session_invalid ledgr_session_invalid_timezone ledgr_session_knowledge_late ledgr_session_multiple_venues ledgr_sim_pit_insufficient_shape ledgr_sim_pit_invalid ledgr_snapshot_exists ledgr_snapshot_fact_family_invalid ledgr_snapshot_fact_family_missing ledgr_snapshot_fact_interval_invalid ledgr_snapshot_fact_json_invalid ledgr_snapshot_fact_referential_integrity ledgr_snapshot_fact_timestamp_invalid ledgr_snapshot_hash_encoding_invalid ledgr_snapshot_id_noncanonical ledgr_snapshot_id_required ledgr_snapshot_membership_set_invalid ledgr_snapshot_membership_set_missing ledgr_snapshot_not_found ledgr_snapshot_not_sealed ledgr_snapshot_quarantine_unacknowledged ledgr_snapshot_required ledgr_snapshot_sessions_invalid ledgr_strategy_ambient_rng_not_supported ledgr_strategy_ambient_rng_parallel ledgr_strategy_ambient_rng_resume ledgr_strategy_eval_failed ledgr_strategy_hash_mismatch ledgr_strategy_hash_unverified ledgr_strategy_not_function ledgr_strategy_parse_failed ledgr_strategy_preflight_error ledgr_strategy_source_unavailable ledgr_strategy_tier3 ledgr_sweep_candidate_not_found ledgr_sweep_storage_identity_mismatch ledgr_sweep_storage_invalid_identity ledgr_sweep_storage_invalid_provenance ledgr_temp_store_unlink_failed ledgr_unknown_feature_id ledgr_unsupported_accounting_model ledgr_unsupported_execution_start ledgr_unsupported_param_placement ledgr_unsupported_risk_step ledgr_validation_cluster_invalid_returns ledgr_validation_cluster_invalid_threshold ledgr_validation_cluster_too_few_candidates ledgr_validation_cluster_too_few_observations ledgr_validation_dsr_invalid_confidence ledgr_validation_dsr_invalid_effective_trials ledgr_validation_dsr_invalid_returns ledgr_validation_dsr_invalid_risk_free ledgr_validation_dsr_too_few_candidates ledgr_validation_dsr_too_few_observations ledgr_validation_k_ratio_invalid_periods_per_year ledgr_validation_k_ratio_invalid_returns ledgr_validation_k_ratio_invalid_risk_free ledgr_validation_k_ratio_too_few_observations ledgr_walk_forward_cold_start_warning ledgr_walk_forward_gap_not_supported ledgr_walk_forward_invalid_fold ledgr_walk_forward_invalid_fold_window ledgr_walk_forward_invalid_identity ledgr_walk_forward_invalid_opening_state ledgr_walk_forward_invalid_selection_rule ledgr_history_duplicate_bar ledgr_history_outside_axis ledgr_history_unavailable ledgr_pulse_snapshot_availability_required ledgr_pulse_inspection_stopped ledgr_history_segment_limit_exceeded ledgr_fact_knowledge_missing ledgr_history_segment_missing ledgr_history_unknown_instrument ledgr_weight_alignment_mismatch ledgr_staged_history_mismatch
ledgr condition classes
LEDGR_LAST_BAR_NO_FILL ledgr_last_bar_no_fill ledgr_final_bar_no_fill
LEDGR_LAST_BAR_NO_FILL warning code

Backtests

ledgr_backtest()
Run a backtest (v0.1.2)
print(<ledgr_backtest>)
Print a backtest result
summary(<ledgr_backtest>)
Summarize a backtest result
as_tibble(<ledgr_backtest>)
Extract tidy backtest tables
ledgr_results()
Extract ledgr result tables
ledgr_run_explain()
Explain one recorded availability-aware run decision
ledgr_run_completion() print(<ledgr_run_completion>)
Read one run's completion evidence
ledgr_corporate_actions() ledgr_corporate_actions_research() ledgr_corporate_actions_strict()
Corporate-action settlement policy
ledgr_corporate_action_summary()
Read a run's complete corporate-action policy record
ledgr_valuation_summary() print(<ledgr_valuation_summary>)
Read a run's valuation evidence
as_tibble(<ledgr_result_table>)
Convert a ledgr result table to a tibble
print(<ledgr_result_table>)
Print a ledgr result table
close(<ledgr_backtest>)
Close a backtest result connection
plot(<ledgr_backtest>)
Plot backtest results
ledgr_run_fills()
Extract fill events from a backtest
ledgr_compute_metrics() format(<ledgr_metrics>) print(<ledgr_metrics>)
Compute standard metrics from backtest results
ledgr_state_reconstruct()
Reconstruct derived state for a run (v0.1.0)

Metric Assumptions

ledgr_metric_context() ledgr_metric_us_equity() ledgr_metric_crypto()
Create or access metric context
ledgr_metric_context_hash()
Hash a metric context
ledgr_risk_free_rate()
Create a scalar risk-free-rate assumption
ledgr_calendar() ledgr_calendar_us_equity() ledgr_calendar_crypto()
Create a ledgr calendar

Experiment Store

ledgr_run_list()
List runs in a ledgr experiment store
print(<ledgr_run_list>)
Print a run list
ledgr_run_info()
Inspect one run in a ledgr experiment store
ledgr_run_compare()
Compare completed runs in a ledgr experiment store
print(<ledgr_comparison>)
Print a run comparison
ledgr_run_strategy()
Extract stored strategy source for a run
print(<ledgr_extracted_strategy>)
Print extracted strategy metadata
print(<ledgr_run_info>)
Print run information
ledgr_run_open()
Reopen a terminal run from a ledgr experiment store
ledgr_run_label()
Set a human-readable label for a run
ledgr_run_archive()
Archive a run without deleting artifacts
ledgr_run_tag()
Add tags to a stored run
ledgr_run_untag()
Remove tags from a stored run
ledgr_run_tags()
List run tags

Snapshots

ledgr_condition_classes ledgr_cost_model_unspecified ledgr_invalid_cost_chain_order ledgr_invalid_cost_model ledgr_invalid_timing_model ledgr_invalid_fill_proposal ledgr_invalid_fill_context ledgr_run_not_found ledgr_unresolved_feature_id ledgr_run_window_too_short ledgr_invalid_lot_fill ledgr_snapshot_hash_invalid_timestamp ledgr_snapshot_hash_rule_unsupported ledgr_snapshot_hash_order_invalid ledgr_store_rebuild_required ledgr_invalid_store ledgr_invalid_valuation_policy ledgr_availability_inactive ledgr_availability_sessions_required ledgr_backtest_availability_unsupported ledgr_sessions_incomplete ledgr_promote_identity_mismatch ledgr_membership_universe_not_found ledgr_compiled_availability_unsupported ledgr_policy_schema_mismatch ledgr_strategy_provenance_missing ledgr_session_time_ambiguous ledgr_session_time_nonexistent ledgr_fact_ambiguous_membership_shape ledgr_fact_invalid_membership_list ledgr_facts_inspection_invalid_args ledgr_facts_scope_not_found ledgr_facts_snapshot_not_sealed ledgr_facts_snapshot_hash_mismatch ledgr_session_adapter_invalid ledgr_session_override_invalid ledgr_indicator_gap_parity ledgr_invalid_indicator_declaration ledgr_indicator_history_contradiction ledgr_invalid_strategy_state ledgr_strategy_error ledgr_invalid_strategy_schedule ledgr_schedule_sessions_required ledgr_schedule_axis_invalid ledgr_schedule_intraday_unsupported ledgr_schedule_date_out_of_range ledgr_schedule_param_unresolved ledgr_schedule_no_decision ledgr_schedule_identity_mismatch ledgr_target_sizing_unavailable ledgr_restricted_target ledgr_nonmember_exposure_increase ledgr_post_risk_inadmissible ledgr_short_exposure_unsupported ledgr_affordability_reconciliation_failed ledgr_run_terminal_evidence_invalid ledgr_run_explanation_unavailable ledgr_invalid_sweep_id ledgr_sweep_id_exists ledgr_sweep_not_found ledgr_sweep_snapshot_not_found ledgr_sweep_snapshot_hash_mismatch ledgr_sweep_schema_incompatible ledgr_invalid_sweep_retention ledgr_sweep_returns_unretained ledgr_sweep_returns_candidate_not_found ledgr_sweep_returns_candidate_not_completed ledgr_sweep_returns_first_row_invalid ledgr_sweep_returns_incomplete_panel ledgr_sweep_trades_unretained ledgr_sweep_trades_candidate_not_found ledgr_sweep_trades_candidate_not_completed ledgr_sweep_trades_candidate_not_retained ledgr_incomplete_sweep_candidate ledgr_promote_incomplete_candidate ledgr_validation_pbo_incomplete_panel ledgr_missing_package ledgr_validation_pbo_invalid_s ledgr_validation_pbo_too_few_candidates ledgr_validation_pbo_too_few_observations ledgr_validation_pbo_invalid_metric ledgr_validation_pbo_invalid_panel ledgr_validation_pbo_invalid_threshold ledgr_validation_min_trl_invalid_reference ledgr_validation_min_trl_invalid_confidence ledgr_validation_min_trl_invalid_risk_free ledgr_validation_min_trl_too_few_observations ledgr_validation_min_trl_invalid_returns ledgr_invalid_business_objective ledgr_duplicate_objective_criterion ledgr_business_objective_hash_mismatch ledgr_invalid_objective_criterion ledgr_unknown_objective_criterion ledgr_objective_non_serializable_params ledgr_objective_criterion_hash_mismatch ledgr_invalid_objective_verdict ledgr_objective_missing_evidence ledgr_objective_non_finite_evidence ledgr_objective_invalid_evidence ledgr_invalid_diagnostic_threshold ledgr_diagnostic_source_hash_mismatch ledgr_stable_region_invalid_min_neighbors ledgr_stable_region_invalid_grid ledgr_stable_region_invalid_metric ledgr_stable_region_unordered_axis ledgr_stable_region_unsupported_axis ledgr_stable_region_collapsed_axis ledgr_stable_region_duplicate_tuple ledgr_stable_region_incomplete_grid ledgr_stable_region_no_adjacent_pairs ledgr_invalid_sweep_filter_input ledgr_sweep_filter_no_completed_candidates ledgr_sweep_filter_diagnostic_source_mismatch ledgr_sweep_filter_parameter_missing ledgr_sweep_filter_ambiguous_parameter ledgr_invalid_sweep_filter_result ledgr_sweep_filter_evidence_only ledgr_sweep_filter_not_candidate ledgr_sweep_filter_promotion_forbidden ledgr_sweep_filter_walk_forward_forbidden ledgr_metric_context_cadence_mismatch ledgr_walk_forward_metric_missing ledgr_walk_forward_metric_class_invalid ledgr_walk_forward_no_selection ledgr_walk_forward_gapped_carry ledgr_walk_forward_overlapping_carry ledgr_walk_forward_candidate_key_missing ledgr_walk_forward_test_run_failed ledgr_walk_forward_session_not_found ledgr_walk_forward_snapshot_hash_mismatch ledgr_walk_forward_snapshot_override_mismatch ledgr_walk_forward_invalid_session ledgr_walk_forward_latest_without_rationale ledgr_walk_forward_candidate_not_found ledgr_ambiguous_bundle_output ledgr_availability_validation_failed ledgr_availability_valuation_out_of_order ledgr_broker_adapter_not_supported ledgr_candidate_cost_identity_mismatch ledgr_candidate_missing_snapshot_hash ledgr_candidate_risk_identity_mismatch ledgr_candidate_snapshot_mismatch ledgr_checkpoint_failed ledgr_compiled_spot_fifo_invalid_input ledgr_compiled_spot_fifo_unavailable ledgr_config_invalid_json ledgr_config_non_deterministic ledgr_config_non_finite ledgr_config_unsupported_type ledgr_corporate_action_clock_mismatch ledgr_corporate_action_clock_missing ledgr_corporate_action_double_credit ledgr_corporate_action_entitlement_missing ledgr_corporate_action_quantity_unsupported ledgr_corporate_action_unsupported ledgr_db_not_found ledgr_distribution_adjusted_bars_unsupported ledgr_duplicate_corporate_action_event ledgr_duplicate_corporate_action_fact ledgr_duplicate_executable_grid_labels ledgr_duplicate_fact_family ledgr_duplicate_feature_id ledgr_duplicate_grid_labels ledgr_duplicate_grid_rows ledgr_empty_warmup_input ledgr_event_buffer_capacity_exceeded ledgr_fact_civil_date_unresolved ledgr_fact_identity_conflict ledgr_fact_invalid_clock_order ledgr_fact_invalid_complete ledgr_fact_invalid_completeness ledgr_fact_invalid_id ledgr_fact_invalid_instrument ledgr_fact_invalid_instrument_master ledgr_fact_invalid_interval ledgr_fact_invalid_lifetime ledgr_fact_invalid_logical ledgr_fact_invalid_membership_set ledgr_fact_invalid_precedence ledgr_fact_invalid_provenance ledgr_fact_invalid_provenance_tier ledgr_fact_invalid_shape ledgr_fact_invalid_source ledgr_fact_invalid_status ledgr_fact_invalid_subtype ledgr_fact_invalid_supersession ledgr_fact_invalid_time ledgr_fact_structural_conflict ledgr_fact_unvalidated_term ledgr_failed_sweep_candidate ledgr_feature_factory_requires_params ledgr_feature_lookahead_detected ledgr_grid_filter_invalid ledgr_history_identity_mismatch ledgr_invalid_accounting_event ledgr_invalid_alias_map ledgr_invalid_args ledgr_invalid_backtest ledgr_invalid_con ledgr_invalid_config ledgr_invalid_corporate_action_event ledgr_invalid_corporate_action_fidelity ledgr_invalid_corporate_action_policy ledgr_invalid_event_order ledgr_invalid_executable_grid ledgr_invalid_execution_spec ledgr_invalid_experiment ledgr_invalid_experiment_features ledgr_invalid_experiment_strategy ledgr_invalid_facts ledgr_invalid_feature_def ledgr_invalid_feature_input ledgr_invalid_feature_map ledgr_invalid_feature_output ledgr_invalid_feature_params ledgr_invalid_feature_resolution ledgr_invalid_feature_value ledgr_invalid_fill_input ledgr_invalid_fill_intent ledgr_invalid_fold_execution ledgr_invalid_grid ledgr_invalid_grid_column ledgr_invalid_grid_value ledgr_invalid_history_policy ledgr_invalid_history_substrate ledgr_invalid_history_treatment ledgr_invalid_history_field ledgr_invalid_history_request ledgr_invalid_history_result ledgr_invalid_indicator_bundle ledgr_invalid_ledger_event ledgr_invalid_ledger_meta ledgr_invalid_metric_context ledgr_invalid_opening ledgr_invalid_option ledgr_invalid_parallel_backend ledgr_invalid_parallel_workers ledgr_invalid_param_constructor ledgr_invalid_param_reference ledgr_invalid_parameterized_bundle ledgr_invalid_post_risk_targets ledgr_invalid_precompute_range ledgr_invalid_precomputed_features ledgr_invalid_price_basis ledgr_invalid_promotion_context_summary ledgr_invalid_pulse_context ledgr_invalid_pulse_plan ledgr_invalid_pulse_wide_names ledgr_invalid_result_table ledgr_invalid_return_panel ledgr_invalid_return_panel_input ledgr_invalid_risk_context ledgr_invalid_risk_model ledgr_invalid_risk_plan ledgr_invalid_run ledgr_invalid_runtime_projection ledgr_invalid_snapshot ledgr_invalid_state ledgr_invalid_strategy ledgr_invalid_strategy_helper ledgr_invalid_strategy_params ledgr_invalid_strategy_preflight ledgr_invalid_strategy_result ledgr_invalid_strategy_signature ledgr_invalid_strategy_type ledgr_invalid_sweep_candidate_input ledgr_invalid_sweep_projection ledgr_invalid_sweep_review_input ledgr_invalid_sweep_review_rank ledgr_invalid_target_price ledgr_invalid_timestamp ledgr_invalid_warmup_input ledgr_invalid_worker_dependencies ledgr_invalid_worker_packages ledgr_invariant_violation ledgr_legacy_feature_factory_feature_params_unsupported ledgr_levered_weights ledgr_lot_state_invariant ledgr_missing_bars ledgr_missing_dependency ledgr_missing_metric_context ledgr_missing_optional_dependency ledgr_missing_precomputed_features_warning ledgr_mixed_metric_cadence ledgr_negative_weights ledgr_no_active_alias_map ledgr_observation_invalid_shape ledgr_observation_quarantine_duplicate ledgr_ohlc_non_positive ledgr_opening_cost_basis_missing ledgr_parallel_backend_missing ledgr_parallel_error ledgr_parallel_strategy_not_allowed ledgr_parallel_sweep_interrupted ledgr_parallel_worker_failed ledgr_parallel_worker_package_missing ledgr_param_missing ledgr_param_non_scalar ledgr_partial_selection ledgr_precomputed_coverage_error ledgr_precomputed_engine_mismatch ledgr_precomputed_feature_mismatch ledgr_precomputed_grid_mismatch ledgr_precomputed_history_mismatch ledgr_precomputed_range_mismatch ledgr_precomputed_snapshot_mismatch ledgr_precomputed_universe_mismatch ledgr_promote_failed_candidate ledgr_promotion_context_write_failed ledgr_purity_violation ledgr_quarantine_requires_sessions ledgr_return_panel_ambiguous_shape ledgr_return_panel_invalid_ts ledgr_return_panel_missing_candidate_ids ledgr_risk_application_error ledgr_risk_plan_parameter_missing ledgr_run_hash_mismatch ledgr_run_lookup_mismatch ledgr_run_not_complete ledgr_run_registration_failed ledgr_run_telemetry_failed ledgr_scalar_accessor_loop ledgr_session_boundary_unresolved ledgr_session_coverage_incomplete ledgr_session_instant_duplicate ledgr_session_instant_off_date ledgr_session_invalid ledgr_session_invalid_timezone ledgr_session_knowledge_late ledgr_session_multiple_venues ledgr_sim_pit_insufficient_shape ledgr_sim_pit_invalid ledgr_snapshot_exists ledgr_snapshot_fact_family_invalid ledgr_snapshot_fact_family_missing ledgr_snapshot_fact_interval_invalid ledgr_snapshot_fact_json_invalid ledgr_snapshot_fact_referential_integrity ledgr_snapshot_fact_timestamp_invalid ledgr_snapshot_hash_encoding_invalid ledgr_snapshot_id_noncanonical ledgr_snapshot_id_required ledgr_snapshot_membership_set_invalid ledgr_snapshot_membership_set_missing ledgr_snapshot_not_found ledgr_snapshot_not_sealed ledgr_snapshot_quarantine_unacknowledged ledgr_snapshot_required ledgr_snapshot_sessions_invalid ledgr_strategy_ambient_rng_not_supported ledgr_strategy_ambient_rng_parallel ledgr_strategy_ambient_rng_resume ledgr_strategy_eval_failed ledgr_strategy_hash_mismatch ledgr_strategy_hash_unverified ledgr_strategy_not_function ledgr_strategy_parse_failed ledgr_strategy_preflight_error ledgr_strategy_source_unavailable ledgr_strategy_tier3 ledgr_sweep_candidate_not_found ledgr_sweep_storage_identity_mismatch ledgr_sweep_storage_invalid_identity ledgr_sweep_storage_invalid_provenance ledgr_temp_store_unlink_failed ledgr_unknown_feature_id ledgr_unsupported_accounting_model ledgr_unsupported_execution_start ledgr_unsupported_param_placement ledgr_unsupported_risk_step ledgr_validation_cluster_invalid_returns ledgr_validation_cluster_invalid_threshold ledgr_validation_cluster_too_few_candidates ledgr_validation_cluster_too_few_observations ledgr_validation_dsr_invalid_confidence ledgr_validation_dsr_invalid_effective_trials ledgr_validation_dsr_invalid_returns ledgr_validation_dsr_invalid_risk_free ledgr_validation_dsr_too_few_candidates ledgr_validation_dsr_too_few_observations ledgr_validation_k_ratio_invalid_periods_per_year ledgr_validation_k_ratio_invalid_returns ledgr_validation_k_ratio_invalid_risk_free ledgr_validation_k_ratio_too_few_observations ledgr_walk_forward_cold_start_warning ledgr_walk_forward_gap_not_supported ledgr_walk_forward_invalid_fold ledgr_walk_forward_invalid_fold_window ledgr_walk_forward_invalid_identity ledgr_walk_forward_invalid_opening_state ledgr_walk_forward_invalid_selection_rule ledgr_history_duplicate_bar ledgr_history_outside_axis ledgr_history_unavailable ledgr_pulse_snapshot_availability_required ledgr_pulse_inspection_stopped ledgr_history_segment_limit_exceeded ledgr_fact_knowledge_missing ledgr_history_segment_missing ledgr_history_unknown_instrument ledgr_weight_alignment_mismatch ledgr_staged_history_mismatch
ledgr condition classes
ledgr_snapshot_close()
Close snapshot database connection
ledgr_snapshot_create()
Create a snapshot (v0.1.1)
ledgr_snapshot_from_csv()
Create a snapshot from a CSV file
ledgr_snapshot_from_df()
Create a snapshot from an in-memory data.frame
ledgr_snapshot_from_yahoo()
Create a snapshot from Yahoo Finance data (quantmod)
ledgr_snapshot_info()
Snapshot info
ledgr_snapshot_list()
List snapshots (v0.1.1)
ledgr_snapshot_open()
Load an existing sealed snapshot
ledgr_snapshot_quarantine()
Read quarantined snapshot observations
ledgr_snapshot_seal()
Seal a snapshot (v0.1.1)
ledgr_facts_membership_intervals() ledgr_facts_membership_snapshots() ledgr_facts_trading_status() ledgr_facts_lifetime() ledgr_facts_equity_corporate_actions() ledgr_facts_sessions() ledgr_facts()
Point-in-time availability facts
ledgr_facts_history() ledgr_facts_resolve() print(<ledgr_facts_history>) print(<ledgr_facts_resolution>)
Inspect point-in-time fact evidence
ledgr_facts_sessions_qlcal()
Build session facts from an explicit qlcal calendar
ledgr_facts_validate()
Validate point-in-time facts without writing
print(<ledgr_snapshot>)
Print a snapshot
summary(<ledgr_snapshot>)
Summarize a snapshot
close(<ledgr_snapshot>)
Close a snapshot connection

Indicators

ledgr_ind_ema()
Exponential Moving Average
ledgr_ind_returns()
Simple Returns
ledgr_ind_rsi()
Relative Strength Index
ledgr_ind_sma()
Simple Moving Average
ledgr_ind_ttr()
Construct a ledgr indicator from a supported TTR indicator
ledgr_ind_ttr_outputs()
Construct a bundle from all or selected outputs of a TTR indicator
ledgr_ind_ttr_warmup_rules()
Inspect supported TTR warmup inference rules
ledgr_indicator()
Construct a ledgr indicator
print(<ledgr_indicator>)
Print a ledgr indicator
ledgr_feature_id()
Get feature IDs from ledgr indicators
ledgr_param()
Declare a feature parameter reference
ledgr_parameters()
Inspect parameter references in feature declarations
ledgr_feature_contracts()
Inspect feature contracts
ledgr_feature_contract_check()
Check feature warmup feasibility against a snapshot
ledgr_pulse_features()
Inspect pulse feature rows
ledgr_pulse_wide()
Inspect a pulse as one wide row
ledgr_indicator_register()
Register an indicator in the global registry
ledgr_indicator_remove()
Deregister an indicator from the session registry
ledgr_indicator_get()
Get an indicator by name
ledgr_indicator_list()
List registered indicators
ledgr_adapter_r()
Adapt an R package function into a ledgr indicator
ledgr_adapter_csv()
Adapt a CSV of precomputed indicators
ledgr_indicator_dev()
Interactive indicator development session
print(<ledgr_indicator_dev>)
Print an indicator development session
close(<ledgr_indicator_dev>)
Close indicator development session

Strategy Development

ledgr_strategy_context ctx
Strategy pulse context accessors
ledgr_pulse_snapshot()
Freeze a pulse snapshot for strategy development
print(<ledgr_pulse_context>)
Print a pulse snapshot context
close(<ledgr_pulse_context>)
Close pulse context
ledgr_history_frame()
Read causal history from a strategy context
ledgr_history_matrix()
Read or convert causal history as an identified matrix
ledgr_history_info()
Read the metadata of a history result
ledgr_align_weights()
Align solver weights to a history result
ledgr_history_policy()
Configure causal history treatment
ledgr_feature_map() print(<ledgr_feature_map>)
Create a feature map
ledgr_passed_warmup()
Check whether mapped feature values have passed warmup
ledgr_strategy_preflight()
Classify a functional strategy's reproducibility tier
ledgr_signal_strategy()
Wrap a signal-style strategy as numeric targets
ledgr_demo_sma_crossover_strategy()
Demo SMA crossover strategy
ledgr_signal()
Create a strategy signal vector
ledgr_selection()
Create a strategy selection vector
ledgr_weights()
Create a strategy weight vector
ledgr_target()
Create a strategy target vector
ledgr_signal_return()
Build a return signal from registered return features
ledgr_signal_feature()
Build a signal from one registered feature
ledgr_select_top_n()
Select the top instruments from a signal
ledgr_weight_equal()
Convert a selection to equal long-only weights
ledgr_target_quantity()
Construct full target quantities from a selection
ledgr_target_rebalance()
Construct full target quantities from weights

Low-Level Utilities

ledgr_iso_utc()
Normalize timestamps to ISO 8601 UTC
ledgr_utc()
Parse timestamps as UTC POSIXct values
ledgr_db_init()
Initialize or open a ledgr DuckDB database
ledgr_temp_store()
Create a disposable ledgr store path
ledgr_validate_schema()
Validate the current ledgr DuckDB schema
print(<ledgr_config>)
Print a ledgr config
ledgr_backtest_bench()
Summarize per-pulse telemetry
ledgr_sim_bars()
Simulate deterministic synthetic OHLCV bars
ledgr_demo_bars
Synthetic demo OHLCV bars
ledgr_sim_pit_inputs()
Simulate a composable point-in-time input bundle
ledgr_demo_pit_inputs
Composable point-in-time demo inputs