9 Commits

Author SHA1 Message Date
Jhonathan Abreu 8f2a23e97f Results analyzer (#9336)
* Initial backtest analyzer commit

* Changes for cleanup

* Minor fix

* Add class for analysis result context

* Fix more models

* More fixes

* More fixes

* More fixes

* More fixes

* Cleanup

* Cleanup

* Add documentation

* Cleanup and remove some classes

* Write backtest analysis to results file

* Cleanup

* Minor fixes

* Minor fix

* Minor cleanup

* Implement json deserialization for backtest analysis result

* Rename analyzer classes to generalize

Remove "backtest" references from names

* Add weight to analyses

* Run analyses in order by weight

* Cleanup

* Cleanup

* Update Issue text

* Set sub-test weights to 0

* Update test weights

* Add xml docs

* Disable result analysis on regression tests

* Refactor analysis naming

* Renaming cleanup

* Simplify analysis results context

* Log when analyzer reaches max tests or time limit

* Sample down equity curve to match daily benchmark

* Minor changes

* Minor fixes

---------

Co-authored-by: Derek Melchin <melchin.derek@gmail.com>
2026-04-07 17:41:12 -04:00
Jhonathan Abreu 7fb246511a Add total performance statistics to live result files (#9224)
Report Generator Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
API Tests / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Syntax Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Add total performance statistics to live result files

* Truncate closed trades in live results

* Avoid adding totalPerformance to live minute result file

* Deprecated Trade.Symbol in favor of new Trade.Symbols

* Fixes for Trade serialization

* Add trades json serialization tests

* Cleanup
2026-01-16 15:41:35 -04:00
Martin-Molinero 7705895cc6 Portfolio margin chart (#7719)
API Tests / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* Portfolio state chart

- Cleanup and renames
- Add series.IndexName. Uodating unit tests
- Add Chart.LegendDisabled. Adding new unit tests
- Add ChartPoint.Tooltip. Updating unit tests
- Minor compression tweak. Adding unit test
- Add ChartJsonConverter. Adding unit tests

* Minor chart serialization order tweak

* Refactor portfolio state sampling and storing

* Move PortfolioMargin into a lean side chart
2024-02-01 12:43:08 -03:00
Martin-Molinero bbbab6d9a8 Refactor alpha statistics phase I (#7055)
Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
* Refactor alpha statistics

- Refactor alpha statistics, cleaning up and simplifying no longer required calculations and scoring
- Adding new InsightEvaluator abstraction, adding C# & PY regression
  algorithms

* Optimization backtest result json converter update

* Address reviews

- Remove IAlphaHandler, move insight storage responsability to IResultHandler
  and centralizing insight collection on the QCAlgorithm.Insights to be
  reused by the framework models
- Fix portfolio turnover single day backtests and duplicate time
  sampling handling. Updating regression algorithms

* Add InsightCollection tests and minor fixes

* Adding more & improved tests
2023-03-10 13:12:23 -03:00
Ronit Jain a9c4d29776 Feature add algorithm state information in result packets (#6839)
Regression Tests / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* add state to backtesting result packets

* self review

* add state in live results

* set runtime error in algorithm

* set hostname in job packets

* Set state when algorithm is null

* address review

* address reviews

* set runtime error when algorithm is not available during runtime
2023-01-11 10:54:38 -03:00
Jhonathan Abreu 548a6998e3 Report generation with non-default algorithm settings (#6589)
Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
* Add algorithm settings to backtest results

* Use algorithm result settings in report generation

* Add unit tests

* Housekeeping

* Changes for live result report

* Housekeeping

* Housekeeping

* Housekeeping

* Add unit tests
2022-08-30 19:23:25 -03:00
Martin-Molinero 813412afb2 Persist and order runtime statistics (#6314)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
2022-04-29 20:59:40 -03:00
Martin Molinero bd862cff61 Live and backtest OrderEvent store and stream
- Live and backtesting will send delta order events updates
- Live will store order events every 10 minutes per day
- Backtesting will store last 100 order events on every update and will
store all order events in the end of the backtest
2020-03-30 11:07:18 -03:00
Martin Molinero 4d0d85ec16 Add Result parameter class
- Add BaseResultParameters and Live/BacktestResultParameters classes
2020-02-25 17:02:30 -03:00