Commit Graph
3178 Commits
Author SHA1 Message Date
vikram-narayan beea8624d1 MAINT: pass args, kwargs to add_class_callback 2017-01-27 18:19:23 -05:00
Eddie Hebert 1302d4152f ENH: Add futures support for generic asset lookup.
Attempt to lookup up the symbol in the futures table, after attempting to look
up the symbol in the equities table.
2017-01-26 21:08:30 -05:00
Eddie Hebert 2a9d8cebc3 MAINT: Remove unused futures related methods from asset finder.
These methods became unused during the course of reworking futures to support
continuous futures.
2017-01-26 15:41:30 -05:00
dmichalowicz 44088dd4d5 BUG: Multipliers were not removed when closing a position 2017-01-25 17:23:09 -05:00
Jean Bredeche ccddc86d6b ENH: Solidify equality comparisons for SlippageModel classes 2017-01-24 11:28:32 -05:00
Eddie Hebert b90091e494 BUG: Fix end session metadata for minute bar writer.
When opening with a new `end_session`, i.e. opening for append, write the new
end session to the metadata.

Fixes an issue where the calendar on minute bar readers did not include the
recently appended day, causing reads on the last values to fail.

According, update append test to read a value, instead of checking table length.
2017-01-22 15:14:05 -05:00
David MichalowiczandGitHub 364f5cc199 Merge pull request #1644 from quantopian/closed-means-closed
Don't allow ordering assets after their auto close date
2017-01-20 10:19:27 -05:00
dmichalowicz 83a221e986 BUG: can_trade was true for assets after their auto close date 2017-01-20 09:54:30 -05:00
Jean Bredeche 1f56f20a7f ENH: add current_session property to BarData 2017-01-19 16:53:49 -05:00
Maya TydykovandGitHub 25f826d5c7 Merge pull request #1643 from quantopian/events-loader-handle-empty-raw-data
Events loader handle empty raw data
2017-01-19 13:01:43 -05:00
Maya Tydykov ecbc7f890b BUG: make the events loader handle empty raw data
TST: add test case for empty raw events data

BUG: update for python compatibility

MAINT: Simplify assertion for empty events case.

DOC: Add comments on indexer unpacking.

MAINT: move some config to test method
2017-01-19 12:00:49 -05:00
Jean Bredeche 7e2838744c ENH: Small refactoring of fill price check. 2017-01-18 09:22:05 -05:00
Eddie Hebert df87dfb227 ENH: Add sorted to sid list when truncating.
For repeatable order of truncates between invocations.
2017-01-17 17:25:28 -05:00
Eddie Hebert 1d75143f54 ENH: Add a method to open existing minute bar directory.
Remove need for a consumer that is editing an existing minute bars directory to
reread the values which should not change from the metadata.

Add a test to the append on new day and truncate, which would be the common
usage of this method.
2017-01-17 17:25:27 -05:00
Scott SandersonandGitHub a06503d8ec Merge pull request #1645 from quantopian/nitpick-some-more-why-dont-you
STY: Simplify style in conditional.
2017-01-12 22:26:21 -05:00
Scott Sanderson 57b09ce1d7 STY: Simplify style in conditional. 2017-01-12 22:03:35 -05:00
Eddie HebertandGitHub 1e51dbec0a STY: Use def statements instead of lambda assignment. (#1639)
From pep-0008:

```
Always use a def statement instead of an assignment statement that binds a
lambda expression directly to an identifier.

Yes:

def f(x): return 2*x
No:

f = lambda x: 2*x

The first form means that the name of the resulting function object is
specifically 'f' instead of the generic '<lambda>'. This is more useful for
tracebacks and string representations in general. The use of the assignment
statement eliminates the sole benefit a lambda expression can offer over an
explicit def statement (i.e. that it can be embedded inside a larger expression)
```
2017-01-06 13:39:07 -05:00
Luca b5ce101f5a BUG: IchimokuKinkoHyo techinical factor has wrong default inputs 2017-01-06 16:06:05 +01:00
Kathryn GlowinskiandGitHub dd560ba5f0 BUG: Datetimes should be converted in utc. (#1635)
* BUG: Datetimes should be converted in utc.

* DOC: Making note of UTC req. and moving comment.
2017-01-05 14:13:23 -05:00
Eddie HebertandEddie Hebert e913519734 ENH: Add a reader writer pair for HDF5 minute bar updates.
This format is intended for storing data for all sids of an asset type,
e.g. equities or futures for a session. bcolz is not used to avoid the overhead
of creating the directories and files for each asset (which numbers around ~8000
for active equities) can be removed since the update is meant to be read at
once, instead of supporting the random access pattern needed by the simulation.

This patch only adds the reader/writer pair, with the management of finding the
paths to delta files and the application of the updates to the bcolz write left
to internal loader code.

Also, the update reader interface is intentionally constrained to the data for
an entire session to allow for an implementation that allows for mid-session updates.
2017-01-04 12:09:10 -05:00
Scott SandersonandGitHub 3095f8c573 Merge pull request #1627 from quantopian/vectorized-symbol-map
ENH: Add vectorized lookup_symbol.
2016-12-28 15:10:14 -05:00
Scott Sanderson 4475a42b15 DOC: Add note on lookup_symbols. 2016-12-28 14:43:15 -05:00
Scott Sanderson fd74aad31c ENH: Add vectorized lookup_symbol.
Currently only supports one as_of date.c
2016-12-28 12:31:50 -05:00
Kathryn GlowinskiandGitHub df6cb62925 Adjustments to Component Dfs (#1620)
* ENH: SQLiteAdjustmentReader can return DF versions of tables.
2016-12-27 13:44:17 -05:00
Andrew DanielsandGitHub c6ad893c14 TST: Populate equity_supplementary_mappings from WithAssetFinder (#1622) 2016-12-22 11:07:30 -05:00
Richard Frank 7ab0b08e95 MAINT: Filter out null orders 2016-12-20 19:27:29 -05:00
Richard Frank 30bc01dbc0 MAINT: Some cleanup while working on batch ordering 2016-12-20 19:27:28 -05:00
Richard Frank 555d460d26 TST: Ensure batch_order_target_percent orders like order_target_percent 2016-12-20 19:27:28 -05:00
Richard Frank 0ee76d1e11 DOC: Updated return types in docstrings 2016-12-20 19:27:28 -05:00
Richard Frank edab970973 ENH: Renamed to batch_order and added batch_order_target_percent 2016-12-20 11:58:05 -05:00
Richard Frank 83d0c45ec3 MAINT: Renamed order_batch parameter and added docs 2016-12-20 11:57:27 -05:00
Richard Frank dea157741f MAINT: Allow for orders with id 0 2016-12-20 11:57:26 -05:00
Richard Frank 3457b106fb ENH: Blotter support for ordering a batch 2016-12-20 11:57:26 -05:00
Richard Frank 8314586612 MAINT: Factored out order arg calculation methods
so callers can use them to construct args for a batch of orders
2016-12-20 11:57:26 -05:00
Andrew DanielsandGitHub b501ecc736 ENH: Adds support for supplementary asset mappings (#1612)
* ENH: Adds support for supplementary asset mappings

- Adds a supplementary_mappings table to the assets.db, to hold point-
  in-time mappings of sids to arbitrary categories of values, e.g.
  alternative identifiers. This bumps ASSET_DB_VERSION.

- Adds supplementary_map and supplementary_map_by_sid to AssetFinder,
  caches of the underlying table that are fully populated on first
  access, which map the supplementary values to sids and vice versa,
  respectively.

- Adds lookup_by_supplementary_mapping method, which fronts
  supplementary_map to query for the asset last known to have held a
  value at a given dt.

- Add get_supplementary_field method, which fronts
  supplementary_map_by_sid to query for the last known value held by an
  asset at a given dt.
2016-12-16 15:20:53 -05:00
Joe JevnikandJoe Jevnik de7c32b22c ENH: Allow custom chunks iterators for attach_pipeline 2016-12-15 19:58:19 -05:00
Ana Ruelas 3cfbdeaca1 DOCS: Minor (but build breaking) docstring fix 2016-12-06 13:33:22 -05:00
Eddie Hebert a19ec84a1d BUG: Allow rolls to skip over contracts.
For futures that behave like GC, use the latest roll as the back contract when
walking backwards over the window, so that when the front contract is skipped
because it never has more volume between its auto close date and the previous
auto close date, the back contract which did have volume is still used when
making comparisons to construct the chain.
2016-12-05 22:33:03 -05:00
Eddie HebertandGitHub b120da4a4c Merge pull request #1609 from quantopian/use-custom-business-day-for-session-loop-logic
MAINT: Use session index freq for loop logic.
2016-12-05 13:59:07 -05:00
Eddie Hebert 584ff4d67a MAINT: Use session index freq for loop logic.
Instead of maintaining a separate index into the sessions index, use the `.freq`
member of the sessions index for decrementing to the current session and finding
the previous session.
2016-12-05 13:08:49 -05:00
Joe JevnikandJoe Jevnik c1063eac26 BUG: fix blaze pipeline queries for asof_date 2016-12-01 14:35:59 -05:00
Eddie Hebert 1f71c8d068 ENH: Allow future chains to only use certain delivery months.
To support contracts such as `PL` which should roll from F->J->N->V, add the
ability to pass a predicate function to the ordered contract chain contstrution
which returns `True` if the contract is allowed in the chain.
2016-12-01 13:26:07 -05:00
Eddie Hebert d217b275fb BUG: Fix 1m history for volume rolls with adjustments.
Convert the end minute to the its session label before calling `_active_contract`,
otherwise the volume roll finder's attempt to use the session bar reader fails
due to a non-session label Timestamp.
2016-11-30 13:13:53 -05:00
Eddie Hebert c3004b2529 BUG: Support futures which do not roll month to month.
Fix multiple errors when attempting to generate rolls for futures which do not
roll month to month, e.g. the Eurodollar.

These errors were caused by logic that always incremented from contract to
contract by delivery month, with errors when the next contract was not part of
the quarterly roll chain and thus had not yet begun trading even though the
previous contract had autoclosed. Instead, filter out these contracts and only
allow contracts that have begun trading before the previous contract's autoclose.

This is in lieu of a more explicit specification of quarterly rolls.
2016-11-30 11:23:43 -05:00
Eddie HebertandGitHub 69b35a131a Merge pull request #1604 from quantopian/use-linked-list-for-contracts
MAINT: Use a doubly linked list for contract chain.
2016-11-30 06:54:28 -05:00
Eddie Hebert 518f3d1f4b MAINT: Use a doubly linked list for contract chain.
Instead of requiring the roll finder to juggle the indices into the ordered
contracts, use a doubly linked list where the nodes element is the contract
with members pointing to the previous and next contracts in the chain.

Besides improving legibility in the roll finder code, this change is on the path
to adding a predicate to exclude contracts from the chain, e.g. contracts in ED
which are not in the roll schedule.

Change test results for primary chain, since new implementaton does not stop at
contract in which has not yet started when constructing the chain.
2016-11-30 06:01:59 -05:00
Scott SandersonandGitHub e5c941e592 Merge pull request #1588 from quantopian/randc-built-in-factors
ENH: Add MACD, MA, and AnnVol as built in factors
2016-11-28 16:18:58 -05:00
Scott Sanderson 399bf3085c DOC: Docstring updates. 2016-11-28 15:29:36 -05:00
Scott Sanderson 9c05e5edfe MAINT: Tweaks/cleanups in technical.py.
- Use `expect_bounded` to check inputs.
- Add tests for expected failures from `MACDSignal`.
- Use `float64` instead of `float` in a few places.  This prevents
  diverging behavior on 32-bit systems.
- Docstring edits.
2016-11-28 13:02:40 -05:00
Scott Sanderson 48327266db MAINT: Put exponential_weights where it's used.
`math_utils` is mostly a shim around bottleneck imports.  If we need
this somewhere else, it probably belongs in `numpy_utils`.
2016-11-28 13:02:40 -05:00