investing-algorithm-framework 7.16.13__tar.gz → 7.16.15__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.
Potentially problematic release.
This version of investing-algorithm-framework might be problematic. Click here for more details.
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/PKG-INFO +1 -1
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/order/order.py +3 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/trade/trade.py +5 -2
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/backtesting/backtest_service.py +18 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/win_rate.py +4 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/pyproject.toml +1 -1
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/LICENSE +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/README.md +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/algorithm/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/algorithm/algorithm.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/algorithm/algorithm_factory.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/analysis/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/analysis/backtest_data_ranges.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/analysis/permutation.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/analysis/ranking.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/app.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/app_hook.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/context.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/eventloop.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/ascii.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/backtest_report.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/entry_exist_signals.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/equity_curve.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/equity_curve_drawdown.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/line_chart.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/monthly_returns_heatmap.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/ohlcv_data_completeness.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/rolling_sharp_ratio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/charts/yearly_returns_barchart.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/generate.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/tables/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/tables/key_metrics_table.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/tables/stop_loss_table.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/tables/time_metrics_table.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/tables/trade_metrics_table.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/tables/trades_table.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/tables/utils.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/reporting/templates/report_template.html.j2 +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/stateless/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/stateless/action_handlers/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/stateless/action_handlers/action_handler_strategy.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/stateless/action_handlers/check_online_handler.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/stateless/action_handlers/run_strategy_handler.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/stateless/exception_handler.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/strategy.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/task.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/controllers/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/controllers/orders.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/controllers/portfolio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/controllers/positions.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/create_app.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/error_handler.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/responses.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/run_strategies.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/schemas/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/schemas/order.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/schemas/portfolio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/schemas/position.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/app/web/setup_cors.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/cli.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/deploy_to_aws_lambda.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/deploy_to_azure_function.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/initialize_app.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/.gitignore.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/app.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/app_aws_lambda_function.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/app_azure_function.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/app_web.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/aws_lambda_dockerfile.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/aws_lambda_dockerignore.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/aws_lambda_readme.md.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/aws_lambda_requirements.txt.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/azure_function_function_app.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/azure_function_host.json.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/azure_function_local.settings.json.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/azure_function_requirements.txt.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/data_providers.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/env.example.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/env_azure_function.example.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/market_data_providers.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/readme.md.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/requirements.txt.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/run_backtest.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/cli/templates/strategy.py.template +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/create_app.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/dependency_container.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/backtest.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/backtest_date_range.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/backtest_evaluation_focuss.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/backtest_metrics.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/backtest_permutation_test.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/backtest_run.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/backtest_summary_metrics.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/backtesting/combine_backtests.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/config.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/constants.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/data_provider.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/data_structures.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/decimal_parsing.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/exceptions.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/app_mode.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/base_model.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/data/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/data/data_source.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/data/data_type.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/event.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/market/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/market/market_credential.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/order/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/order/order_side.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/order/order_status.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/order/order_type.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/portfolio/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/portfolio/portfolio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/portfolio/portfolio_configuration.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/portfolio/portfolio_snapshot.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/position/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/position/position.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/position/position_snapshot.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/snapshot_interval.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/strategy_profile.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/time_frame.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/time_interval.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/time_unit.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/tracing/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/tracing/trace.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/trade/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/trade/trade_risk_type.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/trade/trade_status.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/trade/trade_stop_loss.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/models/trade/trade_take_profit.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/order_executor.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/portfolio_provider.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/positions/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/positions/position_size.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/services/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/services/market_credential_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/services/portfolios/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/services/portfolios/portfolio_sync_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/services/rounding_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/services/state_handler.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/stateless_actions.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/strategy.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/csv.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/custom_tqdm.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/dates.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/jupyter_notebook_detection.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/polars.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/random.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/signatures.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/stoppable_thread.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/domain/utils/synchronized.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/download_data.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/data_providers/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/data_providers/ccxt.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/data_providers/csv.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/data_providers/pandas.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/database/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/database/sql_alchemy.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/decimal_parser.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/model_extension.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/order/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/order/order.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/order/order_metadata.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/order_trade_association.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/portfolio/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/portfolio/portfolio_snapshot.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/portfolio/sql_portfolio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/position/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/position/position.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/position/position_snapshot.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/trades/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/trades/trade.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/trades/trade_stop_loss.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/models/trades/trade_take_profit.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/order_executors/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/order_executors/backtest_oder_executor.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/order_executors/ccxt_order_executor.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/portfolio_providers/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/portfolio_providers/ccxt_portfolio_provider.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/order_metadata_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/order_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/portfolio_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/portfolio_snapshot_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/position_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/position_snapshot_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/trade_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/trade_stop_loss_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/repositories/trade_take_profit_repository.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/services/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/services/aws/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/services/aws/state_handler.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/services/azure/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/infrastructure/services/azure/state_handler.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/backtesting/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/configuration_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/data_providers/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/data_providers/data_provider_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/market_credential_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/alpha.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/beta.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/cagr.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/calmar_ratio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/drawdown.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/equity_curve.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/exposure.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/generate.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/mean_daily_return.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/price_efficiency.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/profit_factor.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/recovery.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/returns.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/risk_free_rate.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/sharpe_ratio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/sortino_ratio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/standard_deviation.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/trades.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/treynor_ratio.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/ulcer.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/value_at_risk.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/metrics/volatility.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/order_service/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/order_service/order_backtest_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/order_service/order_executor_lookup.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/order_service/order_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/portfolios/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/portfolios/backtest_portfolio_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/portfolios/portfolio_configuration_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/portfolios/portfolio_provider_lookup.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/portfolios/portfolio_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/portfolios/portfolio_snapshot_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/portfolios/portfolio_sync_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/positions/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/positions/position_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/positions/position_snapshot_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/repository_service.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/trade_order_evaluator/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/trade_order_evaluator/backtest_trade_oder_evaluator.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/trade_order_evaluator/default_trade_order_evaluator.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/trade_order_evaluator/trade_order_evaluator.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/trade_service/__init__.py +0 -0
- {investing_algorithm_framework-7.16.13 → investing_algorithm_framework-7.16.15}/investing_algorithm_framework/services/trade_service/trade_service.py +0 -0
|
@@ -238,6 +238,9 @@ class Order(BaseModel):
|
|
|
238
238
|
created_at = self.created_at
|
|
239
239
|
updated_at = self.updated_at
|
|
240
240
|
|
|
241
|
+
# Ensure status is a string
|
|
242
|
+
self.status = OrderStatus.from_value(self.status).value
|
|
243
|
+
|
|
241
244
|
return {
|
|
242
245
|
"id": self.id,
|
|
243
246
|
"external_id": self.external_id,
|
|
@@ -273,6 +273,9 @@ class Trade(BaseModel):
|
|
|
273
273
|
closed_at = self.closed_at
|
|
274
274
|
updated_at = self.updated_at
|
|
275
275
|
|
|
276
|
+
# Ensure status is a string
|
|
277
|
+
self.status = TradeStatus.from_value(self.status).value
|
|
278
|
+
|
|
276
279
|
return {
|
|
277
280
|
"id": self.id,
|
|
278
281
|
"orders": [
|
|
@@ -339,7 +342,7 @@ class Trade(BaseModel):
|
|
|
339
342
|
Order.from_dict(order)
|
|
340
343
|
for order in data["orders"]
|
|
341
344
|
]
|
|
342
|
-
|
|
345
|
+
print(data)
|
|
343
346
|
return Trade(
|
|
344
347
|
id=data.get("id", None),
|
|
345
348
|
orders=orders,
|
|
@@ -354,7 +357,7 @@ class Trade(BaseModel):
|
|
|
354
357
|
remaining=data.get("remaining", 0),
|
|
355
358
|
net_gain=data.get("net_gain", 0),
|
|
356
359
|
last_reported_price=data.get("last_reported_price"),
|
|
357
|
-
status=data["status"],
|
|
360
|
+
status=TradeStatus.from_value(data["status"]).value,
|
|
358
361
|
cost=data.get("cost", 0),
|
|
359
362
|
updated_at=updated_at,
|
|
360
363
|
stop_losses=stop_losses,
|
|
@@ -410,6 +410,16 @@ class BacktestService:
|
|
|
410
410
|
)
|
|
411
411
|
)
|
|
412
412
|
|
|
413
|
+
unique_symbols = set()
|
|
414
|
+
for trade in trades:
|
|
415
|
+
unique_symbols.add(trade.target_symbol)
|
|
416
|
+
|
|
417
|
+
number_of_trades_closed = len(
|
|
418
|
+
[t for t in trades if TradeStatus.CLOSED.equals(t.status)]
|
|
419
|
+
)
|
|
420
|
+
number_of_trades_open = len(
|
|
421
|
+
[t for t in trades if TradeStatus.OPEN.equals(t.status)]
|
|
422
|
+
)
|
|
413
423
|
# Create a backtest run object
|
|
414
424
|
run = BacktestRun(
|
|
415
425
|
trading_symbol=trading_symbol,
|
|
@@ -423,6 +433,14 @@ class BacktestService:
|
|
|
423
433
|
backtest_start_date=backtest_date_range.start_date,
|
|
424
434
|
backtest_end_date=backtest_date_range.end_date,
|
|
425
435
|
backtest_date_range_name=backtest_date_range.name,
|
|
436
|
+
number_of_days=(
|
|
437
|
+
backtest_date_range.end_date - backtest_date_range.end_date
|
|
438
|
+
).days,
|
|
439
|
+
number_of_trades=len(trades),
|
|
440
|
+
number_of_orders=len(orders),
|
|
441
|
+
number_of_trades_closed=number_of_trades_closed,
|
|
442
|
+
number_of_trades_open=number_of_trades_open,
|
|
443
|
+
number_of_positions=len(unique_symbols),
|
|
426
444
|
symbols=list(buy_signals.keys())
|
|
427
445
|
)
|
|
428
446
|
|
|
@@ -52,9 +52,13 @@ def get_win_rate(trades: List[Trade]) -> float:
|
|
|
52
52
|
Returns:
|
|
53
53
|
float: The win rate as a percentage (e.g., o.75 for 75% win rate).
|
|
54
54
|
"""
|
|
55
|
+
for trade in trades:
|
|
56
|
+
print(trade.status)
|
|
57
|
+
|
|
55
58
|
trades = [
|
|
56
59
|
trade for trade in trades if TradeStatus.CLOSED.equals(trade.status)
|
|
57
60
|
]
|
|
61
|
+
print(len(trades))
|
|
58
62
|
positive_trades = sum(1 for trade in trades if trade.net_gain > 0)
|
|
59
63
|
total_trades = len(trades)
|
|
60
64
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|