Skip to content

Commit ac9d841

Browse files
author
Scott Sanderson
authored
Merge pull request #1508 from quantopian/forward-window-safety-in-demean
BUG: F.window_safe implies f.demean().window_safe.
2 parents ca5f98b + 49cd8e1 commit ac9d841

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

tests/pipeline/test_factor.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1047,3 +1047,14 @@ def test_demean(self):
10471047
def test_zscore(self):
10481048
r = F().zscore().short_repr()
10491049
self.assertEqual(r, "GroupedRowTransform('zscore')")
1050+
1051+
1052+
class TestWindowSafety(TestCase):
1053+
1054+
def test_zscore_is_window_safe(self):
1055+
self.assertTrue(F().zscore().window_safe)
1056+
1057+
def test_demean_is_window_safe_if_input_is_window_safe(self):
1058+
self.assertFalse(F().demean().window_safe)
1059+
self.assertFalse(F(window_safe=False).demean().window_safe)
1060+
self.assertTrue(F(window_safe=True).demean().window_safe)

zipline/pipeline/factors/factor.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -509,6 +509,7 @@ def demean(self, mask=NotSpecified, groupby=NotSpecified):
509509
groupby=groupby,
510510
dtype=self.dtype,
511511
missing_value=self.missing_value,
512+
window_safe=self.window_safe,
512513
mask=mask,
513514
)
514515

0 commit comments

Comments
 (0)