akquant 0.3.2__tar.gz → 0.3.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {akquant-0.3.2 → akquant-0.3.3}/Cargo.lock +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/Cargo.toml +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/PKG-INFO +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/analysis.md +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/start/quickstart.md +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/analysis.md +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/start/quickstart.md +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/01_foundations.md +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/pyproject.toml +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/__init__.py +1 -1
- {akquant-0.3.2 → akquant-0.3.3}/src/analysis/python.rs +3 -1
- {akquant-0.3.2 → akquant-0.3.3}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/.github/workflows/deploy-docs.yml +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/.github/workflows/docs-quality.yml +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/.github/workflows/release.yml +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/.gitignore +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/.pre-commit-config.yaml +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/CHANGELOG.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/CODE_OF_CONDUCT.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/CONTRIBUTING.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/LICENSE +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/README.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/assets/dashboard_preview.png +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/assets/logo.svg +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/assets/social_preview.png +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/CNAME +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/assets/akquant-icon.svg +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/assets/akquant-logo.svg +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/assets/reports/akquant_report.html +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/analyzer_plugin_spec.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/broker_capability_matrix.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/custom_broker_production_checklist.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/custom_broker_registry.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/data_feed_adapter_spec.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/live_functional_quickstart.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/llm.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/ml.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/multi_strategy_guide.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/multi_timeframe_feed_api.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/runtime_config.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/strategy_style_decision.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/timezone.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/advanced/warm_start.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/cross_section_checklist.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/custom_indicator.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/data.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/examples.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/factor.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/indicator_scenario_quickref.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/optimization.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/python_basics.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/quant_basics.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/rust_indicator_reference.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/strategy.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/talib_indicator_playbook.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/testing.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/guide/visualization.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/index.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/meta/architecture.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/meta/internals.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/reference/api.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/start/first_strategy.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/start/installation.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/start/setup_guide.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/01_foundations.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/02_programming.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/03_data.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/04_backtest_engine.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/05_strategy.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/06_stock_a.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/07_futures.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/08_options.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/09_funds.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/10_analysis.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/11_optimization.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/12_ml.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/13_visualization.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/14_factor.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/15_live_trading.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/16_rust_indicators.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/en/textbook/index.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/javascripts/mathjax.js +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/javascripts/search-lang-filter.js +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/robots.txt +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/adding_a_broker.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/analyzer_plugin_spec.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/broker_capability_matrix.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/custom_broker_production_checklist.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/custom_broker_registry.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/data_feed_adapter_spec.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/live_functional_quickstart.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/llm.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/ml.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/multi_strategy_guide.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/multi_timeframe_feed_api.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/runtime_config.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/strategy_style_decision.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/timezone.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/advanced/warm_start.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/cross_section_checklist.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/custom_indicator.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/data.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/examples.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/factor.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/indicator_scenario_quickref.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/optimization.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/python_basics.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/quant_basics.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/rust_indicator_reference.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/strategy.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/talib_indicator_playbook.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/testing.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/guide/visualization.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/index.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/meta/architecture.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/meta/internals.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/reference/api.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/start/first_strategy.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/start/installation.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/start/setup_guide.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/00_glossary.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/02_programming.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/03_data.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/04_backtest_engine.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/05_strategy.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/06_stock_a.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/07_futures.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/08_options.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/09_funds.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/10_analysis.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/11_optimization.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/12_ml.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/13_visualization.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/14_factor.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/15_live_trading.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/16_rust_indicators.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/ROADMAP.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/appendix_cite.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/appendix_pitfalls.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/appendix_setup.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/capstone.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/docs/zh/textbook/index.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/01_quickstart.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/02_parameter_optimization.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/03_parameter_optimization_advanced.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/04_mixed_assets.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/05_live_trading_ctp.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/06_complex_orders.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/07_option_test.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/08_event_callbacks.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/09_ml_framework.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/10_ml_walk_forward.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/11_plot_visualization.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/12_wfo_integrated.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/13_quantstats_report.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/14_multi_frequency.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/15_plot_intraday.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/16_adj_returns_signal.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/17_readme_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/18_benchmark_multisymbol.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/19_factor_expression.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/20_risk_management_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/21_warm_start_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/22_strategy_runtime_config_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/23_functional_callbacks_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/24_functional_tick_simulation_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/25_streaming_backtest_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/26_streaming_quickstart.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/27_streaming_monitoring_console.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/28_streaming_alerts_and_persist.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/29_streaming_event_report.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/30_streaming_report_oneclick.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/31_streaming_live_console.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/32_streaming_live_web.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/33_report_and_analysis_outputs.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/34_multi_strategy_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/35_custom_broker_registry_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/36_trailing_orders.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/37_feed_replay_alignment_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/38_live_functional_strategy_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/39_live_broker_submit_order_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/40_functional_multi_slot_risk_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/41_live_multi_slot_orchestration_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/42_live_broker_event_audit_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/43_target_weights_rebalance.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/44_strategy_source_loader_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/45_talib_indicator_playbook_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/46_broker_profile_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/47_margin_liquidation_audit_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/48_margin_liquidation_priority_compare.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/49_on_expiry_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/50_framework_hooks_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/51_class_tick_callbacks_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/52_pre_open_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/53_timer_to_pre_open_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/54_functional_pre_open_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/55_functional_ml_walk_forward.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/56_functional_warm_start_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/57_functional_multi_slot_warm_start_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/58_incremental_bootstrap_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/59_akshare_etf_rotation.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/60_custom_indicator_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/61_indicator_visualization_export_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/62_indicator_streaming_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/63_indicator_ws_bridge_demo.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/64_indicator_live_web.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/65_bar_generator.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/README.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/benchmark_utils.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/pb_mock.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/01_stock_dual_moving_average.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/02_stock_grid_trading.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/03_stock_atr_breakout.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/04_stock_momentum_rotation.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/05_stock_momentum_rotation_timer.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/06_stock_momentum_rotation_bucket.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/07_stock_momentum_rotation_on_timer.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/08_target_positions_long_short.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/09_stock_momentum_rotation_after_bar.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/strategies/README.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch01_quickstart.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch02_programming.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch03_data.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch04_comparison.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch05_strategy.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch06_stock_a.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch07_futures.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch08_options.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch09_funds.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch09_portfolio.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch10_analysis.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch11_optimization.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch12_ml.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch13_visualization.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch14_factor.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch15_live_trading.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch15_strategy_loader.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/examples/textbook/ch16_indicators.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/mkdocs.yml +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/akquant.pyi +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/analysis/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/analysis/benchmark.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/analyzer_plugin.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/backtest/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/backtest/__init__.pyi +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/backtest/engine.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/backtest/result.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/bar_generator.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/checkpoint.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/config.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/data.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/execution/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/execution/base.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/execution/sim.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/factor/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/factor/engine.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/factor/ops.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/factor/parser.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/feed_adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/fund/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/futures/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/base.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_event_adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_event_bridge.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_event_mapper.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_execution.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_models.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_recovery.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_runtime.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_state_cache.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/broker_strategy_api.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/builtins.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/ctp/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/ctp/adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/ctp/native.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/miniqmt/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/miniqmt/stub.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/plugins.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/ptrade/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/brokers/ptrade/stub.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/ctp_adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/ctp_native.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/factory.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/local_stop_book.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/mapper.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/miniqmt.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/models.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/order_receipt.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/order_submitter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/protocols.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/ptrade.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/registry.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/gateway/trader_base.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/indicator.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/indicator_recording.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/indicator_stream.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/live.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/log.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/ml/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/ml/model.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/optimize.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/option/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/params.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/params_adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/plot/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/plot/analysis.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/plot/dashboard.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/plot/indicator.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/plot/report.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/plot/strategy.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/plot/utils.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/py.typed +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/risk.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/sizer.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/stock/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_events.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_framework_hooks.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_history.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_loader.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_logging.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_ml.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_order_events.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_position.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_scheduler.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_time.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/strategy_trading_api.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/talib/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/talib/backend.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/talib/core.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/talib/funcs.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/utils/__init__.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/python/akquant/utils/inspector.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/requirements-dev.txt +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/scripts/cargo-test.sh +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/scripts/check_docs_api_examples.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/scripts/check_docs_links.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/scripts/dev-check.sh +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/scripts/find_legacy_execution_policy_calls.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/scripts/golden_baseline_report.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/account.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/analysis/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/analysis/result.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/analysis/tests.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/analysis/tracker.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/analysis/types.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/bin/stub_gen.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/clock.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/context.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/data/aggregator.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/data/batch.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/data/client.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/data/feed.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/data/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/engine/core.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/engine/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/engine/python.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/engine/state.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/error.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/event.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/event_manager.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/common.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/crypto.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/forex.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/futures.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/matcher.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/option.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/python.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/realtime.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/simulated.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/slippage.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/execution/stock.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/history.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/momentum.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/momentum_oscillators.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/momentum_rates.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/moving_average.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/moving_average_compound.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/moving_average_core.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/moving_average_transforms.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/moving_average_windowed.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/trend.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/trend_directional.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/trend_oscillators.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/trend_regression.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/volatility.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/volatility_price.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/volatility_stats.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators/volume.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/indicators.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/lib.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/log_context.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/margin/calculator.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/margin/engine.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/margin/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/china.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/core.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/corporate_action.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/fund.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/futures.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/manager.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/option.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/simple.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/market/stock.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/model/corporate_action.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/model/instrument.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/model/market_data.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/model/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/model/order.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/model/timer.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/model/types.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/order_manager.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/processor.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/runner.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/stages/channel.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/stages/cleanup.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/stages/data.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/stages/execution.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/stages/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/stages/shared.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/stages/statistics.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/pipeline/stages/strategy.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/portfolio.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/common.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/config.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/futures.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/manager.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/option.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/portfolio.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/rule.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/risk/stock.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/settlement/expiry.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/settlement/handler.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/settlement/manager.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/settlement/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/settlement/option.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/src/statistics/mod.rs +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/gateway_contract/test_event_bridge_contract.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/gateway_contract/test_recovery_contract.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/gateway_contract/test_submitter_contract.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/BASELINE_REPORT.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/LEGACY_EXECUTION_CALLS.md +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/futures_margin/equity_curve.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/futures_margin/metrics.json +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/futures_margin/orders.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/option_basic/equity_curve.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/option_basic/metrics.json +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/option_basic/orders.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/stock_t1/equity_curve.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/stock_t1/metrics.json +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/stock_t1/orders.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/baselines/stock_t1/trades.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/futures_margin/equity_curve.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/futures_margin/metrics.json +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/futures_margin/orders.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/option_basic/equity_curve.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/option_basic/metrics.json +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/option_basic/orders.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/stock_t1/equity_curve.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/stock_t1/metrics.json +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/stock_t1/orders.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/current/stock_t1/trades.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/data/future_margin.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/data/future_margin.parquet.sha256 +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/data/option_basic.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/data/option_basic.parquet.sha256 +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/data/stock_t1.parquet +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/data/stock_t1.parquet.sha256 +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/gen_data.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/runner.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/strategies/futures_margin.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/strategies/option_basic.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/strategies/stock_t1.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/golden/test_golden.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_account_risk_rules.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_api_rename_cash.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_api_rename_composites.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_api_rename_equity.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_api_rename_holding_bars.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_api_rename_positions.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_api_rename_rebalance.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_bar_generator.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_bridge_adapts_events.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_bridge_drives_order_groups.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_event_adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_event_adapter_local_id.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_execution_local_stops.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_execution_read_path_parity.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_execution_stop_requeue.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_plugins.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_position_sync.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_seed_baseline.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_broker_trade_redelivery_dedup.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_close_position_delegate.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_composed_ctx_not_ready.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_cost_config_consolidation.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_custom_matcher.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_data_catalog.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_docs_api_examples.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_docs_links.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_engine.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_event_model_parity.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_examples_regression.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_execution_binding.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_execution_broker.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_execution_broker_reads_routed.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_execution_composed_parity.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_execution_read_delegation.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_execution_sim.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_execution_write_delegation.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_factor_engine.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_factor_ops.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_feed_adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_broker_live_cancel.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_broker_live_reads.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_broker_models_ext.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_broker_state_cache.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_broker_state_invalidation.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_broker_submitter_readiness.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_broker_submitter_signature.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_brokers_paths.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_builtins_registry.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_callbacks.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_ctp_adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_ctp_native.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_factory.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_mapper.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_optional_market.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_order_submitter_extra.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_registry.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_sim_submit_guard.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_tif_mapping.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_gateway_trader_base.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_indicator_live_web_example.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_indicator_recording.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_inspector.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_live_runner.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_live_runner_broker_bridge.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_live_runner_broker_readiness.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_live_runner_broker_recovery.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_live_runner_broker_submitter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_live_runner_order_request_cache.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_live_runner_stop_remap.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_local_stop_book.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_local_stop_book_threadsafe.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_local_stop_scenario.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_multisymbol_cross_section_consistency.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_oco_bracket_broker_live_scenario.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_on_execution_report_noop.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_order_receipt.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_order_receipt_backtest.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_orders_df.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_params_adapter.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_partial_filled_status.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_portfolio.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_quickstart_stream_consistency.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_removed_wrappers.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_report_helpers.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_report_plot_extensions.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_result_analysis_extensions.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_review_minors_cleanup.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_stop_id_remap_scenario.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_stop_orders.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_strategy_events_stop_hook.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_strategy_extras.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_strategy_order_group_lock.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_strategy_sizing_broker_live_guard.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_strategy_timers_indicators.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_t_plus_one.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_talib_backend.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_talib_compat.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_target_orders_core.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_trades_df.py +0 -0
- {akquant-0.3.2 → akquant-0.3.3}/tests/test_version.py +0 -0
|
@@ -116,7 +116,7 @@ aqp.plot_pnl_vs_duration(result.trades_df)
|
|
|
116
116
|
| `open_position_count` | Open Position Count | Int | Number of symbols still carrying open positions at the end of the backtest. |
|
|
117
117
|
| `initial_market_value` | Initial Market Value | Float | Initial capital (usually Cash). |
|
|
118
118
|
| `end_market_value` | End Market Value | Float | Total asset value at the end (Cash + Position Value). |
|
|
119
|
-
| `total_pnl` | Total PnL | Float | `end_market_value - initial_market_value`. |
|
|
119
|
+
| `total_pnl` | Total PnL | Float | `end_market_value - initial_market_value` (portfolio-level: realized net PnL + unrealized floating PnL). Note it is NOT equal to `total_profit + total_loss` (which is the trade-level realized gross PnL, before commission and excluding floating PnL); for the trade-level realized gross PnL use `result.trade_metrics.gross_pnl`. |
|
|
120
120
|
| `unrealized_pnl` | Unrealized PnL | Float | Floating PnL of open positions at the end. |
|
|
121
121
|
| `total_return_pct` | Total Return | **%** | `(End MV - Initial MV) / Initial MV * 100`. |
|
|
122
122
|
| `annualized_return` | Annualized Return | Ratio | `(1 + Total Return)^(1/Years) - 1`. |
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
| `open_position_count` | 未平仓标的数 | Int | 回测结束时仍有持仓的标的数量。 |
|
|
16
16
|
| `initial_market_value` | 初始市值 | Float | 初始资金 (通常为 Cash)。 |
|
|
17
17
|
| `end_market_value` | 结束市值 | Float | 回测结束时的总资产 (Cash + 持仓市值)。 |
|
|
18
|
-
| `total_pnl` | 总盈亏 | Float | `end_market_value - initial_market_value`。 |
|
|
18
|
+
| `total_pnl` | 总盈亏 | Float | `end_market_value - initial_market_value`(组合层:已实现净盈亏 + 未实现浮动盈亏)。注意它不等于 `total_profit + total_loss`(后者是逐笔已实现毛盈亏,未扣佣金、不含浮动盈亏);若需逐笔已实现毛盈亏请用 `result.trade_metrics.gross_pnl`。 |
|
|
19
19
|
| `unrealized_pnl` | 未实现盈亏 | Float | 结束时持仓的浮动盈亏。 |
|
|
20
20
|
| `total_return_pct` | 总收益率 | **% (百分比)** | `(结束市值 - 初始市值) / 初始市值 * 100`。 |
|
|
21
21
|
| `annualized_return` | 年化收益率 | Ratio (小数) | `(1 + 总收益率)^(1/年数) - 1`。注意这里是小数,如 0.2 表示 20%。 |
|
|
@@ -8,7 +8,7 @@ try:
|
|
|
8
8
|
except metadata.PackageNotFoundError:
|
|
9
9
|
__version__ = "0.0.0+unknown"
|
|
10
10
|
|
|
11
|
-
__engine_rule_version__ = "1.
|
|
11
|
+
__engine_rule_version__ = "1.2.0" # Increment on behavior-changing updates
|
|
12
12
|
|
|
13
13
|
from . import akquant as _akquant
|
|
14
14
|
from . import log as _log
|
|
@@ -567,7 +567,9 @@ impl BacktestResult {
|
|
|
567
567
|
push_f64(open_position_count);
|
|
568
568
|
push_f64(metrics.initial_market_value);
|
|
569
569
|
push_f64(metrics.end_market_value);
|
|
570
|
-
|
|
570
|
+
// total_pnl 为组合层总盈亏,与文档一致 = end_market_value - initial_market_value
|
|
571
|
+
// (即已实现净盈亏 + 未实现浮动盈亏)。逐笔已实现毛盈亏请用 trade_metrics.gross_pnl。
|
|
572
|
+
push_f64(metrics.end_market_value - metrics.initial_market_value);
|
|
571
573
|
push_f64(t_metrics.unrealized_pnl);
|
|
572
574
|
push_f64(metrics.total_return_pct);
|
|
573
575
|
push_f64(metrics.annualized_return);
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|