11293 Commits

Author SHA1 Message Date
C-SELLERS c75b4a98b4 Update Research Images with Newer Jupyter
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
13628 13643 13677 13679 13680 13681 13642 13678
2022-02-11 15:45:51 -08:00
C-SELLERS 288501bd3b Install NetCoreDbg 2022-02-11 15:45:51 -08:00
C-SELLERS 9e7ead1a19 Deprecate breakpoints
Drop Watchlist

Remove breakpoints from lean

Prep install of NetCoreDbg

Cleanup
2022-02-11 15:45:51 -08:00
Colton Sellers b80e274d4f Rename OptionsPositions.None -> Empty (#6204)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
13617
2022-02-11 19:11:30 -03:00
Martin-Molinero 9a355c9be5 Adjust INR/USD micro future scale to usd dollars (#6203)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
13616
2022-02-11 17:01:01 -03:00
Kieran Anderson 303b95ab50 Fix typo (#6201)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
"buisness" --> "business"
13614
2022-02-10 21:16:18 -03:00
Colton Sellers d826d267f4 Update CI script with fixes for using env var (#6200)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
13613
2022-02-10 20:13:39 -03:00
Ricardo Andrés Marino Rojas eb55311052 Feature 5157 micro futures update (#6190)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* Update MHDB and SPDB

Update MHDB and SPDB with micro futures

* Fix bugs

* Add more FutureExpiryFunctions

* Requested changes

* Nit changes

* Nit changes

- Fix some future values in SPDB
- Test LastFriday() method
- Apparently Micro CHF/USD Futures(MSF) refers to the micro of Swiss Franc Futures (6S). The same happens with Micro JPY/USD (MJY) Futures and Japanese Yen Futures (6J)

* Fix bugs

* Micro futures MultipleFactor

* Fix some futures MultipleFactor
13612
2022-02-10 17:45:07 -03:00
Colton Sellers 27d18fa2e8 Include DataSource repos in stub generation (#6195)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* Include DataSource repos in stub generation

* Remove C# import from AlgorithmImports

* Directly import the Algorithm.CSharp namespace

* Update ci_build_stubs.sh

Case-sensitive typo

Co-authored-by: Jasper van Merle <jaspervmerle@gmail.com>

Co-authored-by: Jasper van Merle <jaspervmerle@gmail.com>
13609 13610
2022-02-10 15:09:08 -03:00
Adalyat Nazirov bb0c671e7c Accept OrderSubmissionData in constructor (#6194)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* modify OrderTestParameters constructor

* add other types
13600 13601 13606
2022-02-08 19:27:22 -03:00
Martin-Molinero c8dc343c13 GetLastKnownPrices python data (#6191)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Adding unit tests reproducing issue.

* Fix a couple of minor bugs

- IsMarketOpen will work correctly when used with daily and hourly
  resolution.
- slice.Get will work correctly with python custom data
- ExtendedDictionary will be able to dinamically access methods,
  required for python and private C# data types

* Refactor solution. Add more tests

* Remove unrequired import statement
13599
2022-02-08 15:37:05 -03:00
Alexander Myltsev b6815d22de Exante Brokerage initial setup (#6018)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* Exante Brokerage initial setup

* Minor exante adjustment. Address review

* Add comments to Exante config section

* Exante `GetLeverage`: handle `SecurityType.Forex`

* Exante `GetLeverage`: return 1.0 for the default case

* Cover Exante `BrokerageModel` and `FeeModel` with tests

* Add missing configurations at config.json

Fixes https://github.com/QuantConnect/Lean/pull/6018#discussion_r799527521

* Fix spaces typos

https://github.com/QuantConnect/Lean/pull/6018#discussion_r799528112

Co-authored-by: Martin-Molinero <martin@quantconnect.com>
13595 13597 13598
2022-02-07 19:53:22 -03:00
Martin-Molinero 459f60603b Fees is base currency subtracted from quote currency (#6188)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* WIP

* Fix fees in base currency not being subtracted

- Fix fees in base currency not being subtracted from the quote currency
  for crypto cash accounts. Updating regression tests to assert
  portfolio, cashbook state and holdings state.

* Fix unit test race condition
13591
2022-02-07 14:57:40 -03:00
Martin-Molinero 1aaaa20c61 Fix daily auxiliary data points emission time (#6186)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Use GC server mode for tests

* Fix daily auxiliary data points emission time

- Due to fillforwarding, in some cases with daily resolution symbol
  change events (generically any auxiliary data) would arrive late.
  Updating regression test to reproduce the issue. Adding unit test
- Some refactoring and logging improvements

* Address reviews

* Remove old xml docs param
13589
2022-02-04 21:06:45 -03:00
Adalyat Nazirov 07b6572bf9 Support Binance Margin trading (#6173)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* change BinanceBrokerageModel

* supply spot vs margin endpoint as parameter

* wip

* send margin order for margin account

* "NEW" means that the order has been accepted by the Binance engine.

* fix cash balance

* use JsonConverters for account parsing

* unit tests

* fixup

* lazy connect

* fix connection

* allow api client to be null if DQH only

* make method private

* more unit tests

* fix Dispose

* fix tests

* fix IsConnected condition

* run test as additional

* add some comments

* improve unit tests

* improve null checks

* tidy up the code
13585
2022-02-04 17:30:39 -03:00
Ricardo Andrés Marino Rojas a675aca7e5 Refactor GetFilePath() (#6164)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Refactor `GetFilePath()`
Add also useful methods to use with this one

* Nit changes

* Requested changes

* Requested changes

* Restore SaveString()

* Nit changes

* Address self review

* Test improvements

* Adjust example KerasNeuralNetworkAlgorithm

* Minor tweak for KerasNeuralNetworkAlgorithm.py

Co-authored-by: Martin-Molinero <martin@quantconnect.com>
13582 13583
2022-02-04 16:58:25 -03:00
Martin-Molinero 87db3fe379 Performance improvements (#6182)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
- User server mode for GC
- Remove SecurityType cache type check
13576
2022-02-02 19:52:45 -03:00
Ricardo Andrés Marino Rojas 74321d1727 Update CME future holidays and early closes in MHDB (#6181)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* CME Futures update in MHDB

* Fix indent spaces nit errors

* Revert "Fix indent spaces nit errors"

This reverts commit 6ebb8614c0c050258253bd5dbd5c34eaaa30b30b.

* Fix tabs errors

* Update MHDB with 2022 holidays

* Fix bugs

* Remove earlyOpens
13575
2022-02-02 19:28:21 -03:00
Martin-Molinero 9fd50a302e Update or remove SharpZipLib dependency (#6180)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
13573
2022-02-02 13:28:24 -03:00
Martin-Molinero fc0b2f3fa4 Fix for Add & Remove option contract case (#6172)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
13553 13554 13555 13556 13557 13558 13559 13560 13562 13563 13569 13570 13561
2022-01-28 14:13:21 -03:00
Martin-Molinero c4a2d6eef4 Crypto base currency fees handled correctly (#6166)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* Binance fees deducted from fill quantity accordengly

- For Binance cash accounts while buying, if fees are from the base
  currency of leans virtual position, we need to deduct the fee from the
  fill quantity, else we can end with a position bigger that it actually
  is and not be able to liquidate

* Refactor solution

- Refactor solution into a more generic approach solving fees in base
  currency at the BrokerageTransactionHandler level, covering all
  brokerages that require it. Adding regression algorithm reproducing
  issue.
- Update Bitfinex and Binance fee models to correctly reflact reality

* Log fill quantity adjusment once
13549 13550
2022-01-28 13:02:58 -03:00
Martin-Molinero c2b60e4e48 Fix empty parameter set deserialization (#6171)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
- Fix empty ParameterSet deserialization. Adding unit test
13547 13548
2022-01-27 20:18:47 -03:00
Martin-Molinero ca9e55fda6 Add null check for Tradier GetQuotes (#6170)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
- Fixing bug where tradier GetQuotes could return null in cases where
  the provided symbol would not match any. Adding unit test.
13541 13542 13543 13545 13544
2022-01-26 19:55:27 -03:00
Martin-Molinero b698641c90 Minor tweak for ApiDataProvider to support India (#6169)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
- Minor tweaks for the ApiDataProvider to better support India market
13530 13533 13534 13536 13537 13538 13539 13532
2022-01-24 21:27:22 -03:00
Ronit Jain e5c709ee29 Extract zerodha brokerage out of LEAN (#6163)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* Remove zerodha brokerage

* use different brokerage for tests

* remove zerodha files with conflict

* remove redundant dependecies
13528
2022-01-24 18:43:12 -03:00
Martin-Molinero ca787d0a25 Add support for live price scaling (#6104)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Add support for live price scaling

- Add support for live trading price scaling for continuous futures.
  Adding unit tests

* Move live price scale application. Updating unit tests

- Live trading application of price scaling will happen before fill
  forwarding and updating securities real time price. Updating unit
  tests to reproduce issue
13525
2022-01-24 18:02:24 -03:00
Martin-Molinero b1a1277eca Fix GetLastKnownPrices resolution usage (#6165)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
- GetLastKnownPrices will no longer guess which resolution to use but
  rely on other methods implementation/
- Updating basic template future algorithms to warmup contracts and
  assert it
- Minor improvements for FunSecurityInitializer and FuncSecuritySeeder
13520
2022-01-21 18:00:53 -03:00
Martin-Molinero 30d7fb042b Always reuse aggregator instance if any (#6161)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* Always reuse aggregator instance if any

- When fetching a IDataAggregator instance from the composer, do not
  enfore type name on existing instances

* Fix unit tests
13513 13514 13515 13516
2022-01-20 18:52:22 -03:00
Ronit Jain d1bb70fbb7 Add account currency and IRegressionAlgorithmDefinition (#6159)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* Add account currency

* update stats

* use market order, same as c#
13507 13508 13509 13510
2022-01-19 18:25:57 -03:00
Ricardo Andrés Marino Rojas 0946bfc2fb Enable users to use symbol tickers when using Toolkit (#6158)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* If the market ticker has a ":" the user can use the symbol ticker

* Nit change
13506
2022-01-19 15:42:21 -03:00
Ronit Jain f34be8e3ff Feature add India index algorithms and data (#6145)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* add data

(cherry picked from commit 814011d89e5316d150f88ffca5f48d8d5f0ea7d9)

* update market hours for index

(cherry picked from commit edac40732c120eb84d27de00594b59eebb4983f5)

* add index algorithms

(cherry picked from commit b22d27b4fa98172c435f7c26de4a3a297c49a6b7)

* update statistics

* add cash

* Add india market

* add leverage for index

* can subscribe to index

* update format

* fix wrong cash

* fix ticker names

* update data

* update ticker and stats

* update docs
13505
2022-01-19 12:14:48 -03:00
Martin-Molinero e1d1e28bb8 Fix for Tick subscription history requests (#6156)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
- Fix for history requests != Tick for existing subscriptions with Tick
  resolution. Adding unit test reproducing issue
13502 13503 13504
2022-01-18 17:36:27 -03:00
Colton Sellers 5ea9f04b10 Deprecate PTVSD for DebugPy (#6153)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Deprecate PTVSD for DebugPy

* Replace all references to PTVSD with debugpy

* Address review
13480 13481 13482 13485 13486 13487 13488 13489 13490 13494 13499 13500 13501
2022-01-13 09:45:12 -03:00
Adalyat Nazirov 2529ba124d FTX API endpoint is cinfigurable (#6026)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* specify enpoint url of ftx api (can be FTX pr FTX.US)

* more metadata for ftxus

* tidy up code

* tests

* more tests

* fix tests

* fix us fee rates

* add account tier

* update symbol props

* typo

* typo-2

* update symbol properties

* use FTXUS fee model

* minor tweaks
13477
2022-01-12 13:51:18 -03:00
Ricardo Andrés Marino Rojas 472f78cc53 Remove Quandl from LEAN (#6110)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Remove Quandl from LEAN

* Nit changes and CustomLiveDataFeedTests.cs

* Resolve conflicts

* Remove files related with Quandl

* Fix bug

* Fix QuantBookHistoryTests.cs

* Fix bug

* Fix bug

* Fix unit tests

* Try fix regression tests

* Nit changes

* Fix bug

* Some of the requested changes

* The missing changes

* Requested changes

* Nit changes

* Revert "Nit changes"

This reverts commit 9800bc5c34f3ac20e30bea7a92dd4a9867213bb5.

* Nit changes

* Fix bug

* Requested changes

* Missing file using Quandl to be removed

* Nit changes

* Not applied nit change

* Nit change

* Nit change

* Add nasdaq-auth-code parameter in config.json

* Remove 'quandl-auth-token' from config.json

Co-authored-by: Martin-Molinero <martin@quantconnect.com>
13476
2022-01-12 12:10:20 -03:00
Adalyat Nazirov 0c26d42561 Feature 2839 black scholes data generator (#6135)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* replace to local functions as they are more performant

* fix random generator upper bound

Next() includes minValue, but not maxValue, so we increment it +1

* introduce abstract layers

* refactoring

* fix tets

* adapt tests

* fixup

* implement blackschole price model for options

* use risk free rate

* use ql price model

* wip

* change interface

* fix

* tidy up the code

* wip

* iterate groupped symbols

* wip

* wip

* fix

* allow symbol of different types

* improve settings

* wip

* iterate full range

* fix issue with negative option

* fix

* fixup

* use StandardDeviationOfReturnsVolatilityModel

* re-use existing tick types per security type

* parametrize underlying security type

* use default option style

* dynamic option price model

* fix enumeration

* test

* fix unit tests

* refactor code

* remove unused file

* minor tweaks and refactoring

* rename symbol generator class

* fix interface

* add comments

* more comments and unit tests

* more tests

* add disclaimer

* more tests

* more comments and tests

* split tests into different files

* tidy up the code

* tidy up the code; more tests

* refactor TickGenerator => use security price directly on each iteration

* remove dupe; reuse main constructor

* use SecurityManager, refactor code

* bugfix: save ticks in history array

* check volatility warm up & tests

* more unit tests

* describe volatility period span in settings

* rename command line option

* Minor adjusments. Address review

- Use Lean log handler instead of writting directly to console
- Rename BlackShcolesPriceGenerator to generically OptionPriceModelPriceGenerator
- Minor format clean up & standarization
- Add support for specifying the option chain size

* Rename TickGenerator private fields

* Fix unit tests

* fix tests class name

* Support tickers being specified

Co-authored-by: Martin-Molinero <martin@quantconnect.com>
13465
2022-01-10 17:21:03 -03:00
Martin-Molinero 4b94f50754 Option selection improvements (#6144)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
- Zip entries will be sourced from cache provider
- Option underlying will use SubscriptionDataSource to fetch it's data.
  Fixing bug where it would let through an old data point, or miss
  sending data through.
13464 13462
2022-01-10 11:18:28 -03:00
Martin-Molinero 5bdc60b137 Fix for warmup history requests when internal subscriptions present (#6146)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
13461
2022-01-10 11:10:44 -03:00
Ronit Jain 3837c32b36 Add India market local data and regression algorithm (#6088)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Add india market data

* use local data for algo

* Add India market regression algo

* update india market data

* Update readme

* add python algo for BasicTemplateIndiaAlgorithm

* Add India data regression python algo

* data india data files

* update tickers

* Fix algo template

* remove data

* fix stats

* update stats

* remove unused data
13454 13456 13457 13459 13445
2022-01-06 18:24:32 -03:00
Ronit Jain 0e298edcb2 use compression library (#6142)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
13440 13441
2022-01-05 15:19:41 -03:00
Martin-Molinero 7a753bfa3f Live mapped subscription will clone the underlying (#6141)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
- Live subscription enumerator will clone the underlying data set when
  live mapping is being done. To avoid issues where IDQH implementations
  could reuse a data point with same configurations. Adjusting unit test
  to reproduce issue
13439
2022-01-05 13:45:52 -03:00
Martin-Molinero 8e2554b110 Add continuous futures MHDB always. Adding unit tests (#6139)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
13436
2022-01-04 20:31:31 -03:00
Martin-Molinero bfa58b4692 Fix IB Hong Kong Future Exchanges fees (#6133)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
* Fix IB HongKongFutureExchanges fees. Adding test

* Minor self review tweak
13422 13425 13426 13428 13429 13430 13431 13432 13433 13434
2021-12-28 20:12:59 -03:00
Martin-Molinero e3375bc45e Pin conda and pip foundation versions (#6134)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
13421
2021-12-28 18:14:17 -03:00
Martin-Molinero ac8b500ba2 Foundation update: Ray, H2o & IB (#6126)
* Foundation remove Ray update H2o

* Update IB version to 10.12.2d
2021-12-28 16:17:52 -03:00
Omid K. Rad 2557a36feb Bug: Config.TryGetValue returns true if key is not found (#6128)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
* Fix typo

* Fix TryGetValue to return false if key is not found

* Revert "Fix TryGetValue to return false if key is not found"

This reverts commit b85b7b579aa722e1fec2599afbeee61163334184.

* Update documentation for TryGetValue
13416
2021-12-28 12:19:46 -03:00
Martin-Molinero 55cb3bdaff ApiDataProvider Support Future map & factor files (#6132)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
- Add support for the ApiDataProvider to handle future map and factor
  files downloads. Adding unit test
13413
2021-12-27 21:52:51 -03:00
Martin-Molinero 10bb627fc2 Update to pythonNet 2.0.11 (#6131)
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
13412
2021-12-27 15:49:24 -03:00
Alexandre Catarino 3d3733c0fb Adds Market.HKFE to InteractiveBrokersFeeModel (#6127)
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Adds `Market.HKFE` to `InteractiveBrokersFeeModel` in the Futures Options case.
13397 13398 13399 13400 13401 13403 13404 13409 13410 13411 13402
2021-12-22 19:32:07 -03:00
Martin-Molinero 1303ccf843 Update readme.md
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
13395 13396
2021-12-22 17:16:41 -03:00