investing-algorithm-framework 7.9.1__tar.gz → 7.10.0__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.
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/PKG-INFO +1 -1
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/backtest_run.py +7 -1
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/backtesting/backtest_service.py +4 -1
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/pyproject.toml +1 -1
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/LICENSE +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/README.md +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/algorithm/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/algorithm/algorithm.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/algorithm/algorithm_factory.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/analysis/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/analysis/backtest_data_ranges.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/analysis/permutation.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/analysis/ranking.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/app.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/app_hook.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/context.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/eventloop.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/ascii.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/backtest_report.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/charts/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/charts/entry_exist_signals.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/charts/equity_curve_drawdown.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/charts/line_chart.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/charts/monthly_returns_heatmap.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/charts/ohlcv_data_completeness.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/charts/rolling_sharp_ratio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/charts/yearly_returns_barchart.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/generate.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/tables/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/tables/key_metrics_table.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/tables/stop_loss_table.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/tables/time_metrics_table.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/tables/trade_metrics_table.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/tables/trades_table.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/tables/utils.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/reporting/templates/report_template.html.j2 +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/stateless/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/stateless/action_handlers/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/stateless/action_handlers/action_handler_strategy.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/stateless/action_handlers/check_online_handler.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/stateless/action_handlers/run_strategy_handler.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/stateless/exception_handler.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/strategy.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/task.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/controllers/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/controllers/orders.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/controllers/portfolio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/controllers/positions.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/create_app.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/error_handler.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/responses.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/run_strategies.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/schemas/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/schemas/order.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/schemas/portfolio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/schemas/position.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/app/web/setup_cors.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/cli.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/deploy_to_aws_lambda.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/deploy_to_azure_function.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/initialize_app.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/.gitignore.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/app.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/app_aws_lambda_function.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/app_azure_function.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/app_web.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/aws_lambda_dockerfile.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/aws_lambda_dockerignore.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/aws_lambda_readme.md.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/aws_lambda_requirements.txt.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/azure_function_function_app.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/azure_function_host.json.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/azure_function_local.settings.json.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/azure_function_requirements.txt.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/data_providers.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/env.example.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/env_azure_function.example.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/market_data_providers.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/readme.md.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/requirements.txt.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/run_backtest.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/cli/templates/strategy.py.template +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/create_app.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/dependency_container.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/BacktestInitializer.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/backtest.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/backtest_date_range.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/backtest_evaluation_focuss.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/backtest_metrics.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/backtest_permutation_test.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/backtest_summary_metrics.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/backtesting/combine_backtests.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/config.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/constants.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/data_provider.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/data_structures.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/decimal_parsing.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/exceptions.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/app_mode.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/base_model.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/data/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/data/data_source.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/data/data_type.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/event.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/market/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/market/market_credential.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/order/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/order/order.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/order/order_side.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/order/order_status.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/order/order_type.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/portfolio/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/portfolio/portfolio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/portfolio/portfolio_configuration.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/portfolio/portfolio_snapshot.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/position/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/position/position.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/position/position_snapshot.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/snapshot_interval.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/strategy_profile.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/time_frame.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/time_interval.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/time_unit.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/tracing/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/tracing/trace.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/trade/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/trade/trade.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/trade/trade_risk_type.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/trade/trade_status.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/trade/trade_stop_loss.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/models/trade/trade_take_profit.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/order_executor.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/portfolio_provider.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/positions/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/positions/position_size.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/services/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/services/market_credential_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/services/portfolios/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/services/portfolios/portfolio_sync_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/services/rounding_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/services/state_handler.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/stateless_actions.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/strategy.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/csv.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/custom_tqdm.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/dates.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/jupyter_notebook_detection.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/polars.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/random.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/signatures.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/stoppable_thread.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/domain/utils/synchronized.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/download_data.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/data_providers/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/data_providers/ccxt.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/data_providers/csv.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/data_providers/pandas.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/database/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/database/sql_alchemy.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/decimal_parser.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/model_extension.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/order/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/order/order.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/order/order_metadata.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/order_trade_association.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/portfolio/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/portfolio/portfolio_snapshot.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/portfolio/sql_portfolio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/position/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/position/position.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/position/position_snapshot.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/trades/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/trades/trade.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/trades/trade_stop_loss.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/models/trades/trade_take_profit.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/order_executors/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/order_executors/backtest_oder_executor.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/order_executors/ccxt_order_executor.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/portfolio_providers/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/portfolio_providers/ccxt_portfolio_provider.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/order_metadata_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/order_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/portfolio_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/portfolio_snapshot_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/position_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/position_snapshot_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/trade_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/trade_stop_loss_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/repositories/trade_take_profit_repository.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/services/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/services/aws/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/services/aws/state_handler.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/services/azure/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/infrastructure/services/azure/state_handler.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/backtesting/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/configuration_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/data_providers/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/data_providers/data_provider_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/market_credential_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/alpha.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/beta.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/cagr.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/calmar_ratio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/drawdown.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/equity_curve.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/exposure.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/generate.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/mean_daily_return.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/price_efficiency.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/profit_factor.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/recovery.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/returns.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/risk_free_rate.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/sharpe_ratio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/sortino_ratio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/standard_deviation.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/treynor_ratio.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/ulcer.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/value_at_risk.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/volatility.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/metrics/win_rate.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/order_service/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/order_service/order_backtest_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/order_service/order_executor_lookup.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/order_service/order_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/portfolios/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/portfolios/backtest_portfolio_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/portfolios/portfolio_configuration_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/portfolios/portfolio_provider_lookup.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/portfolios/portfolio_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/portfolios/portfolio_snapshot_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/portfolios/portfolio_sync_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/positions/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/positions/position_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/positions/position_snapshot_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/repository_service.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/trade_order_evaluator/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/trade_order_evaluator/backtest_trade_oder_evaluator.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/trade_order_evaluator/default_trade_order_evaluator.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/trade_order_evaluator/trade_order_evaluator.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/trade_service/__init__.py +0 -0
- {investing_algorithm_framework-7.9.1 → investing_algorithm_framework-7.10.0}/investing_algorithm_framework/services/trade_service/trade_service.py +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import json
|
|
2
2
|
import os
|
|
3
3
|
from pathlib import Path
|
|
4
|
-
from datetime import datetime
|
|
4
|
+
from datetime import datetime, timezone
|
|
5
5
|
from dataclasses import dataclass, field
|
|
6
6
|
from logging import getLogger
|
|
7
7
|
from typing import Union, List, Optional
|
|
@@ -167,6 +167,12 @@ class BacktestRun:
|
|
|
167
167
|
data["created_at"] = datetime.strptime(
|
|
168
168
|
data["created_at"], "%Y-%m-%d %H:%M:%S"
|
|
169
169
|
)
|
|
170
|
+
# Convert all to utc timezone
|
|
171
|
+
data["backtest_start_date"] = data[
|
|
172
|
+
"backtest_start_date"].replace(tzinfo=timezone.utc)
|
|
173
|
+
data["backtest_end_date"] = data[
|
|
174
|
+
"backtest_end_date"].replace(tzinfo=timezone.utc)
|
|
175
|
+
data["created_at"] = data["created_at"].replace(tzinfo=timezone.utc)
|
|
170
176
|
|
|
171
177
|
# Parse orders
|
|
172
178
|
data["orders"] = [
|
|
@@ -4,6 +4,7 @@ import sys
|
|
|
4
4
|
from collections import defaultdict
|
|
5
5
|
from datetime import datetime, timedelta, timezone
|
|
6
6
|
from typing import Dict, List, Union
|
|
7
|
+
from uuid import uuid4
|
|
7
8
|
|
|
8
9
|
import numpy as np
|
|
9
10
|
import pandas as pd
|
|
@@ -124,6 +125,8 @@ class BacktestService:
|
|
|
124
125
|
strategy: The strategy to backtest.
|
|
125
126
|
backtest_date_range: The date range for the backtest.
|
|
126
127
|
initial_amount: The initial amount to use for the backtest.
|
|
128
|
+
risk_free_rate: The risk-free rate to use for the backtest
|
|
129
|
+
metrics. Default is 0.027 (2.7%).
|
|
127
130
|
|
|
128
131
|
Returns:
|
|
129
132
|
BacktestRun: The backtest run containing the results and metrics.
|
|
@@ -257,7 +260,7 @@ class BacktestService:
|
|
|
257
260
|
if current_signal == 1 and last_trade is None:
|
|
258
261
|
amount = float(capital_for_trade / current_price)
|
|
259
262
|
order = Order(
|
|
260
|
-
id=
|
|
263
|
+
id=uuid4(),
|
|
261
264
|
target_symbol=symbol,
|
|
262
265
|
trading_symbol=trading_symbol,
|
|
263
266
|
order_type=OrderType.LIMIT,
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|