= 70: return "SELL" elif last_rsi <= 30: return "BUY" else: return "STAY" def plus(a, b) : return a + b"> = 70: return "SELL" elif last_rsi <= 30: return "BUY" else: return "STAY" def plus(a, b) : return a + b"> = 70: return "SELL" elif last_rsi <= 30: return "BUY" else: return "STAY" def plus(a, b) : return a + b">
def calculate_rsi(data, period=14):
    delta = data.diff(1)
    gain = delta.where(delta > 0, 0)
    loss = -delta.where(delta < 0, 0)

    avg_gain = gain.rolling(window=period).mean()
    avg_loss = loss.rolling(window=period).mean()

    rs = avg_gain / avg_loss
    rsi = 100 - (100 / (1 + rs))
    return rsi

def generate_trade_signal(data):
    global trade_signal

    # 입력 데이터를 DataFrame으로 변환
    df = pd.DataFrame(data, columns=["Open", "Close", "High", "Low", "Volume"])

    # 종가(Close)를 기반으로 RSI 계산
    rsi = calculate_rsi(df["Close"])

    # 새로운 데이터의 RSI 값
    last_rsi = rsi.iloc[-1]

    # RSI 기준에 따라 매매 신호 생성
    if last_rsi >= 70:
        return "SELL"
    elif last_rsi <= 30:
        return "BUY"
    else:
        return "STAY"

def plus(a, b) :
    return a + b

data.diff(1)

delta.where(delta > 0, 0)

gain.rolling(window=period).mean()

pd.DataFrame(data, columns=["Open", "Close", "High", "Low", "Volume"])

가이드용 사전 설정된 블록 생성 시 참고

도구 상자  |  Blockly  |  Google for Developers

xml로 변경해서 추가하기?

차트

npm install react-financial-charts d3-format d3-time-format

React-financial-charts 사용 설명서