def getValues(self, indicator: Indicator, bar: BarData, signal: Signal) -> Map: values = {} windonwSize = 6 if indicator.count >= windonwSize: rsi = indicator.rsi(windonwSize) values["RSI6"] = rsi else: values["RSI6"] = 50 windonwSize = 12 if indicator.count >= windonwSize: rsi = indicator.rsi(windonwSize) values["RSI12"] = rsi else: values["RSI12"] = 50 return values
def getValues(self, indicator: Indicator,bar:BarData,signal:Signal) -> Map: values = {} count = 30 fast_rsi = indicator.rsi(n=3, array=True) slow_rsi = indicator.rsi(n=9, array=True) ##金叉出现 if (fast_rsi[-1] >= slow_rsi[-1] and fast_rsi[-2] <= slow_rsi[-2]): if not signal.hasBuy: signal.buy = True ##死叉出现 if (fast_rsi[-1] <= slow_rsi[-1] and fast_rsi[-2] >= slow_rsi[-2]): if signal.hasBuy: signal.sell = True return values