MAINT: Use pandas instead of Delorean for trading date logic.

Standardize on pandas for date manipulation.
MAINT: Move market minute function into trading environment.

So that the market minutes are more accessible to other modules.
MAINT: Factored out update_position method

and changed Position default last_sale_date to None
ENH: Improve headline Sharpe risk calculations.

This could perhaps be labelled BUG, as well.

Change the Sharpe (and algorithm volatiilty) value used to compare
algorithms/backtests so that it is annualized and uses daily returns.

Previously, the Sharpe metric was using the same calculation style
as the fixed size periods, i.e. 3 Month, 6 Month, etc., which can
use the geometric mean when comparing against the risk free.

Change the Sharpe calculation to use the arithmetic mean differenc
against the risk free rate, using daily (non-compounded) values.

Also, use annualized mean returns.
ENH: Approximate stats for the first day of minute emission.

Volatility needs mulitple values to calculate the stddev,
so provide a day with zero returns to base the first day against.
TST: Update answer key with annualized sortino and information.

Include in the Excel answer sheet the sortino and information
metrics using annualized inputs.
ENH: Annualize sortino ratio.

Use annualized values for sortino, so that it is calculated using the
same units as sharpe, etc.
ENH: Annualize information ratio.

Use annualized values for information, so that it is calculated
using the same units as sharpe, etc.
TST: Add annualized alpha and beta to answer key.

Add a column that uses annualized mean returns as the inputs into
alpha and beta.
ENH: Use annualized returns for beta and alpha.

So that the units match the other risk calculations, also
use annualized returns for beat and alpha.

Update answer key to match values calculated on the first day.

Also, update performance tracker test so that the returns used
are fractional instead of > 1, so that the annualized numbers are
more in line with real world values.
Merge branch with annualized cumulative risk metrics.
BUG: Ensure compounded_log_returns set on first dt.
ENH: Add downsampling to BatchTransform.

So that with minute data, 2.5 orders of magnitude of data can
be cut, allowing for longer window_lenghts, when the daily
values are what are desired for a signal.
TST: Add logging of sim params for perf tracker tests.

These tests use the random simulation parameters, which is leading
to an intermittent failure.

We may want to consider removing the randomness, but in the meantime
the randomness is exposing a case where the cost basis is not the value
expected, so logging the sim parameter values to help track down what
parameters cause the failure.
MAINT: Use enviroment normalize_date instead of dt.replace

Continue path of removing scattered calls to dt.replace.
BUG: Mask of batch_transform columns to match keys in data parameter.

The underlying RollingPanel in batch_transform was always accumulating
all values to ever appear in data.

However, at any given algo time the desired return value is what the
current active sids are.

Instead, mask down to the sids that are passed in as the data parameter.
MAINT: Ensure that test sources only provide market days.

Instead of using all calendar days between start and end in test
sources, use the trading calendar for test sources.

Needed for an incoming refactoring of market open and close,
where the opens and closes are indexed by market days.
MAINT: Store values for market open and close in environment.

Instead of creating the market open and close mid-simulation,
calculate upfront the values for market open and close in a
DataFrame, so that they values can be looked up by date, as
viewed as series while investigating data issues.

One downside of this implementation is that the entire history
has open and close values calculated, even though the simulation
may only be a subset of the trade data on record.
Should consider moving the `times` property and other methods
that care about the start and end date of a simulation to
SimulationParameters or another like object.
BUG: Group and aggregate downsampling by trading day.

Otherwise, out of market events would result in a mishaped
panel.
Revert "MAINT: Store values for market open and close in environment."

This reverts commit 17b8980fb9dedf1818d6ad27e9b3c3f4b45853ea.

Backing out rigidness of market and close, while sorting out how
to handle events that are not on a day in the trading calendar.