diff --git a/zipline/protocol.py b/zipline/protocol.py index 52c7ecc2..99d33d39 100644 --- a/zipline/protocol.py +++ b/zipline/protocol.py @@ -50,5 +50,8 @@ class Event(object): def __eq__(self, other): return self.__dict__ == other.__dict__ + def __contains__(self, name): + return name in self.__dict__ + def __repr__(self): return "Event({0})".format(self.__dict__) diff --git a/zipline/utils/factory.py b/zipline/utils/factory.py index c518d483..9ed25835 100644 --- a/zipline/utils/factory.py +++ b/zipline/utils/factory.py @@ -30,7 +30,7 @@ from datetime import datetime, timedelta import zipline.finance.risk as risk from zipline.utils.date_utils import tuple_to_date -from zipline.utils.protocol_utils import ndict +from zipline.protocol import Event from zipline.sources import (SpecificEquityTrades, DataFrameSource, DataPanelSource) @@ -144,7 +144,7 @@ def create_trade_history(sid, prices, amounts, interval, trading_calendar, def create_txn(sid, price, amount, datetime): - txn = ndict({ + txn = Event({ 'sid': sid, 'amount': amount, 'dt': datetime,