= 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