Commit Graph

861 Commits

Author SHA1 Message Date
AlexCatarino e35ba389d9 Adds support for user-defined universe selection for python
Adds UserDefinedUniverseAlgorithm python script to show how to use user-defined universe selection for python.
2017-09-20 22:45:51 +01:00
jameschch@outlook.com 7fab872927 Integrates with crypto security 2017-09-15 13:42:51 +01:00
Jared 72b66501eb Merge pull request #1131 from QuantConnect/crypto-security
Crypto security
2017-09-14 10:48:31 -04:00
AlexCatarino d7f2411fcd Upgrades pythonnet version
In this version, we have fixed a bug that led to System.AccessViolationException when we add timezone information in the datetime.datetime object.
2017-09-12 17:33:52 +01:00
Stefano Raggi c0fa78080a Fix security type test 2017-09-11 20:48:43 +02:00
Stefano Raggi f5d4c4a318 Enable security seeding for Options and Futures 2017-09-11 20:37:07 +02:00
Jared 563d2df4b5 Merge pull request #1119 from StefanoRaggi/add-option-contract-underlying-fix
Fix missing underlying security in AddOptionContract
2017-09-06 16:41:38 -04:00
Jared 57fa355fc0 Merge pull request #1109 from Jay-Jay-D/IndicatorMassIndex
Indicator mass index
2017-09-06 16:38:38 -04:00
Stefano Raggi f94cb659cb Fix missing underlying security in AddOptionContract 2017-09-06 17:48:57 +02:00
Michael Handschuh 89c6a1a566 Remove multiple enumerations of enumerable
Depending on the IHistoryProvider implementation, this could result in
multiple history requests being sent GetLastKnownPrice function call.
2017-09-02 13:56:48 -04:00
jjd 215224de2f helper method renamed MI->MASS 2017-09-01 15:23:11 -03:00
jjd d8b2a1a63b Test passed 2017-09-01 14:40:26 -03:00
jameschch@outlook.com 0f4e166499 Changes market deriving logic and adds extra test cases 2017-09-01 12:29:25 +01:00
Jared fe6c9fa584 Merge pull request #1102 from AlexCatarino/python-adddata-fix
Fixes hard-coded resolution in AddData for Python algorithms
2017-08-30 13:20:42 -04:00
AlexCatarino d2c144ff1e Fixes hard-coded resolution in AddData for Python algorithms 2017-08-30 17:59:55 +01:00
jameschch@outlook.com 6c06413fe4 Moves existing bitfinex to crypto and updates crypto tests 2017-08-30 13:46:30 +01:00
jjd 21a7685e64 helper method added. 2017-08-29 15:48:08 -03:00
jameschch@outlook.com 578efe843f Further changes for crypto type 2017-08-29 12:19:15 +01:00
jameschch@outlook.com ca4cd13476 Merge branch 'master' of https://github.com/QuantConnect/Lean 2017-08-29 11:11:04 +01:00
Jared 71a6e293bd Merge pull request #1082 from StefanoRaggi/options-futures-tick-fix
Fix Options and Futures subscriptions at Tick resolution
2017-08-28 10:49:34 -04:00
Jared Broad 8281911bd0 Revert "Upgrades pythonnet version"
This reverts commit 310e5c4211.
2017-08-22 16:11:54 -04:00
12112 4be1b7b413 Merge branch 'master' of https://github.com/QuantConnect/Lean 2017-08-22 16:56:52 +01:00
Jared 0b15bd6979 Merge pull request #1081 from andrewhart098/history-request-timezone
Require specification of DataTimeZone on history requests
2017-08-22 11:56:42 -04:00
12112 921ec8f983 merge from upstream 2017-08-22 16:56:35 +01:00
Andrew c82f31aa6a Use GetCommonTickTypeForCommonDataTypes to get default tick types for history requests 2017-08-22 11:17:07 -04:00
Jared 4d9d60dfff Merge pull request #1083 from AlexCatarino/pythonnet-datetime-fix
Upgrades pythonnet version
2017-08-22 10:54:27 -04:00
Andrew 08bb34a1eb Add TickType field to the HistoryRequest class 2017-08-22 09:42:42 -04:00
Stefano Raggi 492bc70229 Fix Options and Futures subscriptions at Tick resolution
Previously Tick resolution subscriptions only received ticks with TickType.Trade, now TickType.Quote and TickType.OpenInterest are received as well.

This PR replaces PR #1065
2017-08-22 02:20:36 +02:00
AlexCatarino 310e5c4211 Upgrades pythonnet version
In this version, we have fixed a bug that led to System.AccessViolationException when we add timezone information in the datetime.datetime object.
2017-08-21 21:59:59 +01:00
Andrew 6aa87b458c Added Security.IsCustomData method
This method is a convient way to check if the security has a subscription that represents custom data. It returns true if the security contains at least one subscription that represents custom data
2017-08-21 16:27:51 -04:00
Andrew 40aa9dad65 Seperate time zones for the exchange and the data can be specified in AddData 2017-08-21 14:59:31 -04:00
Andrew 8a5af16051 Remove parameterless HistoryRequest constructor
This contractor was removed so that history requests do not assume any defaults - especially with exchange time zones and data time zones
2017-08-21 14:55:49 -04:00
Jared 746a7e1bbc Merge pull request #1080 from StefanoRaggi/options-futures-warmup-fix
Fix Warmup for Options and Futures
2017-08-21 11:07:00 -04:00
Stefano Raggi 001183a917 Fix Warmup for Options and Futures
Warmup history requests for options and futures were only creating a single subscription for open interest (no trades or quotes).

Also some History overloads had the same issue.
2017-08-21 15:58:23 +02:00
AlexCatarino bcd25b56b4 Refactors PyObject to List of Symbol parsing 2017-08-21 13:52:48 +01:00
AlexCatarino b322dec666 Modifies the pandas dataframe created from a history request
History requests should not return a dictionary with a dataframe, but a multi-index dataframe.
It is more common to work with multi-index dataframes rather than multi-column.
2017-08-18 18:23:11 +01:00
Andrew cd94d4f507 Clear cache when security is removed 2017-08-15 18:03:05 -04:00
Stefano Raggi 49b2240a73 Fix bug in security seeding when using Tick resolution
With securities added at Tick resolution the wrong data type was used for the seeding history request.
2017-08-09 17:58:38 +02:00
andrewhart098 ba565e2b11 Merge pull request #1047 from QuantConnect/option-chain-provider
Option Chain Providers
2017-08-08 11:15:53 -04:00
Andrew e116709b24 Specify <LangVersion> of 6 in all csproj files 2017-08-07 15:27:26 -04:00
Stefano Raggi e379457757 Refactor option chain providers
- Moved provider implementations out of brokerages into their own classes
- Removed DefaultOptionChainProvider
- Added BacktestingOptionChainProvider and LiveOptionChainProvider
- Moved SetOptionChainProvider call from Engine to setup handlers
2017-08-02 22:43:15 +02:00
Stefano Raggi 8fdb79e578 Add OptionChainProvider to IAlgorithm/QCAlgorithm
- SetOptionChainProvider method
- OptionChainProvider property
2017-08-02 22:43:12 +02:00
AlexCatarino 46ead54f79 Implements Quandl support for Python
Implements Quandl support for Python.
It was not possible to derive from Quandl in order to select the column. If the data did not have "close", it would thrown an exception since it would look for this work in a dictionary.
It is now possible to select the column.
See example QuandFuturesDataAlgorithm.py
2017-07-27 00:18:08 +01:00
Stefano Raggi 9b3909b6e8 Fix a couple of bugs in BasicTemplateOptionsAlgorithm
The algorithm had two issues:
1. the LINQ query for contract selection was not including the option right (Put or Call)
2. the algorithm was submitting two extra orders at the end of the day (when market closed)

A helper method was also added in QCAlgorithm to determine if the market is open for a given symbol at the current time.
2017-07-22 21:26:03 +02:00
Stefano Raggi e7172a6841 Update QCAlgorithm.RuntimeStatistics to be a ConcurrentDictionary
This change enables SetRuntimeStatistics to be called from event handlers fired by other threads (for example in the OnOrderEvent with IB)
2017-07-20 20:39:51 +02:00
12112 83fdf9c386 crypto wip 2017-07-14 16:53:42 +01:00
Stefano Raggi f704747696 Downgrade NodaTime to version 1.3.4 due to breaking changes in 2.x 2017-07-08 03:09:35 +02:00
Stefano Raggi e4005fa78c Upgrade NodaTime to version 2.0.3 2017-07-08 01:12:43 +02:00
Stefano Raggi 4f483abcd9 Upgrade libraries Accord.NET, CloneExtensions, MathNet, QLNet 2017-07-08 00:31:40 +02:00
Stefano Raggi 6d160533c3 Upgrade DotNetZip to version 1.10.1 2017-07-07 23:37:09 +02:00