@@ -54,16 +54,15 @@ cdef class CSTopNSecurityValueHolder(CrossSectionValueHolder):
5454 self ._n = n
5555
5656 cdef _cal_impl(self ):
57- cdef SeriesValues raw_values = self ._inner.value
57+ cdef SeriesValues raw_values = self ._inner.value_all()
5858
5959 if self ._group:
60- self .cached = raw_values.top_n(self ._n, self ._group.value )
60+ self .cached = raw_values.top_n(self ._n, self ._group.value_all() )
6161 else :
6262 self .cached = raw_values.top_n(self ._n)
6363 self .updated = 1
6464
65- @property
66- def value (self ):
65+ cpdef value_all(self ):
6766 if self .updated:
6867 return self .cached
6968 else :
@@ -101,16 +100,15 @@ cdef class CSTopNPercentileSecurityValueHolder(CrossSectionValueHolder):
101100 self ._n = n
102101
103102 cdef _cal_impl(self ):
104- cdef SeriesValues raw_values = self ._inner.value
103+ cdef SeriesValues raw_values = self ._inner.value_all()
105104
106105 if self ._group:
107- self .cached = raw_values.top_n_percentile(self ._n, self ._group.value )
106+ self .cached = raw_values.top_n_percentile(self ._n, self ._group.value_all() )
108107 else :
109108 self .cached = raw_values.top_n_percentile(self ._n)
110109 self .updated = 1
111110
112- @property
113- def value (self ):
111+ cpdef value_all(self ):
114112 if self .updated:
115113 return self .cached
116114 else :
@@ -148,16 +146,15 @@ cdef class CSBottomNSecurityValueHolder(CrossSectionValueHolder):
148146 self ._n = n
149147
150148 cdef _cal_impl(self ):
151- cdef SeriesValues raw_values = self ._inner.value
149+ cdef SeriesValues raw_values = self ._inner.value_all()
152150
153151 if self ._group:
154- self .cached = raw_values.bottom_n(self ._n, self ._group.value )
152+ self .cached = raw_values.bottom_n(self ._n, self ._group.value_all() )
155153 else :
156154 self .cached = raw_values.bottom_n(self ._n)
157155 self .updated = 1
158156
159- @property
160- def value (self ):
157+ cpdef value_all(self ):
161158 if self .updated:
162159 return self .cached
163160 else :
@@ -195,16 +192,15 @@ cdef class CSBottomNPercentileSecurityValueHolder(CrossSectionValueHolder):
195192 self ._n = n
196193
197194 cdef _cal_impl(self ):
198- cdef SeriesValues raw_values = self ._inner.value
195+ cdef SeriesValues raw_values = self ._inner.value_all()
199196
200197 if self ._group:
201- self .cached = raw_values.bottom_n_percentile(self ._n, self ._group.value )
198+ self .cached = raw_values.bottom_n_percentile(self ._n, self ._group.value_all() )
202199 else :
203200 self .cached = raw_values.bottom_n_percentile(self ._n)
204201 self .updated = 1
205202
206- @property
207- def value (self ):
203+ cpdef value_all(self ):
208204 if self .updated:
209205 return self .cached
210206 else :
@@ -239,16 +235,15 @@ cdef class CSRankedSecurityValueHolder(CrossSectionValueHolder):
239235 super (CSRankedSecurityValueHolder, self ).__init__(innerValue, groups)
240236
241237 cdef _cal_impl(self ):
242- cdef SeriesValues raw_values = self ._inner.value
238+ cdef SeriesValues raw_values = self ._inner.value_all()
243239
244240 if self ._group:
245- self .cached = raw_values.rank(self ._group.value )
241+ self .cached = raw_values.rank(self ._group.value_all() )
246242 else :
247243 self .cached = raw_values.rank()
248244 self .updated = 1
249245
250- @property
251- def value (self ):
246+ cpdef value_all(self ):
252247 if self .updated:
253248 return self .cached
254249 else :
@@ -282,16 +277,15 @@ cdef class CSAverageSecurityValueHolder(CrossSectionValueHolder):
282277 super (CSAverageSecurityValueHolder, self ).__init__(innerValue, groups)
283278
284279 cdef _cal_impl(self ):
285- cdef SeriesValues raw_values = self ._inner.value
280+ cdef SeriesValues raw_values = self ._inner.value_all()
286281
287282 if self ._group:
288- self .cached = raw_values.mean(self ._group.value )
283+ self .cached = raw_values.mean(self ._group.value_all() )
289284 else :
290285 self .cached = raw_values.mean()
291286 self .updated = 1
292287
293- @property
294- def value (self ):
288+ cpdef value_all(self ):
295289 if self .updated:
296290 return self .cached
297291 else :
@@ -326,16 +320,15 @@ cdef class CSPercentileSecurityValueHolder(CrossSectionValueHolder):
326320 super (CSPercentileSecurityValueHolder, self ).__init__(innerValue, groups)
327321
328322 cdef _cal_impl(self ):
329- cdef SeriesValues raw_values = self ._inner.value
323+ cdef SeriesValues raw_values = self ._inner.value_all()
330324
331325 if self ._group:
332- self .cached = raw_values.percentile(self ._group.value )
326+ self .cached = raw_values.percentile(self ._group.value_all() )
333327 else :
334328 self .cached = raw_values.percentile()
335329 self .updated = 1
336330
337- @property
338- def value (self ):
331+ cpdef value_all(self ):
339332 if self .updated:
340333 return self .cached
341334 else :
@@ -368,17 +361,16 @@ cdef class CSAverageAdjustedSecurityValueHolder(CrossSectionValueHolder):
368361 def __init__ (self , innerValue , groups = None ):
369362 super (CSAverageAdjustedSecurityValueHolder, self ).__init__(innerValue, groups)
370363
371- @property
372- def value (self ):
364+ cpdef value_all(self ):
373365
374366 cdef SeriesValues raw_values
375367
376368 if self .updated:
377369 return self .cached
378370 else :
379- raw_values = self ._inner.value
371+ raw_values = self ._inner.value_all()
380372 if self ._group:
381- self .cached = raw_values - raw_values.mean(self ._group.value )
373+ self .cached = raw_values - raw_values.mean(self ._group.value_all() )
382374 else :
383375 self .cached = raw_values - raw_values.mean()
384376 self .updated = 1
@@ -391,9 +383,9 @@ cdef class CSAverageAdjustedSecurityValueHolder(CrossSectionValueHolder):
391383 if self .updated:
392384 return self .cached[name]
393385 else :
394- raw_values = self ._inner.value
386+ raw_values = self ._inner.value_all()
395387 if self ._group:
396- self .cached = raw_values - raw_values.mean(self ._group.value )
388+ self .cached = raw_values - raw_values.mean(self ._group.value_all() )
397389 else :
398390 self .cached = raw_values - raw_values.mean()
399391 self .updated = 1
@@ -419,16 +411,15 @@ cdef class CSZScoreSecurityValueHolder(CrossSectionValueHolder):
419411 super (CSZScoreSecurityValueHolder, self ).__init__(innerValue, groups)
420412
421413 cdef _cal_impl(self ):
422- cdef SeriesValues raw_values = self ._inner.value
414+ cdef SeriesValues raw_values = self ._inner.value_all()
423415
424416 if self ._group:
425- self .cached = raw_values.zscore(self ._group.value )
417+ self .cached = raw_values.zscore(self ._group.value_all() )
426418 else :
427419 self .cached = raw_values.zscore()
428420 self .updated = 1
429421
430- @property
431- def value (self ):
422+ cpdef value_all(self ):
432423 if self .updated:
433424 return self .cached
434425 else :
@@ -462,16 +453,15 @@ cdef class CSFillNASecurityValueHolder(CrossSectionValueHolder):
462453 super (CSFillNASecurityValueHolder, self ).__init__(innerValue, groups)
463454
464455 cdef _cal_impl(self ):
465- cdef SeriesValues raw_values = self ._inner.value
456+ cdef SeriesValues raw_values = self ._inner.value_all()
466457
467458 if self ._group:
468- self .cached = raw_values.fillna(self ._group.value )
459+ self .cached = raw_values.fillna(self ._group.value_all() )
469460 else :
470461 self .cached = raw_values.fillna()
471462 self .updated = 1
472463
473- @property
474- def value (self ):
464+ cpdef value_all(self ):
475465 if self .updated:
476466 return self .cached
477467 else :
@@ -524,17 +514,16 @@ cdef class CSResidueSecurityValueHolder(SecurityValueHolder):
524514 self ._right.push(data)
525515 self .updated = 0
526516
527- @property
528- def value (self ):
517+ cpdef value_all(self ):
529518
530519 cdef SeriesValues left_raw_values
531520 cdef SeriesValues right_raw_values
532521
533522 if self .updated:
534523 return self .cached
535524 else :
536- left_raw_values = self ._left.value
537- right_raw_values = self ._right.value
525+ left_raw_values = self ._left.value_all()
526+ right_raw_values = self ._right.value_all()
538527 self .cached = left_raw_values.res(right_raw_values)
539528 self .updated = 1
540529 return self .cached
@@ -547,8 +536,8 @@ cdef class CSResidueSecurityValueHolder(SecurityValueHolder):
547536 if self .updated:
548537 return self .cached[name]
549538 else :
550- left_raw_values = self ._left.value
551- right_raw_values = self ._right.value
539+ left_raw_values = self ._left.value_all()
540+ right_raw_values = self ._right.value_all()
552541 self .cached = left_raw_values.res(right_raw_values)
553542 self .updated = 1
554543 return self .cached[name]
0 commit comments