Commit Graph

686 Commits

Author SHA1 Message Date
Art Wild d5996fb7c8 MV & BL portfolio optimization implementation
Closes #1998. Closes #2219.
2018-07-24 16:53:11 +01:00
Stefano Raggi 3d48efcbea Add Tiingo Daily Prices example algorithm 2018-07-24 13:24:52 +02:00
Michael 21a227eaae Merge pull request #2295 from AlexCatarino/bug-2293-python-custom-data-type
Fixes custom data type mismatch in python algorithms
2018-07-23 15:37:22 -04:00
AlexCatarino d75794ede2 Adds indicator with custom data in BasicTemplateIntrinioEconomicData.
This addition aims to show that the fix of the preivious commit solves the bug.
2018-07-23 17:26:43 +01:00
Stefano Raggi fde0239930 Fix failing internal feed regression algorithms 2018-07-23 14:25:28 +02:00
Stefano Raggi 1138b0c1e2 Fix TimeInForceAlgorithm regression tests 2018-07-19 11:52:40 +02:00
Michael df88433428 Merge pull request #2276 from QuantConnect/bug-2273-internal-feeds-end-time
Fix internal feed subscription end time in AlgorithmManager
2018-07-19 00:11:58 -04:00
Stefano Raggi bd3c48e05e Fix internal feed subscription end time in AlgorithmManager 2018-07-19 00:32:20 +02:00
Michael Handschuh 380caa5203 Add IRegressionAlgorithmDefinition.CanRunLocally
This flag indicates whether or not the local regression test system,
via RegressionTests.AlgorithmStatisticsRegression should run a given
IRegressionAlgorithmDefinition
2018-07-18 15:57:11 -04:00
Michael 975c2845c3 Merge pull request #2246 from QuantConnect/feature-2245-updates-pythonnet
Update pythonnet version to v1.0.5.8
* Includes fix for date time UTC bug
2018-07-18 11:26:19 -04:00
Michael 8f6d3116e6 Merge pull request #2264 from QuantConnect/bug-2263-intrinio-missing-factor-files
Add missing map/factor files for BasicTemplateIntrinioEconomicData regression
2018-07-18 11:25:26 -04:00
Michael a39490edd0 Merge pull request #2250 from Martin-Molinero/bug-2197-delisted-symbol-data-being-sent
Fix for delisted subscription data being sent
2018-07-18 11:05:14 -04:00
Michael 3bf8cd228b Merge pull request #2259 from AlexCatarino/master
Fixes typo in PearsonCorrelationPairsTradingAlphaModelFrameworkAlgorithm.py
2018-07-18 10:55:17 -04:00
Michael 7d66262688 Merge pull request #2258 from QuantConnect/feature-2241-missing-regression-test-for-futures
Adds BasicTemplateFuturesAlgorithm as regression test.
2018-07-18 10:47:29 -04:00
Stefano Raggi 0cc39e53b3 Add missing map/factor files for BasicTemplateIntrinioEconomicData regression 2018-07-18 15:09:08 +02:00
Martin Molinero ff5e888313 Fix for delisted subscription data being sent 2018-07-18 09:45:13 -03:00
Stefano Raggi e3c6f9d32e Add missing data files for CancelOpenOrdersRegressionAlgorithm 2018-07-18 13:10:31 +02:00
AlexCatarino 6fcb381c46 Fixes typo in PearsonCorrelationPairsTradingAlphaModelFrameworkAlgorithm.py
The lookback period for one year should be 252, since one year has 252 trading days.
2018-07-17 22:18:17 +01:00
Juan José D'Ambrosio ae99f7b9a1 Add Python version
Add comments to `IRegressionAlgorithmDefinition` members.
2018-07-17 18:01:53 -03:00
Juan José D'Ambrosio b69d2de337 Adds BasicTemplateFuturesAlgorithm as regression test. 2018-07-17 17:25:49 -03:00
AlexCatarino 8e3b7153b2 Rebase with pythonnet/master and fix datetime UTC bug
Updates pythonnet with pythonnet/master and fix datetime issue ([65ac279](https://github.com/QuantConnect/pythonnet/commit/65ac279a03dbded39fe3e28bb79c233f0c970f6f)).
2018-07-16 11:52:54 +01:00
Michael afad0a6ab9 Merge pull request #2216 from AlexCatarino/feature-2215-refactors-pairs-trading-alpha-model
Refactors PairsTradingAlphaModel
2018-07-12 11:31:29 -04:00
AlexCatarino 0a6488ba5b Removes PairsTradingAlphaModelFrameworkAlgorithm
This algorithm uses the `BasePairsTradingAlphaModel` that should only be used as a base class, since it doesn't have a method to select the pairs.
2018-07-11 23:40:30 +01:00
AlexCatarino c59ff47ed7 Refactors PearsonCorrelationPairsTradingAlphaModelFrameworkAlgorithm
- Moves `PearsonCorrelationPairsTradingAlphaModel` class to its own file in order to make it available as a framework model.
- Follows existing pattern design that alpha models receive a lookback and a `Resolution` object.
- Algorithm implements `IRegressionAlgorithmDefinition`.
2018-07-11 23:40:30 +01:00
AlexCatarino 6121236f20 Implements PearsonCorrelationPairsTradingAlphaModelFrameworkAlgorithm
This algorithm is an example on how to extend the `BasePairsTradingAlphaModel` to select a pair to trade based on pearson correlation.
2018-07-11 23:40:29 +01:00
AlexCatarino 6dbe83d0be Renames PairsTradingAlphaModel
- Since it will be used as a base class for other pairs trading models, it was ranamed as BasePairsTradingAlphaModel

- Use a tuple of symbols are key of BasePairsTradingAlphaModel._pairs dictionary.
2018-07-11 23:40:29 +01:00
AlexCatarino e815fe8cba Refactors PairsTradingAlphaModel
Instead of using a single, pre-defined, pair set in the class constructor, the pair is defined when securities are changed, therefore depending on the universe selection model.
2018-07-11 23:40:29 +01:00
Stefano Raggi 843b703950 Update statistics for BasicTemplateOptionsFrameworkAlgorithm 2018-07-11 22:42:17 +02:00
Michael 1b7bc7a7b3 Merge pull request #2214 from QuantConnect/feature-2208-update-open-source-data-set
Update open source data set
2018-07-06 11:46:35 -04:00
Michael Handschuh b783e98d91 Dont chain algorithm indicator helper methods
Chaining these is a bad pattern and should not be used in any of our
sample code.
2018-07-06 05:28:17 -04:00
Michael Handschuh d2d4fda43c Remove crypto quote data and use trade bar consolidator 2018-07-06 03:15:56 -04:00
Michael Handschuh 2fa9b0b6f7 Make regression algorithms self-contained
Some algorithms had dependencies outside of the file that needed
to be copied into each project. The alternative here is to move
the Bitcoin and QuandlFuture type into Common\Data or similar
2018-07-06 02:05:03 -04:00
AlexCatarino 5a3a10a7b0 Adds BasicTemplateOptionsFrameworkAlgorithm to the regression tests 2018-07-05 21:02:01 +01:00
AlexCatarino 6d721c897a Implements CallsOnly and PutsOnly methods in OptionFilterUniverse
These two helper methods makes it simpler to select options with a specific right. This selection could be done with a Linq expression, but there is no equivalent for python. It is more user friendly to add those helper than adding a `PyObject` overload to `Contracts` method.

Use `PutsOnly` method in `BasicTemplateOptionsFrameworkAlgorithm`.
2018-07-05 20:59:08 +01:00
Michael Handschuh 7eb4526724 Update open source data set and regression statistics
Factor files from 2018.06.04
Data   files from 2018.07.05
2018-07-05 15:13:57 -04:00
Martin Molinero 96dc5e8673 Moving IRegressionAlgorithmDefinition to QuantConnect.Common 2018-07-03 13:34:27 -03:00
Michael 8ec32c58af Merge pull request #2176 from AlexCatarino/bug-2030-download-method-ambiguous-call
Fixes ambigous call bug for Download method
2018-07-02 11:18:10 -04:00
AlexCatarino 292951e029 Adds examples of Download method in C# and python algorithms 2018-06-28 19:01:30 +01:00
Jing Wu 15e67b4ddd Renamed IndicatorWarmupRegressionAlgorithm 2018-06-28 11:56:23 -04:00
Jing Wu 891cd5952a Renamed HistoryAndWarmupRegressionAlgorithm 2018-06-27 17:42:35 -04:00
Michael de9429320a Merge pull request #2160 from Martin-Molinero/issue-2159-fix-multiple-contract-addition-for-optionchainprovideralgorithm
New check to avoid adding the same option contract multiple times
2018-06-25 17:05:04 -04:00
Martin Molinero 1605870c2b New a check to avoid adding the same option contract multiple times 2018-06-25 14:02:14 -03:00
Stefano Raggi 7bc991a621 Update execution models to execute trades ordered by margin impact 2018-06-22 18:07:13 +02:00
Stefano Raggi ddef036745 Fix InvalidOperationException in AddRemoveOptionUniverseRegressionAlgorithm 2018-06-18 10:14:35 +02:00
Stefano Raggi 73fb791786 Update regression statistics for ParameterizedAlgorithm and RegressionAlgorithm 2018-06-15 14:25:03 +02:00
Michael 499c0c5876 Merge pull request #2115 from StefanoRaggi/bug-2114-update-regression-stats
Update expected stats for a few framework regression tests
2018-06-14 11:15:39 -04:00
Stefano Raggi be47d60fa7 Fix CustomDataRegressionAlgorithm failing test 2018-06-14 11:44:28 +02:00
Stefano Raggi 80fb0ee63c Update expected stats for a few framework regression tests 2018-06-13 23:51:02 +02:00
Michael Handschuh bb21171943 Implements python Consolidate API
Collapse QuoteBar to TradeBar if trade bar handler specified
2018-06-12 13:17:49 -04:00
Michael Handschuh 007bcea6b8 Add Consolidate API
These new methods allow algorithms to quickly create, register, and
wire events on consolidators in a single line.
2018-06-12 12:58:28 -04:00