in src/backend/domain/services/steps/risk_limit.py [0:0]
def applyAction(self, symbol, rule, action):
rule.triggered = True
if symbol:
symbol_details = self.getSymbolDetails(symbol)
if rule.scope == Scope.Symbol:
if action == 1:
symbol_details.TradingSuspended = True
elif action == 2:
symbol_details.BetSize = self.BetSize * rule.reduceCapitalAndLimitsRatio
symbol_details.InstrumentGrossLimit *= rule.reduceCapitalAndLimitsRatio
elif rule.scope == Scope.Strategy:
if action == 1:
self.TradingSuspended = True
elif action == 2:
self.GrossLimit *= rule.reduceCapitalAndLimitsRatio
self.InstrumentGrossLimit *= rule.reduceCapitalAndLimitsRatio
self.NOPLimit *= rule.reduceCapitalAndLimitsRatio
self.BetSize *= rule.reduceCapitalAndLimitsRatio