ENH: Make aliases filters, factors, and classifiers to give them their methods

This commit is contained in:
Joe Jevnik
2016-10-28 15:04:18 -04:00
parent 13c8139d45
commit c8e40a3736
8 changed files with 175 additions and 43 deletions
+1 -22
View File
@@ -20,14 +20,13 @@ from numpy import (
rot90,
where,
)
from numpy.random import randn, RandomState, seed
from numpy.random import randn, seed
from zipline.errors import UnknownRankMethod
from zipline.lib.labelarray import LabelArray
from zipline.lib.rank import masked_rankdata_2d
from zipline.lib.normalize import naive_grouped_rowwise_apply as grouped_apply
from zipline.pipeline import Classifier, Factor, Filter
from zipline.pipeline.term import Alias
from zipline.pipeline.factors import (
Returns,
RSI,
@@ -1059,23 +1058,3 @@ class TestWindowSafety(TestCase):
self.assertFalse(F().demean().window_safe)
self.assertFalse(F(window_safe=False).demean().window_safe)
self.assertTrue(F(window_safe=True).demean().window_safe)
class TestAlias(BasePipelineTestCase):
def test_alias_factor(self):
f = F()
a = Alias(f)
f_values = RandomState(5).randn(5, 5)
self.check_terms(
terms={
'f_alias': a,
},
expected={
'f_alias': f_values,
},
initial_workspace={f: f_values},
mask=self.build_mask(ones((5, 5))),
)