cdeb2e1fcbeeccc847c165aefdce9efef79dec6a
3 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
58793acae8 |
Removes Assets that Are Not Invested and Not Tradable From Capacity Calculations (#5515)
Build & Test Lean / build (push) Has been cancelled
* Add property for capacity. Remove unused variable * Move SymbolCapacity and CapacityEstimate to common, passed through Symbol to runtime statistics * Add null checks * Remove uninvested and untradable assets from capacty calculations * Add SymbolCapacity influential period * Updates Regression Tests - DelistingEventsAlgorithm - Allows additional contributions from delisted AAA.1 - DelistingFutureOptionRegressionAlgorithm - Removes DC01H12 contributions one month later - FutureOptionBuySellCallIntradayRegressionAlgorithm - Allows additional contributions from future after expiry replacing the contribution of the next contract option - DelistedFutureLiquidateRegressionAlgorithm - FutureOptionCallITMExpiryRegressionAlgorithm - FutureOptionCallITMGreeksExpiryRegressionAlgorithm - FutureOptionPutITMExpiryRegressionAlgorithm - FutureOptionShortCallITMExpiryRegressionAlgorithm - FutureOptionShortPutITMExpiryRegressionAlgorithm - FuturesAndFuturesOptionsExpiryTimeAndLiquidationRegressionAlgorithm - Allows additional contributions from future after expiry - FutureOptionCallOTMExpiryRegressionAlgorithm - FutureOptionPutOTMExpiryRegressionAlgorithm - FutureOptionShortPutOTMExpiryRegressionAlgorithm - IndexOptionCallITMGreeksExpiryRegressionAlgorithm - IndexOptionCallOTMExpiryRegressionAlgorithm - IndexOptionShortCallOTMExpiryRegressionAlgorithm - Allows additional contributions from option after expiry - MACDTrendAlgorithm - Removes contribution when SPY is not invested for over one month - UniverseSelectionRegressionAlgorithm - Allows additional contributions from delisted GOOAV replacing GOOG (new symbols) * Adds Lowest Capacity Asset to Regression Tests * Normalize expected value -0, because -0 is also written to file if updated * Write Symbol.Value for lowestCapacitySymbol or empty string for empty Symbol * Update Regressions * Update 'Lowest Capacity Asset' to Symbol.ID Co-authored-by: Jared Broad <jaredbroad@gmail.com> Co-authored-by: Martin-Molinero <martin@quantconnect.com> Co-authored-by: Colton Sellers <Colton.R.Sellers@gmail.com> |
||
|
|
2b0fd2e607 |
Updates SPY Market Data (#5493)
* Fixes Double to Decimal Cast in GetAnnualPerformance `GetAnnualPerformance` raises an exception if the `AnnualPerformance` calculation returns a double that cannot be cast to decimal (smaller than `decimal.MinValue` or bigger than `decimal.MaxValue`). See `ProbabilisticSharpeRatio` where the same solution was applied. * Updates SPY Market Data SPY is a key asset since it is the default benchmark, and any change can lead to different `Alpha` and `Beta` * Updates Unit Tests to Reflect Data Update * Updates Regression Tests to Reflect Data Update I Most of the regression tests change because of updated data (market and factors) of SPY (default benchmark) while the total trade remain the same. * Updates Regression Tests to Reflect Data Update II The following regression tests were changed to adapt to adjusted prices and keep the total trades: - `BacktestingBrokerageRegressionAlgorithm` - `LimitIfTouchedRegressionAlgorithm` - `PortfolioRebalanceOnCustomFuncRegressionAlgorithm` - `SetAccountCurrencySecurityMarginModelRegressionAlgorithm` - `StopLossOnOrderEventRegressionAlgorithm` - `TimeInForceAlgorithm` The following regression tests have more trades since adjusted prices allowed more 1-2 shares trades that were rounded down to zero before: - `FreePortfolioValueRegressionAlgorithm` 2 -> 3 - `PortfolioRebalanceOnDateRulesRegressionAlgorithm` 291 -> 298 - `TrailingStopRiskFrameworkAlgorithm` 5 -> 7 Especial cases: - `AutoRegressiveIntegratedMovingAverageRegressionAlgorithm` 65 -> 52 - ARIMA model sensibility - `BlackLittermanPortfolioOptimizationFrameworkAlgorithm` 18 -> 19 - BLM model sensibility - `ExtendedMarketHoursHistoryRegressionAlgorithm` 20 -> 18 - Less minute bars before market opens * Addresses Peer-Review Fix `BacktestingBrokerageRegressionAlgorithm` to use `CalculateOrderQuantity` and round down `quantity` to an even number to pass a value assertion and update the expected value from 50 to 52. The quantity calculated by `CalculateOrderQuantity` has changed from 50 to 53 because of factor file update. |
||
|
|
4c085ff853 |
Adds Indexes and Index Options asset types (Backtesting/Live, IB only) (#5379)
* Add support for Index SecurityType 🚀 (#5364) * Add Index SecurityType 🚀 * Extend SecurityIdentifier & Lean Data classes with Index support * Add Index SecurityType 🚀 * Extend SecurityIdentifier & Lean Data classes with Index support * Fixes * Added index cross basic template demonstration * WIP: Prototype index security type for LEAN as non tradable asset * Re-adds Index entries to MHDB after rebase * First steps to getting Index Options running * Looks at any instance where we pattern match for an option type and replaces it with a generic call to `.IsOption()` for easier extensibility in the future for additional option security types * Adds IndexOption security and misc. classes * Misc. changes, mainly related to any sort of special casing of equity options and made index options take the same path * Enables index options data for backtesting * Adds new index options market hours to MHDB * Misc. bug fixes for index options * WIP: add live support for index options and indexes * Use OptionMarginModel for Index Options because they both use the same calculation for margin requirements * Fixes contract not found errors on SPX index options and SPX index in IB * Turns out index options' last trading day is the day before expiry, which IB was expecting the last trading day. * Add index option test cases (temp) * LiveOptionChainProvider fix, use Symbol vs. ticker * Description updates to regression algorithms * Fixes bug in live trading for indexes and index options * Adds overridable minimum price variation symbol property * Adds variable sized minimum price variation for index options * Adjusts symbol properties for index options * Misc. bug fixes * Fixes option assignment simulation for European options * Updates index options regression algorithms (WIP) * Fixes bug where index option exercise would trade index underlying * Fixes bugs where SecurityType.Index was getting flagged as tradable * Regression algorithms updates and addresses review * Misc. style fixes and refactoring + a few bug fixes * Updates regression algorithms to run without runtime errors * Adds data for regression algos * Sets DefaultOptionStyle on Canonical and support index options * Update regression algos statistics * Removes bad line in regression algorithm causing build to fail * Minor tweaks * Address review add comment about quoteBar parse scale Co-authored-by: Balamurali Pandranki <balamurali@live.com> Co-authored-by: Jared Broad <jaredbroad@gmail.com> Co-authored-by: Martin-Molinero <martin@quantconnect.com> |