Commit Graph

2699 Commits

Author SHA1 Message Date
Scott Sanderson be857ead0e DOC: Clarify default window-safety for Filters. 2016-07-24 21:17:16 -04:00
Gil Wassermann 98be158c20 ENH: storing commits. test case added 2016-07-21 08:49:41 -04:00
Gil Wassermann d7b631617c ENH: made filters window safe 2016-07-20 17:10:08 -04:00
dmichalowicz 9cc5796b3e DOC: Pipeline docstring edits 2016-07-20 15:10:23 -04:00
Jean Bredeche 21aca754ba ENH: Reorganized internal calendar implementation.
Added tests for CME calendar.

Added ICE calendar (and tests).

Added CFE calendar (and tests).
2016-07-19 22:27:34 -04:00
Andrew Daniels 6cebf05417 BUG: Further corrections for days_at_time (#1334)
* BUG: Further corrections for days_at_time

- Revert to using DateOffset, as Timedelta doesn't handle offsetting by
  one day over a tz change properly:

    In [12]: pd.Timestamp('2004-04-05', tz='America/Chicago') + pd.Timedelta(days=-1)
    Out[12]: Timestamp('2004-04-03 23:00:00-0600', tz='America/Chicago')

    In [13]: pd.Timestamp('2004-04-05', tz='America/Chicago') + pd.DateOffset(days=-1)
    Out[13]: Timestamp('2004-04-04 00:00:00-0600', tz='America/Chicago')

  By creating a DateOffset using the `days` kwarg, the issue previously
  fixed in bcc867b is addressed.

- To preempt any other pandas issues around day offsets, changes to
  performing these with no timezone, then localizing to the local
  timezone when shifting the time.
- Adds unit test for days_at_time

* STY: Remove unused import
2016-07-19 13:19:40 -04:00
dmichalowicz a8486c5f6e ENH: Factor-to-factor correlations/regressions 2016-07-19 11:16:55 -04:00
Andrew Daniels bcc867b143 BUG: Use Timedelta instead of DateOffset in days_at_time calendar helper
Prior to pandas 17, there were issues with offsetting dates with
DateOffset around discontinuities (like the start of DST). We can use
Timedelta here instead, which handles these edge cases.
2016-07-18 17:11:11 -04:00
Jean Bredeche 5a0f840917 Clean up daily bar reader/writer to take advantage of new trading calendar. The reader
is backwards-compatible with the previous format.

In USEquityLoader, use dailyreader's trading_calendar.

This is backwards compatible and will fall back to the NYSE calendar if
the reader doesn’t have a calendar specified.
2016-07-15 15:13:57 -04:00
Jean Bredeche 2af26ee38f Merge pull request #1327 from quantopian/fix-brainfarts
Fix some mistakes from a previous merge.
2016-07-14 20:53:41 -04:00
Joe Jevnik 835fab8ebd Merge pull request #1323 from quantopian/pmap-blaze-query
ENH: Adds the ability to run blaze queries concurrently
2016-07-14 18:40:57 -04:00
Joe Jevnik 5473ec240d ENH: Adds the ability to run blaze queries concurrently 2016-07-14 17:32:30 -04:00
Jean Bredeche 295cfa3846 Fix some mistakes from a previous merge.
No tests failed, which was worrisome.  Will file issues to take a look
later.
2016-07-14 15:40:36 -04:00
Samuel Woo 5756f2932d ENH: Adds LinearWeightedMovingAverage factor 2016-07-14 15:10:42 -04:00
Jean Bredeche e22108b7ef Merge pull request #1312 from quantopian/24-5-backtesting
Re-implemented the calendar API.
2016-07-14 10:05:18 -04:00
Jean Bredeche 3d6fdc0755 Make sure we are passing ints to nth. 2016-07-13 20:40:57 -04:00
Richard Frank dc0784b88d MAINT: Removed defaults from RateOfChangePercentage
since it's general enough that we don't need to assume closes
2016-07-13 19:46:59 -04:00
Elizaveta239 8a32c2b7ce ENH: Add Rate of change Percentage indicator 2016-07-13 18:07:20 -04:00
Jean Bredeche 4af61d2c39 unused 2016-07-13 09:13:39 -04:00
Joe Jevnik 0f1c08024a ENH: Adds the ichimoku cloud factor 2016-07-12 18:49:24 -04:00
Joe Jevnik 958d455a7a ENH: Support default params for terms 2016-07-12 18:49:24 -04:00
Jean Bredeche 6fb4923cc7 Re-implemented the Calendar API.
Instead of having separate ExchangeCalendar and TradingSchedule objects, we
now just have TradingCalendar.  The TradingCalendar keeps track of each
session (defined as a contiguous set of minutes between an open and a close).
It's also responsible for handling the grouping logic of any given minute
to its containing session, or the next/previous session if it's not a market
minute for the given calendar.
2016-07-12 13:13:50 -04:00
dmichalowicz d8e9fa91bd Loader return column vector for no sids case 2016-07-01 12:18:32 -04:00
David Michalowicz d6c1c5fce9 Merge pull request #1309 from nathanwolfe/adv-fix
BUG: Correct AverageDollarVolume NaN handling
2016-06-30 14:04:43 -04:00
Eddie Hebert 51eda06323 MAINT: Add equity to naming of bar data classes.
In preparation of adding futures, add equity to the names of both the
classes and methods for writing bcolz data. Futures data will use a
different minutes per day with a separate reader. This change will allow
both equity and futures fixtures to be side by side.

Also, break out the method which generates the dataframes and trading
days member into fixtures (`EquityMinuteBarData` and
`EquityDailyBarData`) on which the `*BarReader` fixture depends.  This
fixture is separated out to enable reader/writers in different formats
to use the same data setup. (There is internal code which needs to write
minute and daily bar data in a database format.)
2016-06-30 08:21:42 -04:00
Nathan Wolfe e70490a415 BUG: Correct AverageDollarVolume NaN handling
`AverageDollarVolume` used `nanmean`, which discards NaNs before
averaging, giving an ADV which is too high for any equities that have
any NaNs.

Changing the method to `nansum` divided by window length so that the
denominator is the same no matter whether there are NaNs or not.
2016-06-28 17:20:09 -04:00
Andrew Daniels 5ac66aa19e BUG: Don't use calendar from daily bars in USEquityPricingLoader
This calendar only has up to the last trading day, use
default_nyse_schedule instead.
2016-06-28 13:38:17 -04:00
Andrew Daniels 4fd444dbb2 MAINT: Disable deprecation warning for tradingcalendar
The new calendar API is currently in flux, so disabling the deprecation
warning for tradingcalendar. To be re-enabled once the new API is
stabilized.
2016-06-28 10:06:11 -04:00
Eddie Hebert a721380664 MAINT: Remove unused test factory functions.
`create_commission` and `create_minutely_trade_source` are no longer
used.
2016-06-27 13:06:41 -04:00
Eddie Hebert ca58632815 MAINT: Remove DataSource and derived classes.
The `DataSource` class and other classes derived from it are no longer
used. Instead `DataPortal` and various `MinuteBarReader` and
`DailyBarReaders` should be used.
2016-06-27 13:06:41 -04:00
Maya Tydykov 321e6f719f TST: expand tests
DOC: add comment to workaround line
2016-06-23 12:14:24 -04:00
Maya Tydykov 9395a469f0 BUG: change timestamp normalization to account for pandas bug
BUG: revert to old normalization algo with extra normalization
2016-06-23 12:14:22 -04:00
dmichalowicz 393f82e81e ENH: Add single-column input/output capabilities to pipeline terms 2016-06-23 10:24:09 -04:00
Scott Sanderson e510cbbf7b Merge pull request #1280 from quantopian/bad-pipeline-columns
BUG: Fail fast on invalid pipeline columns
2016-06-22 18:44:40 -04:00
Richard Frank 000b64703a BUG: Fixes quandl bundle failing to download pricing data
for invalid symbol
2016-06-22 18:11:58 -04:00
Richard Frank 69b6cff964 Merge pull request #1289 from quantopian/wildcard
wildcard object and doctests
2016-06-22 18:09:57 -04:00
Joe Jevnik d608e0af4f Merge pull request #1276 from quantopian/blaze-loader-checkpoints
ENH: add ffill checkpointing to blaze core loader
2016-06-21 16:48:08 -04:00
Joe Jevnik bfa3e6f153 TST: 32b compat doctests 2016-06-21 15:07:03 -04:00
Joe Jevnik efd7bf72c3 TST: py3 compat doctests 2016-06-21 15:07:03 -04:00
Joe Jevnik 5925107052 TST: fix doctests to actually run 2016-06-21 15:07:03 -04:00
Joe Jevnik b210acb121 DOC: typo 2016-06-21 14:00:40 -04:00
Joe Jevnik c2723f3487 BUG: query everything if deltas are empty 2016-06-21 13:20:43 -04:00
Andrew Liang 65bf854897 Merge pull request #1296 from quantopian/fix_month_start_rule
BUG: get_first_trading_day_of_month needs to return normalized dt
2016-06-21 12:55:06 -04:00
Andrew Liang 1643bd1db6 BUG: get_first_trading_day_of_month needs to return normalized dt 2016-06-21 12:26:40 -04:00
Andrew Daniels dd38ca9747 BUG: Removes Hurricane Sandy closings from CME exchange calendar
Since the CME calendar was based off of the NYSE calendar, closings for
Hurricane Sandy were included, but shouldn't have been for CME.

This is the explanation we had included prior to the new exchange
calendars:

http://en.wikipedia.org/wiki/Hurricane_sandy

We *do not* add any non-trading days for Hurricane Sandy. Although
trading on CME Group exchanges was disrupted, trading still occurred at
some point on each day. Importantly, the disruptions do not appear to
have affected the expiration dates stipulated in the futures contracts
expiring during this period.

Trading of CME US equity index futures & NYMEX futures was disrupted due
to the hurricane's impact on New York. CME US equity index futures
markets were disrupted on October 29th 2012, but reopened at 5:00pm CT.

The US equity index markets were closed from 8:15am CT on October 30,
both for the trading floor and CME Globex. The trading floor of the
NYMEX was closed on October 30, but all floor-trading products were
available electronically on CME Globex.

Source:
http://investor.cmegroup.com/investor-relations/releasedetail.cfm?ReleaseID=716923

    October 2012
Su Mo Tu We Th Fr Sa
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

Also see:
-- http://www.chicagobusiness.com/article/20121029/NEWS01/121029818/cme-cboe-other-markets-closed-for-hurricane-sandy-about-500-local-flights-scrapped
-- http://money.cnn.com/2012/10/29/investing/hurricane-sandy-stock-markets
2016-06-21 10:31:35 -04:00
Eddie Hebert 6374515109 Merge pull request #1293 from quantopian/remove-munge
MAINT: Remove unused module.
2016-06-21 10:29:24 -04:00
Eddie Hebert 87843e22fe MAINT: Remove unused module.
Remove module, last usage was removed during lazy access pattern
rewrite.
2016-06-21 09:50:00 -04:00
Joe Jevnik c0d08f9c0d TST: Adds wildcard object for assert_equal 2016-06-20 14:20:18 -04:00
Joe Jevnik caebdf7cfc MAINT: shuffle the complex expression checks 2016-06-20 13:35:07 -04:00
Andrew Daniels 7ae370b037 MAINT: Fixes DataPortal.get_spot_value to correctly handle 'price' field
Querying for the price field of an equity actually looks at the close
field, so we should do the same for futures. Otherwise `data.can_trade`
and `data.current` of 'price' fail for futures.
2016-06-20 10:34:18 -04:00