quantopian/zipline — pull request #89 by ehebert (2013-02-18 22:07:32+00:00)
Title: Changes the API for recording variables.

Uses a method called 'record' that provides a key value,
instead of providing keys to extract from context.

The variables are stored internally to the algorithm in a dictionary,
and not just stared as a property of the algorithm.

Main intent behind this change is to make the API more user friendly,
since the previous recorded_variables relies on the value to be set
in the algorithms context/self, the hope is that only having to use
the `record` method means less moving pieces and a more understandable
API.

i.e., instead of:

```
def initialize(self):
recorded_variables('foo', bar')

def handle_data(self, data):
self.foo = 1
self.bar = 2
```

The API is now:

```
def initialize(self):
pass

def handle_data(self, data):
self.record('foo', 1)
self.record('bar', 2)
```