Commit 25fb8bff authored by jichao's avatar jichao

修复业绩时间去值遇到节假日情况

parent ef7cb0cd
......@@ -21,7 +21,7 @@ class DateCurve(DriftSolver):
def get_drift(self, day, risk: PortfoliosRisk):
last_re = rrs.get_last_one(max_date=day, risk=risk, effective=True)
result = self.diff_threshold - self.init_factor * (day - last_re['date']).days ** 4
return result
return max(0, result)
@component(bean_name='high-weight')
......
......@@ -22,16 +22,15 @@ class CurveDrift(BaseRebalanceSignal):
SignalType.CRISIS_ONE,
SignalType.CRISIS_TWO,
SignalType.MARKET_RIGHT,
SignalType.INIT,
SignalType.LOW_BUY
SignalType.INIT
]
def is_trigger(self, day, risk: PortfoliosRisk) -> bool:
last_re = rrs.get_last_one(max_date=day, risk=risk, effective=True)
if last_re is None or SignalType(last_re['type']) in self.exclude_last_type:
return False
# if last_re['date'] + relativedelta(days=120) <= day:
# return True
if last_re['date'] + relativedelta(days=120) <= day:
return True
hr_datums = self._datum.get_high_risk_datums(risk)
datum_ids = [x['id'] for x in hr_datums]
normal_portfolio = self._builder.get_portfolios(day, risk)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment