1541 Commits

Author SHA1 Message Date
Jhonathan Abreu ee0f6193f9 Address peer review 2024-09-04 15:45:33 -04:00
Jhonathan Abreu c9701ab6f0 Update index options regression algorithms stats 2024-09-04 15:45:32 -04:00
Jhonathan Abreu 2cbd013ff7 Minor regression tests updates after rebase 2024-09-04 15:45:31 -04:00
Jhonathan Abreu 434b80e104 Regression tests updates after rebasing from master 2024-09-04 15:45:31 -04:00
Jhonathan Abreu 51b5c5cf58 Some regression algorithms and unit tests cleanup 2024-09-04 15:45:30 -04:00
Jhonathan Abreu 72b05041da Use double in price option numerical models 2024-09-04 15:45:30 -04:00
Jhonathan Abreu 2ddd2671fd Add more assertions to new options filter api regression algorithms 2024-09-04 15:45:29 -04:00
Jhonathan Abreu 87cb2d85e1 Address peer review 2024-09-04 15:45:28 -04:00
Jhonathan Abreu 05bd18aae1 Added options greeks data and updated regression algorithms 2024-09-04 15:45:27 -04:00
Jhonathan Abreu 94be25241c Add regression algorithms for new options filter universe api methods 2024-09-04 15:45:27 -04:00
Jhonathan Abreu c482ad63aa Add OptionUniverse history regression algorithms 2024-09-04 15:45:26 -04:00
Jhonathan Abreu d3fd0fe73d Option filter universe api updates 2024-09-04 15:45:26 -04:00
Jhonathan Abreu aeabec965d Update options filter universe API to use OptionUniverse data
Add new filter methods for greeks, IV and open interest
2024-09-04 15:45:26 -04:00
Jhonathan Abreu de7967b047 Minor changes 2024-09-04 15:45:25 -04:00
Jhonathan Abreu 1118ba279c Minor changes 2024-09-04 15:45:25 -04:00
Jhonathan Abreu 2e67f3e729 Data fixes and regression algos stats update 2024-09-04 15:45:25 -04:00
Jhonathan Abreu 98762ead76 Update regression algorithms stats 2024-09-04 15:45:24 -04:00
Jhonathan Abreu 4e6b682e48 Update regression algorithms stats 2024-09-04 15:45:24 -04:00
Jhonathan Abreu 6eb4fc35d3 Added option universe csv header property 2024-09-04 15:45:24 -04:00
Jhonathan Abreu 78f01039a9 Fix option chain provider history request 2024-09-04 15:45:24 -04:00
Jhonathan Abreu 065cdedc98 Update regression algorithms stats and minor fixes 2024-09-04 15:45:23 -04:00
Jhonathan Abreu 1c43efadbc Update regression algorithm stats 2024-09-04 15:45:23 -04:00
Jhonathan Abreu 6b4811a607 Peer recommended changes and fixes 2024-09-04 15:45:23 -04:00
Jhonathan Abreu 81ef05ac22 Minor changes 2024-09-04 15:45:23 -04:00
Jhonathan Abreu 553cebaae0 Minor changes 2024-09-04 15:45:22 -04:00
Jhonathan Abreu b1c16a1f1f Fix universe selection subscriptions start time to not include extended market hours 2024-09-04 15:45:22 -04:00
Jhonathan Abreu dcac0d4272 Fix symbols parsing in OptionUniverse 2024-09-04 15:45:22 -04:00
Jhonathan Abreu 108f2cacc5 Address peer review 2024-09-04 15:45:22 -04:00
Jhonathan Abreu 2c6e8d5038 Updated options regression algorithms stats for new universe data 2024-09-04 15:45:21 -04:00
Jhonathan Abreu e68e7cdaf8 Updated options regression algorithms stats for new universe data 2024-09-04 15:45:20 -04:00
Jhonathan Abreu 3e58dd27b5 Updated options regression algorithms stats for new universe data 2024-09-04 15:45:20 -04:00
Jhonathan Abreu e3f7bf674c Updated options regression algorithms stats for new universe data 2024-09-04 15:45:20 -04:00
Jhonathan Abreu 1626b3f85a Updated options regression algorithms stats for new universe data 2024-09-04 15:45:20 -04:00
Jhonathan Abreu d7b702d58c 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-09-04 15:45:20 -04:00
Jhonathan Abreu eacc655274 Initial options universe with greeks implementation 2024-09-04 15:45:19 -04:00
Alexandre Catarino 3b588d04fb Adds Overload to AddIndexOption (#8291)
* Adds Overload to AddIndexOption

Simplify usage. We don't need to create/add the underlying explicitly, see AddIndexOption(string, Resolution, string, bool) overload.

* Addresses Peer-Review

- Default market is `null` instead of `Market.USA` allowing for `BrokerageModel` setup.
- `AddIndexOption` and `AddIndexOptionContract` methods now return `indexOption` objects.

* Fixes Logic Bug
2024-09-04 10:30:05 -03: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