Commit 6ff2ca06 authored by jichao's avatar jichao

同步汇率

parent 099840e6
......@@ -22,23 +22,22 @@ 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)
normal_weight = round(sum([x[1] for x in normal_portfolio.items() if x[0] in datum_ids]), 2)
hold_portfolio = self._hold.get_portfolios_weight(day, risk)
hold_weight = round(sum([x[1] for x in hold_portfolio.items() if x[0] in datum_ids]), 2)
return abs(normal_weight - hold_weight) >= self._solver.get_drift(day, risk)
return normal_weight - hold_weight >= self._solver.get_drift(day, risk)
@property
def signal_type(self) -> SignalType:
......
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