Commit Graph

4006 Commits

Author SHA1 Message Date
Scott Sanderson bc302beec9 MAINT: Rework event datasets.
- Refactored EventsLoader and BlazeEventsLoader to not require a
  subclass per dataset.  Instead, you now pass a map from columns to
  event fields directly to the EventsLoader constructor.

- Removed a large number of Quantopian-specific datasets and associated
  tests.

- Rewrote the core logic of EventsLoader and BlazeEventsLoader to share
  index calculations across multiple requested columns.

- Fixed a bug where event fields were incorrectly forward-filled when
  null values were present in an event.
2016-06-10 19:22:27 -04:00
Jean Bredeche 5a6b870cd5 Merge pull request #1138 from quantopian/exchange-calendars-v2
ExchangeCalendars and TradingSchedules
2016-06-09 17:21:06 -04:00
Jean Bredeche 97d27cf407 Revert "Merge pull request #1226 from quantopian/schedule_function_resilience"
This reverts commit 6079604483, reversing
changes made to c9b5979f45.
2016-06-09 17:19:46 -04:00
Andrew Liang 6079604483 Merge pull request #1226 from quantopian/schedule_function_resilience
MAINT: Make schedule function rules resilient for no trading day
2016-06-09 15:33:23 -04:00
Jean Bredeche 7da1eae38e Merge pull request #1270 from quantopian/just-kidding-put-old-calendar-back
REV: Restore old tradingcalendar.py
2016-06-09 13:57:12 -04:00
Jean Bredeche 1505c62daf REV: Restore old tradingcalendar.py 2016-06-09 13:56:40 -04:00
Jean Bredeche 4b09715052 ENH: better comments 2016-06-09 13:28:43 -04:00
Andrew Liang 7b82b9a2fd MAINT: Make schedule function rules resilient for no trading day
Make the rules resilient to env.previous_trading_day or
env.next_trading_day being None
2016-06-09 09:53:16 -04:00
Andrew Daniels 60cd4aab91 Use new API in tests/data/bundles/test_core.py 2016-06-08 16:24:36 -04:00
Jean Bredeche b5633aa87c DEV: Fix merge issues. 2016-06-08 14:16:17 -04:00
Andrew Daniels 02a91ec4ab MAINT: Removes the set_first_trading_day method of DataPortal
Since the first trading day is now passed directly to the DataPortal on
init, there's no need for a method that does this. Moves all the
additional logic/assignments into the init. Also corrects an issue where
we would never create certain attributes if self._first_trading_day was
None.

Adds the ability to specify the first trading day for a data portal in a
test case when using the WithDataPortal fixture.
2016-06-08 13:34:23 -04:00
Jean Bredeche 92600d7695 BLD: get travis to run on PRs into exchange-calendars-v2 2016-06-08 13:34:23 -04:00
Jean Bredeche b1428aaad1 DEV: Cleaned up trading_minute_window
Removed it from ExchangeCalendar.

Fixed TradingSchedule’s implementation to be much faster.  Removed the
`step` parameter.
2016-06-08 13:34:23 -04:00
Jean Bredeche e1e12534c5 ENH: speed up calculation of all trading minutes. 2016-06-08 13:34:23 -04:00
Jean Bredeche 1208aaf1d9 Fix from bad rebase. 2016-06-08 13:34:23 -04:00
jfkirk 39cc355066 TST: Finishes fixing fixes for the fixed fixtures 2016-06-08 13:34:23 -04:00
jfkirk d437a5d675 MAINT: Rebase fixes 2016-06-08 13:34:23 -04:00
jfkirk 3b8b6d55e0 STY: Cleans up ExchangeCalendar construction 2016-06-08 13:34:22 -04:00
jfkirk 4a20157a25 BUG: Python 3 time compatibility 2016-06-08 13:34:22 -04:00
jfkirk 2a8f69fc01 MAINT: DataPortal env -> asset_finder 2016-06-08 13:34:22 -04:00
Andrew Daniels 53fcdde66d Fixes for CMEExchangeCalendar
Note that a lot of this duplicates what we have for
NYSEExchangeCalendar.
2016-06-08 13:34:22 -04:00
jfkirk 0a6ad9ac9e STY: Your flake is on fleek 2016-06-08 13:34:22 -04:00
jfkirk 581e817603 MAINT: Rebase reconciliation 2016-06-08 13:34:22 -04:00
jfkirk 77cdec161a BUG: Changes type of early_closes to DatetimeIndex 2016-06-08 13:34:21 -04:00
jfkirk 156be81b14 ENH: Adds BMF, LSE, TSX to get_calendar 2016-06-08 13:34:21 -04:00
jfkirk 2a81c2066f ENH: Adds the option to force calendar registration 2016-06-08 13:34:21 -04:00
jfkirk ada0804df1 MAINT: Renames CME ExchangeCalendar module 2016-06-08 13:34:21 -04:00
jfkirk da99cd6192 ENH: Adds BMF, LSE, and TSX exchange calendars 2016-06-08 13:34:21 -04:00
jfkirk 219f20989f BUG: Fixes after-hours behavior on session_date 2016-06-08 13:34:21 -04:00
jfkirk 2e625181bc BUG: Removes reference to env.minutes_in_range 2016-06-08 13:34:20 -04:00
jfkirk f9812968d4 MAINT: Updates July 5th Holiday for pandas 17 2016-06-08 13:34:20 -04:00
jfkirk 10a118d94c MAINT: Removes references to tradingcalendar 2016-06-08 13:34:20 -04:00
jfkirk 4344336576 BUG: Adds schedule arg to run_algo 2016-06-08 13:34:20 -04:00
jfkirk 75e0e4723d TST: Refactors more tests to use WithTradingSchedule 2016-06-08 13:34:20 -04:00
jfkirk d9fc514fa8 TST: Adds TradingSchedule test fixture 2016-06-08 13:34:20 -04:00
jfkirk 31f9f06c9a MAINT: Removes static calendar from schedule_function rules 2016-06-08 13:34:19 -04:00
jfkirk 591ae02a02 MAINT: Removes unnecessary NYSETradingSchedule 2016-06-08 13:34:19 -04:00
jfkirk 705fb4e89f MAINT: Removes use of partials in schedule classes 2016-06-08 13:34:19 -04:00
jfkirk ddaf3d5b02 MAINT: Consolidates minute_window methods in schedule classes 2016-06-08 13:34:19 -04:00
jfkirk 26742dda67 MAINT: Removes obsolete tradingcalendar module 2016-06-08 13:34:19 -04:00
jfkirk 241abda2a5 STY: Flake8 2016-06-08 13:34:19 -04:00
jfkirk 4b7390ac81 WIP: Refactors tests to use TradingSchedule 2016-06-08 13:34:19 -04:00
jfkirk c8304e8601 ENH: Adds ExchangeCalendar, TradingSchedule, and implementations
Conflicts:
	tests/data/test_minute_bars.py
	tests/data/test_us_equity_pricing.py
	tests/finance/test_slippage.py
	tests/pipeline/test_engine.py
	tests/pipeline/test_us_equity_pricing_loader.py
	tests/serialization_cases.py
	tests/test_algorithm.py
	tests/test_assets.py
	tests/test_bar_data.py
	tests/test_benchmark.py
	tests/test_exception_handling.py
	tests/test_fetcher.py
	tests/test_finance.py
	tests/test_history.py
	tests/test_perf_tracking.py
	tests/test_security_list.py
	tests/utils/test_events.py
	zipline/algorithm.py
	zipline/data/data_portal.py
	zipline/data/us_equity_loader.py
	zipline/errors.py
	zipline/finance/trading.py
	zipline/testing/core.py
	zipline/utils/events.py
2016-06-08 13:34:18 -04:00
Richard Frank c9b5979f45 BUG: Fixed repr of PerShare
Format string didn't match keyword arg
2016-06-08 10:41:24 -04:00
Richard Frank 787906590c Merge pull request #1254 from ChrisPappalardo/dockerfile_cap
created dockerfile for zipline dev
2016-06-07 13:33:18 -04:00
ChrisPappalardo 7e70f8fa98 DEV: created dockerfile for zipline development 2016-06-07 09:08:18 -07:00
Eddie Hebert fd57705676 Merge pull request #1256 from quantopian/fix-history-daily-freq-in-minute
BUG: Apply latest adjustment for minute `1d`
2016-06-07 11:08:18 -04:00
Eddie Hebert 58467f9b3e MAINT: Only calc inverse ratio if it applies.
Avoid unneeded work by only calcultaing the inverse ratio when it
applies to the current range.
2016-06-07 10:41:18 -04:00
Eddie Hebert b450ab841f BUG: Apply latest adjustment for minute 1d
Fix behavior in minute mode history with frequency `1d`, where on the
day immediately following an adjustment action, the overnight adjustment
would not apply. (However the adjustment would be applied after a 1 day
lag.)

The root cause of the bug was that the history data for minute mode when
using `1d` stitches together a sliding window of the daily data for
previous  and the current minute. That daily data sliding window and
corresponding adjustments was being read as if the data was being viewed
from on the last day of the window; however in this case the data is
being viewed from the day after the window has completed. The difference
in view points requires the adjustments to popped and applied by the
adjusted array one index earlier. The fix uses the `extra_slot` value as
signifier on whether the data is being viewed on the following day and
then accordingly adjusts the index of the mulitpy object.

Also, change the split and merger test data ratios to have different values,
to ensure that different adjustment values are applied; as opposed to
doubling up on just one of the values.
2016-06-07 10:41:18 -04:00
Jonny Elliott 6979ae8d6a ENH: fast stochastic oscillator added (#1255)
ENH: fast stochastic oscillator added.

A fast stochastic oscillator has been added to the technical
factors. This is the simplest of the stochastic oscillators,
and can be used to build the others.

Tests have been added that compare against the values expected
from that of ta-lib STOCHF.

FastStochasticOscillator is marked as window_safe=True to allow taking
moving averages for smoothing.
2016-06-06 17:06:34 -04:00