Commit Graph
2930 Commits
Author SHA1 Message Date
Richard Frank 3bdba2ec50 BUG: run_algorithm with no data source should default
to 'quantopian-quandl' bundle
2016-09-12 12:17:17 -04:00
Richard Frank df07f67614 Merge pull request #1467 from quantopian/check_param-string_types
Check param string types
2016-09-08 14:59:38 -04:00
Kathryn Glowinski 4a00e69212 More Fuzzy Symbol Fixes (#1475)
* REF: More options before raise MultiFound.

* TST: Checks corner case for fuzzy matching.
2016-09-08 14:52:57 -04:00
Scott Sanderson 1ccc9e4b64 Merge pull request #1471 from quantopian/fix-slow-startup
PERF: Remove import-time calendar creations.
2016-09-08 10:21:00 -04:00
Scott Sanderson 40fa6aeea4 STY: Fix flake8. 2016-09-07 21:58:15 -04:00
Scott Sanderson d6ad73e064 MAINT: Updates from Joe's PR feedback. 2016-09-07 20:42:19 -04:00
James McCorriston 9c8f0ce667 Merge pull request #1434 from quantopian/update-leveraged-etfs
MAINT: Update leveraged ETF list
2016-09-07 13:48:12 -04:00
Jamie McCorriston a5ecaf4c3a added DGZ to delete list 2016-09-07 13:12:34 -04:00
Eddie Hebert cf44fcb207 Merge pull request #1473 from quantopian/release-1.0.2
REL: Prepare for 1.0.2 release.
2016-09-06 21:33:49 -04:00
Eddie Hebert 15aaafe290 REL: Prepare for 1.0.2 release.
Update release notes.

Generate api stubs.
2016-09-06 16:59:34 -04:00
Joe Jevnik ec1ca28f67 ENH: improve warning for protocol getitem 2016-09-06 15:11:43 -04:00
Scott Sanderson 977d1fa0b9 MAINT/TEST: Update default calendar smoketest. 2016-09-06 14:13:32 -04:00
Joe Jevnik cf2abf10e2 Merge pull request #1449 from quantopian/getitem-is-not-getattr
MAINT: remove __getitem__ as alias of __getattr__
2016-09-06 13:48:17 -04:00
Joe Jevnik a3e869e565 DEV: update copyright in protocol.py (added code) 2016-09-06 12:42:06 -04:00
Joe Jevnik 154697965f ENH: just deprecate __getitem__, don't remove 2016-09-06 12:39:29 -04:00
kglowinski 658b5364d8 BUG: Fixing 2/3 compat. 2016-09-06 10:12:01 -04:00
kglowinski d7b3c54860 BUG: Handle case with mult symbol options for same sid. 2016-09-06 10:12:01 -04:00
kglowinski ebe8311f8b BUG: Fixing SymbolNotFound to be raised. 2016-09-06 10:12:00 -04:00
Scott Sanderson 1ca23f2583 PERF: Remove module-scope calendar creations.
Remove module scope invocations of `get_calendar('NYSE')`, which cuts
zipline import time in half on my machine. This make the zipline CLI
noticeably more responsive, and it reduces memory consumed at import
time from 130MB to 90MB.

Before:

$ time python -c 'import zipline'

real    0m1.262s
user    0m1.128s
sys     0m0.120s

After:

$ time python -c 'import zipline'

real    0m0.676s
user    0m0.536s
sys     0m0.132s
2016-09-06 09:57:23 -04:00
John Ricklefs c09f7ab04c Revert "BUG: Capital change deltas rely on cash, not portfolio_value" (#1470)
This reverts commit 5b1aa5ec55.

The paradigm is: we're calculating a new capital base for the
performance period. We are therefore using the total
portfolio_value, not just the cash, to calculate the
difference from the specified target as the algorithm
has meaningful holdings.
2016-09-05 14:12:04 -04:00
Richard Frank a4e495dd24 BUG: Fix up check_parameters usage of string_types
and corresponding tests
2016-09-02 16:47:32 -04:00
phil.zhang 7ac91273f9 BUG: Change str to string_types to avoid errors
When in python2.7, and unicode_literals is imported
type check will raise error because 'type' is not str but unicode
2016-09-02 16:47:13 -04:00
Scott Sanderson 9a301dc59b Merge pull request #1466 from quantopian/disallow-length-1-regressions
ENH: Dont allow length=1 regressions/correlations.
2016-09-02 15:49:03 -04:00
Scott Sanderson 2e50a092b1 DOC: Clarify expect_bounded docstring. 2016-09-02 13:33:55 -04:00
Scott Sanderson dee715cff2 ENH: Dont allow length=1 regressions/correlations.
They're not meaningful, and they cause warnings from numpy.

Implemented in terms of a new preprocessor, `expect_bounded`, which
takes a tuple of `upper_bound` and `lower_bound`.
2016-09-02 12:49:09 -04:00
Eddie Hebert dfd37fcf78 MAINT: Remove unused data portal methods.
The apply adjustments behavior had been moved to the `HistoryLoader`
class.
2016-09-02 12:12:22 -04:00
Ana Ruelas 9063cb3ce4 BUG: Do not adjust returns for sharpe and sortino 2016-09-02 10:41:50 -04:00
Eddie Hebert 22dead208a Merge pull request #1460 from quantopian/daily-aggregator-corner-cases
TST/BUG: Full coverage on resample module.
2016-09-01 17:24:56 -04:00
Eddie Hebert 5e3b949fc6 TST/BUG: Full coverage on resample module.
test_resample now fully covers the resample module.

Fix a bug exposed by increased coverage, where daily aggregation on
`high` would return `nan` for an asset instead of 1) during the
course of day `1d` history was called on non-consecutive minutes and 2)
either, a) the value for the previously inspected dt was `nan` or b)
there were only `nan`s between the previous and current dt.

`low` had a similar bug which was only triggered if the value for the
previously inspected dt was `nan`.
2016-09-01 16:41:45 -04:00
John Ricklefs 311284475a ENH: Allow passing additional adjustments to calculate_capital_changes
If subclasses have additional capital change information that
is required to correctly calculate the target values for
cash capital changes, it can now be provided via
"portfolio_value_adjustment".
2016-09-01 16:04:46 -04:00
John Ricklefs 5b1aa5ec55 BUG: Capital change deltas rely on cash, not portfolio_value
The value of holdings is irrelevant when altering the
capital base of the current perf period.
2016-09-01 15:19:55 -04:00
Eddie Hebert d463a9855b TST/BUG: Cover all reindex session public methods.
Increase coverage on `ReindexSessionBarReader` so that all methods which
are considered part of the interface are covered by `test_resample`.

Fix bug in `get_value`, exposed by increased coverage, where the
`NoDataOnDate` exception was bubbling from the bcolz reader all the way
up when a session which was a holidy on the underlying reader was passed
to the reindex reader. (The reindex reader should return nan/0 in that
case.)

Also, move location of data index exceptions so that they are agnostic
to bcolz/us_equity_pricing; since the exception is now used by the
resample module to fix aforementioned bug.
2016-09-01 11:51:00 -04:00
Jean Bredeche fbd3774278 ENH: Update can_trade to check exchange time
BarData now takes the trading calendar as a parameter.

can_trade now checks if the asset’s exchange is open at the current or
next market minute (defined by the given trading calendar).
2016-08-31 21:22:06 -04:00
Eddie Hebert 6c805b013a Merge pull request #1457 from quantopian/allow-last-date-for-session-get-last-traded-dt
TST: Fix get_last_traded_dt on bcolz daily reader.
2016-08-31 15:53:36 -04:00
Eddie Hebert 151c3e45a7 TST: Fix get_last_traded_dt on bcolz daily reader.
Remove special handling for the last session of an asset, which was
moving the last traded back a session.

If the asset has data on a session, `get_last_traded_dt` should always
return that session if it is the parameter to the method.
2016-08-31 14:59:58 -04:00
Jean Bredeche 38ff7e5aa7 ENH: Simplified implementation of FutureChain object (not user-facing API).
No longer auto-updates its internal as-of date, instead requires an explicit
as-of date from the consumer.

Take a static list of contracts (instead of needing an assetfinder).

Instead of the as_of method, the user-facing API now lets you pass in an
offset, which is defined as an integral number of sessions.
2016-08-31 14:44:02 -04:00
Joe Jevnik 1714b2d03a MAINT: remove __getitem__ as alias of __getattr__ 2016-08-31 12:38:20 -04:00
Jean Bredeche f570ab0518 ENH: Put a cache in front of future chain lookups
Cache the last 100 rootsymbol/session pairs, since future chains never
change inside a session.
2016-08-31 10:40:11 -04:00
Jean Bredeche 1631d2a0c0 Merge pull request #1451 from quantopian/zero-means-zero
ENH: Avoid unnecessary work with missing data.
2016-08-30 20:07:25 -04:00
Jean Bredeche 972f05b8f2 ENH: Avoid unnecessary work with missing data. 2016-08-30 17:16:08 -04:00
Jean Bredeche 7fe1a56730 Merge pull request #1442 from quantopian/schedule-all-the-hours
ENH: Let event offsets be up to 12 hours.
2016-08-30 16:34:23 -04:00
John Ricklefs 8b11358e46 Merge pull request #1437 from quantopian/empyrical_perf
PERF: Reduce calculations performed by empyrical
2016-08-29 16:20:41 -04:00
Andrew Daniels 73667cbf29 ENH: Adds table_len method to BcolzMinuteBarReader (#1436)
To get the length of the underlying table for a given sid.
2016-08-29 15:07:08 -04:00
Eddie Hebert 22ad891d51 Merge pull request #1444 from quantopian/use-session-label-on-daily
BUG: Use session label instead of date for 1d.
2016-08-29 14:05:39 -04:00
Eddie Hebert 9474ccb0b2 BUG: Use session label instead of date for 1d.
`1d` history calls were failing on key errors when using the
`us_futures` calendar, because of timestamps occuring before a midnight
would present the wrong midnight (i.e. the midnight before the session,
instead of the following midnight, which is the label for the current
session.)

Tests will follow when bringing up coverage on resample and data portal
modules.
2016-08-29 13:25:14 -04:00
John Ricklefs 97b562044a PERF: Send pre-adjusted returns to information_ratio 2016-08-29 12:13:19 -04:00
John Ricklefs 53e5c4e113 PERF: Risk-adjust returns series once before calling empyrical
This prevents empyrical from having to subtract
the risk-free rate from the returns in each
individual method.
2016-08-29 12:13:19 -04:00
John Ricklefs 85e68f0162 PERF: Pass known calculations into empyrical methods
For example, to prevent `alpha` from internally calling
`beta` a second time, pass the previously-calculated
`beta` value in.

Requires empyrical 0.1.10 from pypi
2016-08-29 12:13:19 -04:00
Jean Bredeche 749c2eea33 ENH: Let event offsets be up to 12 hours. 2016-08-29 09:33:40 -04:00
Jean Bredeche 47dba5b6c9 TST: Some futures-related fixtures cleanup. 2016-08-28 21:33:54 -04:00