Files
Alexandre Catarino 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.
2021-04-19 13:31:01 -03:00
..
2021-04-02 11:20:01 -07:00
2021-04-02 11:20:01 -07:00
2021-04-19 13:31:01 -03:00
2021-04-19 13:31:01 -03:00
2020-04-23 09:59:31 -03:00
2020-12-18 16:01:44 -08:00
2021-04-19 13:31:01 -03:00
2021-03-30 06:42:39 -07:00
2021-04-07 11:46:31 -03:00
2021-04-07 11:46:31 -03:00
2020-06-22 18:00:27 -07:00
2021-01-26 15:31:57 -03:00

QuantConnect Testing

Before starting any testing, follow the installation instructions to get LEAN running C# algorithms in your machine. For any Python related tests please ensure you have followed the setup as described here.

If the above installation, build, and initial run was succesful than we can move forward to testing.

Visual Studio:

Locating Tests

  • Open Visual Studios
  • Open Test Explorer ("Test" > "Test Explorer")
  • The list should populate itself as it reads all the tests it found during the build process. If not, press "Run All Tests" and let VS find all of the tests.
  • From here select the tests you would like to run and begin running them.

Failed Test Logs

  • On a failed test, check the test for information by clicking on the desired test and selecting "Open Additional Output"
  • This will show the stack trace and where the code failed to meet the testing requirements.

Common Problems

Having .NetFramework issues with testing?

Missing dependencies for Python Algorithm?

  • Use pip or conda to install the module.