init
This commit is contained in:
27
hts/HTS.py
27
hts/HTS.py
@@ -502,6 +502,7 @@ class HTS:
|
||||
close.append(result["close"][len(result["close"])-1])
|
||||
high = [max(result["high"][i:i+window]) for i in range(0, size, window)]
|
||||
low = [min(result["low"][i:i+window]) for i in range(0, size, window)]
|
||||
vol = [sum(result["vol"][i:i+window]) for i in range(0, size, window)]
|
||||
|
||||
upper, lower = [], []
|
||||
for i in range(len(upper_df)):
|
||||
@@ -515,9 +516,8 @@ class HTS:
|
||||
point_temp = [result["time"][i] for i in range(size) if i % window == 0]
|
||||
upper_temp = [upper[i] for i in range(size) if i % window == 0]
|
||||
lower_temp = [lower[i] for i in range(size) if i % window == 0]
|
||||
vol_temp = [sum(result["vol"][i:window]) for i in range(0, size, window)]
|
||||
|
||||
temp = {"Open": open, "High": high, "Low": low, "Close": close, "Volume": vol_temp, "Date": point_temp}
|
||||
temp = {"Open": open, "High": high, "Low": low, "Close": close, "Volume": vol, "Date": point_temp}
|
||||
data = pd.DataFrame(temp)
|
||||
df_final_time = pd.DatetimeIndex(point_temp)
|
||||
data.index = df_final_time
|
||||
@@ -554,31 +554,16 @@ class HTS:
|
||||
bolinger_lower = go.Scatter(x=data['Date'], y=lower, name="lower", line_color='#8B4513')
|
||||
candle_stick = go.Candlestick(x=data['Date'], open=data['Open'], high=data['High'], low=data['Low'], close=data['Close'], increasing_line_color='red', decreasing_line_color='blue')
|
||||
|
||||
"""
|
||||
# 그래프를 그린다.
|
||||
fig = go.Figure(data=[candle_stick, bolinger_upper, bolinger_lower, buy_check, sell_check])
|
||||
fig.update_layout(title=given_day + "_2x")
|
||||
"""
|
||||
|
||||
volume_bar = go.Bar(x=data['Date'], y=data['Volume'])
|
||||
fig = ms.make_subplots(rows=2, cols=1, shared_xaxes=True, vertical_spacing=0.02)
|
||||
fig.add_trace(candle_stick, row=1, col=1)
|
||||
fig.add_trace(volume_bar, row=2, col=1)
|
||||
fig.update_layout(
|
||||
title=given_day + "_2x",
|
||||
yaxis1_title='price',
|
||||
yaxis2_title='Volume',
|
||||
xaxis2_title='periods',
|
||||
xaxis1_rangeslider_visible=False,
|
||||
xaxis2_rangeslider_visible=True,
|
||||
)
|
||||
|
||||
fig.show()
|
||||
return
|
||||
|
||||
def checkTransaction(self, data, lower):
|
||||
low = data["Low"]
|
||||
close = data["Close"]
|
||||
vol = data["Volume"]
|
||||
|
||||
# 살 시점인지 체크
|
||||
# 볼린저밴드 하단에 연속으로 같은 가격이 왔을 때,
|
||||
@@ -589,8 +574,10 @@ class HTS:
|
||||
for j in range(i-3, i):
|
||||
if (low[j] < lower[j]) and (low[i] < lower[i] and low[j] == low[i]):
|
||||
#buy_line[i] = low[i]
|
||||
check = True
|
||||
break
|
||||
# 이전보다 거래량이 높아야 산다.
|
||||
if vol[i-1] < vol[i]:
|
||||
check = True
|
||||
break
|
||||
if check and i < len(lower) - 1:
|
||||
buy_line[i+1] = low[i] + 5
|
||||
check = False
|
||||
|
||||
Reference in New Issue
Block a user