1540 Commits

Author SHA1 Message Date
Jhonathan Abreu c863347cd9 Address peer review 2024-08-26 12:46:43 -04:00
Jhonathan Abreu 3394b5dc52 Update index options regression algorithms stats 2024-08-26 11:02:21 -04:00
Jhonathan Abreu 3b07ba1e2d Minor regression tests updates after rebase 2024-08-26 11:02:20 -04:00
Jhonathan Abreu b650028d6a Regression tests updates after rebasing from master 2024-08-26 11:02:20 -04:00
Jhonathan Abreu 9a8d9fd1fb Some regression algorithms and unit tests cleanup 2024-08-26 11:02:20 -04:00
Jhonathan Abreu b3b4cc370c Use double in price option numerical models 2024-08-26 11:02:19 -04:00
Jhonathan Abreu 29bb2295c0 Add more assertions to new options filter api regression algorithms 2024-08-26 11:02:18 -04:00
Jhonathan Abreu fb37aa3eee Address peer review 2024-08-26 11:02:18 -04:00
Jhonathan Abreu 051e98b691 Added options greeks data and updated regression algorithms 2024-08-26 11:02:18 -04:00
Jhonathan Abreu 3bb3c15b7f Add regression algorithms for new options filter universe api methods 2024-08-26 11:02:17 -04:00
Jhonathan Abreu 8bdf6c0e29 Add OptionUniverse history regression algorithms 2024-08-26 11:02:17 -04:00
Jhonathan Abreu 532f7bf32a Option filter universe api updates 2024-08-26 11:02:17 -04:00
Jhonathan Abreu 69c5bd1d60 Update options filter universe API to use OptionUniverse data
Add new filter methods for greeks, IV and open interest
2024-08-26 11:02:17 -04:00
Jhonathan Abreu 58de70995d Minor changes 2024-08-26 11:02:17 -04:00
Jhonathan Abreu a4fa181d23 Minor changes 2024-08-26 11:02:17 -04:00
Jhonathan Abreu 3c6101dcd5 Data fixes and regression algos stats update 2024-08-26 11:00:32 -04:00
Jhonathan Abreu 811a03fcfb Update regression algorithms stats 2024-08-26 11:00:32 -04:00
Jhonathan Abreu 9b1872f10a Update regression algorithms stats 2024-08-26 11:00:31 -04:00
Jhonathan Abreu 114c858c7e Added option universe csv header property 2024-08-26 11:00:31 -04:00
Jhonathan Abreu 88f04e4da6 Fix option chain provider history request 2024-08-26 11:00:31 -04:00
Jhonathan Abreu ec70efe915 Update regression algorithms stats and minor fixes 2024-08-26 11:00:31 -04:00
Jhonathan Abreu 96d86a3c63 Update regression algorithm stats 2024-08-26 11:00:31 -04:00
Jhonathan Abreu 3251da986e Peer recommended changes and fixes 2024-08-26 11:00:31 -04:00
Jhonathan Abreu 859a21607b Minor changes 2024-08-26 11:00:31 -04:00
Jhonathan Abreu f889f8a7c7 Minor changes 2024-08-26 11:00:31 -04:00
Jhonathan Abreu d1e5e28832 Fix universe selection subscriptions start time to not include extended market hours 2024-08-26 11:00:30 -04:00
Jhonathan Abreu 448e69e8a5 Fix symbols parsing in OptionUniverse 2024-08-26 11:00:30 -04:00
Jhonathan Abreu af6d45a5e0 Address peer review 2024-08-26 11:00:30 -04:00
Jhonathan Abreu 253c322066 Updated options regression algorithms stats for new universe data 2024-08-26 11:00:29 -04:00
Jhonathan Abreu 056f1ec572 Updated options regression algorithms stats for new universe data 2024-08-26 11:00:29 -04:00
Jhonathan Abreu e56f1ea82d Updated options regression algorithms stats for new universe data 2024-08-26 11:00:29 -04:00
Jhonathan Abreu dafb81cf2a Updated options regression algorithms stats for new universe data 2024-08-26 11:00:29 -04:00
Jhonathan Abreu 4d0c284df3 Updated options regression algorithms stats for new universe data 2024-08-26 11:00:29 -04:00
Jhonathan Abreu 12f16da756 File based options universe fixes and improvements.
- Adjust OptionUniverse start-end times and period.
- Adapt unit tests and some algorithms to pass with new options universe selection.
2024-08-26 11:00:29 -04:00
Jhonathan Abreu 4144c09286 Initial options universe with greeks implementation 2024-08-26 11:00:29 -04:00
Roman Yavnikov f31251732e Fix: Coinbase MinimumOrderSize tests based on new SPDB data (#8276)
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
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* test:fix: minimValue based on new SPDB data

* fix: Estimated Strategy Capacity in FractionalQuantityRegressionAlgorithm
2024-08-23 11:47:45 -03:00
Martin-Molinero 363d469d6a Minor indicator history fix (#8270)
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
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* Minor indicator history fix

- Take into account warmup period when used, the last bar of the warmup
  period is counted as a data point.
- Fix bug where in some cases the last data point could of been missed
  and the indicator not updated with it

* Minor tweak
2024-08-22 16:48:26 -03:00
Jhonathan Abreu 9b332c2149 Dividend yield calculation fix (#8264)
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
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* Fix dividend yield calculation

* Get security price as input for dividend yield provider

* Account for splits in dividend yield provider

* Fix split adjustment for dividend yield calculation

* Use right dividend yield in options indicators
2024-08-19 09:30:05 -04:00
Martin-Molinero 7879795207 Enable daily precise end time by default (#8254)
API Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Report Generator Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
* Default daily precise end times

- Enable by default daily precise end times. Updating stats
- Minor fix for algorithm manager consolidator updates, adding new regression test
  asserting behavior and updating others
- Minor fix for SubscriptionData creator avoid round down on warmup if
  not appropiate
- Adjust consolidators to emit on daily strict end times if requested
  daily resolution and setting enabled
- Updating regression algorithms

* Skip daily data on extended market hours

* Some cleanup and self review

* Revert unrequired change
2024-08-14 12:49:56 -03:00
Noah Misch d2d366e3f9 Fix sign of order quantity in example algorithm OnMarginCall(). (#8251)
Regression Tests / build (push) Has been cancelled
API Tests / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
Despite the comments about avoiding margin calls and about padding, this
turned a proposed sale of 100 shares into a *buy* of 110 shares.
2024-08-12 17:40:51 -03:00
Ricardo Andrés Marino Rojas 5226b7a468 Add more options to Field class (#8228)
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
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* First draft of the solution

* Reduce duplication and add more properties

* Add regression tests

* Add xml docs

* Add unit tests

* Improve regression and unit tests

* Address requested changes

* Address request and improve unit tests

* Add unit test and fix bug

* Improve unit tests and implementation

* Nit change

* Address reviews

* Improve regression tests

* Address requests

* Fix bug

* Address requests
2024-08-07 19:08:34 -03:00
Noah Misch 2b1136e446 Fix algorithms using OnData(TradeBars) w/o using arg or other OnData(). (#8245)
Report Generator 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
API Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
Commit d24f665ee4 removed the
Engine/AlgorithmManager.cs support for OnData(TradeBars), making these
methods dead code.  Hence, some of these algorithms no longer placed
orders.  Fix by changing OnData(TradeBars) to OnData(Slice).  Files that
use the TradeBars argument or use OnData(Dividends) have the same
trouble; leave them for future work.
2024-08-06 10:15:56 -03:00
Jhonathan Abreu 9eb484625d Default option pricing models for options indicators (#8229)
* Set best recommended model based on option style.

The best option model will be used in options indicators based on option style if not specified

* Reduced Greeks/IV numerical models steps to 100

* Minor fixes

* Minor changes and improvements

* Changed default pricing model for IV

* Minor performance improvements

* Minor performance improvements and fixes

* Minor change

* Minor regression algorithm fix

* Update greek indicators internal IV indicator only when not user provided

* Revert unnecessary changes

* Minor changes

* Cleanup
2024-07-30 10:15:21 -04:00
Ricardo Andrés Marino Rojas 97959d560a Add liquidate method overloads (#8210)
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
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* First draft of the solution

* First draft of the tests

* Nit changes

* Nit change

* Add improvements

* Improve unit tests

* Regression algos

* Nit change

* Nit changes

* Improve unit tests

* Improve unit test

* Nit change

* Address reviews
2024-07-22 12:48:53 -03:00
Martin-Molinero 53c2a214a1 Improve indicator warmup (#8192)
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
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* Improve indicator warmup

- Allow indicator warmup to handle multiple symbols, used for option
  greeks. Adding regression test
- Improve indicator history to handle specific T types. Adding unit test
- Remove period, and historical underlying volatility, from IV so
  simplify warmup behavior

* Address review, fix minor issues
2024-07-11 16:16:49 -03:00
Ricardo Andrés Marino Rojas 554a82527f Fix minor warnings (#8190)
* Fix CA1847 warnings and some CA1307 warnings

* Fix CA1823 and CS0169

* Fix CA1820 warnings

* Address requested changes
2024-07-10 14:17:27 -03:00
Ricardo Andrés Marino Rojas 8b312efd0c Fix CA1829 warning (#8188)
* Fix CA1829 warning

* Fix failing test
2024-07-10 14:08:28 -03:00
Jhonathan Abreu e0c90e8c04 Minor changes in option chain fetching algorithms (#8175) 2024-07-09 10:55:45 -03:00
Martin-Molinero 12644f8b2a Minor fixes for IndicatorHistory and IV (#8174)
* Minor fixes for IndicatorHistory and IV

- Minor fix for IndicatorHistory, use ScaledRaw data normalization mode
  for option indicators. Adding unit test
- Expand the IV expected upper range to 400%, given values can be higher
  than previous value of 200%
- Adjust IV to use smoothing function only when both option calculations
  succeed

* Updating regression algorithm expected greeks, minor change
2024-07-09 10:54:55 -03:00
Martin-Molinero 6c30157fab Remove universe selection on extended market dates (#8160)
- Remove universe selection on dates with extended market hours only
- Updating regression algorithms
- Expand date & time rules API to support specifying whether extended
  market hours only dates are desired or not
2024-07-08 11:58:50 -03:00