Commit Graph

2930 Commits

Author SHA1 Message Date
llllllllll b032b68a43 ENH: Adds a blaze pipeline loader. 2015-10-19 16:35:02 -04:00
James Kirk 4008b6a3a4 Merge pull request #782 from quantopian/future-chain-start-date
MAINT: Removes unneeded knowledge_date logic from future_chain
2015-10-19 11:53:43 -04:00
jfkirk 915c8e800f MAINT: Removes unneeded knowledge_date logic from future_chain 2015-10-19 11:37:56 -04:00
Scott Sanderson 18d33025a4 Merge pull request #779 from quantopian/pandas17
Change relativedelta to Timedelta as pandas 0.17.0 deprecated relativedelta.
2015-10-16 10:36:13 -04:00
Thomas Wiecki 659a367b09 STY Remove unused import of to_datetime. 2015-10-16 16:15:28 +02:00
Thomas Wiecki d21aec17e2 MAINT Change relativedelta to Timedelta as pandas 0.17.0 deprecated relativedelta. 2015-10-16 16:15:25 +02:00
Eddie Hebert 85c49afe4c Merge pull request #774 from quantopian/filter-out-dates-with-no-data
BUG: Filter out payout rows with no prev close.
2015-10-15 13:30:46 -04:00
Eddie Hebert 6b9476d346 BUG: Filter out payout rows with no prev close.
When the prev_close is 0 or does not exist, the resulting ration was either +inf
or nan, respectively.

Create a mask on the non-zero effective dates, where effective date is only
written when the prev close is sufficient for a valid ratio; and use that mask
to filter out the bad rows.

Also, use prev close as the effective date.
2015-10-15 13:30:05 -04:00
jfkirk 2686e3875a MAINT: Removes unnecessary benchmark load on some TradingEnvironments 2015-10-14 12:04:58 -04:00
Eddie Hebert 9a2767ad07 Merge pull request #765 from quantopian/add-spot-price-and-write-adjustments
Add spot price and write adjustments
2015-10-13 14:02:44 -04:00
Eddie Hebert ccdc815526 ENH: Write dividend payouts to adjustments db.
To prepare for querying for payouts from SQLite, write the dividend
payouts to a new table `dividend_payouts`.

Change the expected columns of the passed dividend frame to contain the
payout data, and use that data to calculate the ratios (this moves
internal code that was calcualting the ratios into Zipline.)

The end result is that instead of just a `dividends` table with the
backward looking adjustment ratios, also write a `dividend_payouts`
table and a `stock_dividend_payout` table.
2015-10-13 14:02:26 -04:00
Richard Frank 0fa6e72d1d Merge pull request #756 from quantopian/batch_load_ffc
Batch load Pipeline columns
2015-10-12 16:45:05 -04:00
Richard Frank 952da68610 DOC: Fixed docstring 2015-10-12 16:13:55 -04:00
Richard Frank 7a638e4580 STY: Moving args to new line 2015-10-12 16:13:55 -04:00
Richard Frank ee26a21855 MAINT: Renamed loader_dispatch to get_loader
Now it raises a KeyError instead of returning None,
if loader not found.
2015-10-12 16:13:55 -04:00
Richard Frank 99de89c817 PERF: Don't recalc similar atomic terms 2015-10-12 16:13:55 -04:00
Richard Frank 2dabda6b76 MAINT: Reworked Term atomicity 2015-10-12 16:11:19 -04:00
Richard Frank 940831e1cf TST: Added test that columns are batched
when they share the same loader and extra_rows
2015-10-12 11:17:06 -04:00
Richard Frank 7bd6b69a89 MAINT: Group by loader and extra_rows
so that the mask and dates are the same for all the columns
the loader is loading at a time.
2015-10-12 10:48:29 -04:00
Richard Frank ba0542a641 MAINT: Removed MultiColumnLoader
since we can use pipeline_loader_dispatch instead
2015-10-12 10:48:29 -04:00
Richard Frank 143f780036 MAINT: Fixed base class signature 2015-10-12 10:48:29 -04:00
Richard Frank 83bd1310d9 PERF: Using pipeline_loader_dispatch to group by loader
instead of dataset
2015-10-12 10:48:29 -04:00
Richard Frank e880fa3e34 PERF: Batch load atomic terms by dataset
Added CompositeTerm and now we dispatch more generally on atomic
2015-10-12 10:48:28 -04:00
Scott Sanderson 87d5efb699 Merge pull request #763 from quantopian/make-rsi-actually-work
BUG: RSI wasn't even close to working.
2015-10-12 10:46:55 -04:00
Scott Sanderson 165ec68518 Merge pull request #762 from quantopian/adjustment-perf
PERF: Speed up reading of adjustments.
2015-10-10 13:45:14 -04:00
Eddie Hebert 752a2c3962 DOC: Fix comment typo.
Reader/Writer
2015-10-10 07:20:36 -04:00
Eddie Hebert 5338c8e611 ENH: Add spot_price to BcolzDailyBarReader.
Add new method to BcolzDailyBarReader, `spot_price` which returns the
unadjusted price for the specified day and sid.
2015-10-10 07:19:03 -04:00
Scott Sanderson 2eaab2eedc Merge pull request #764 from FreddieV4/master
Update README.md
2015-10-09 23:54:40 -04:00
Freddie Vargus a42fe6c555 Update README.md
Add inline link for quantopian.com
2015-10-09 21:59:05 -04:00
Scott Sanderson 1336dfc181 BUG: RSI wasn't even close to working.
Fixed and added tests.
2015-10-09 20:10:30 -04:00
Scott Sanderson 23ca58813a PERF: Speed up reading of adjustments.
For a pipeline doing simple computations on USEquityPricing data, we
were spending ~60% of `run_pipeline` loading adjustments.  Almost all of
that time was spent in calls to `DatetimeIndex.get_loc` to find the
indices of adjustment `eff_date`s.

This optimizes the eff_date lookups by pre-populating a cache of
seconds-since-epoch timestamps that we expect to see, and falling back
to `np.searchsorted` on cache misses.

In testing, this reduces the time to compute a 1-year pipeline with 30
and 90 day moving averages from 3.1 seconds to 0.9 seconds.
2015-10-09 17:48:07 -04:00
Scott Sanderson 4a9cd76dab MAINT: Remove unused constant. 2015-10-09 17:47:47 -04:00
Scott Sanderson f06f4bdd25 MAINT: Remove unused import. 2015-10-09 17:47:18 -04:00
Eddie Hebert e6ba59b580 Merge pull request #761 from quantopian/move-us-equity-to-data
MAINT: Move equity data formats out of loader.
2015-10-09 17:28:37 -04:00
Eddie Hebert e33f6dcdcd MAINT: Move equity data formats out of loader.
Put the logic for reading and writing the equity price and adjustment
data into a module located in data, making it distinct from the pipeline
loader usage of the formats.

This prepares for both incoming changes of how adjustments are written,
(which includes using the bcolz daily reader as an input), as well as
eventually providing the readers to a DataPortal object.
2015-10-09 17:20:19 -04:00
Stewart Douglas 4e2039c9b0 ENH: Coerce user input with API method decorator
Previously we have capitalized input strings at different levels in
our code: in the user-facing API methods and in the asset finder.
This commit moves input string capitalization exclusively to the API
method to which the string was supplied. Specifically, the string is
capitalized by a preprocess API method decorator. The preprocess
decorator passes the input string to the newly defined
ensure_upper_case() method, which returns a TypeError if the argument
supplied is not a string.

ensure_upper_case() is defined in a new file, zipline/utils/input_validation.py.
The existing expect_types() method is also moved there.

Various tests in tests/test_assets.py are modified to account for the
fact that the asset finder method lookup_symol() no longer capitalizes
its supplied argument.
2015-10-08 15:41:33 -04:00
Andrew Daniels 69b734129f ENH: Add index to root_symbol column of futures_contracts 2015-10-08 14:51:42 -04:00
Andrew Daniels 2e85e08768 TST: Adds basic test coverage for FutureChain.__iter__ 2015-10-08 14:35:00 -04:00
Andrew Daniels 9ecd7e18d0 MAINT: Improves handling for contract date info in lookup_future_chain
Improves the query for futures contract to use the date that comes first
in time (between notice_date and expiration_date) to determine cotnract
validity. If one of these is missing, we'll use the other.

Also modifies the query to order the resulting contracts by their
expiration_date if available, and to use their notice_date if not.
2015-10-08 14:16:57 -04:00
Stewart Douglas 3feb78807e MAINT: Add license to various files 2015-10-07 15:47:45 -04:00
Scott Sanderson e728e0c1f3 BUG: Fail when passing two Filters to set_screen. 2015-10-07 10:48:42 -04:00
Scott Sanderson bf6dc7fac1 DOC: Correctly write optional arg to CustomFactor. 2015-10-06 12:07:50 -04:00
Scott Sanderson d5f8c7c99b DOC: The double-colon is intentional. 2015-10-06 12:03:05 -04:00
Jean Bredeche 2bb87cbd23 DOC: typo fixes 2015-10-06 09:06:05 -04:00
Scott Sanderson 773e4cc4db BUG/DOC: Use correct close brace. 2015-10-06 06:56:07 -04:00
Scott Sanderson 1c27aa9fb1 DOC: More doc updates. 2015-10-06 06:56:07 -04:00
Scott Sanderson 3233850cf6 DOC: Update docstrings for built-in factors. 2015-10-06 06:56:06 -04:00
Scott Sanderson 7d760f64d7 DOC: More docs updates. 2015-10-06 06:56:06 -04:00
Scott Sanderson f109dbbd1d DOC: Use double backticks for API methods in pipeline docs. 2015-10-06 06:56:06 -04:00
Scott Sanderson 4230049fde DOC: More docs tweaks.
- Remove methods and attributes on Pipeline.  They look bad on the Q docs.x
- Reword columns docstring.
2015-10-06 06:56:06 -04:00