init
This commit is contained in:
@@ -17,6 +17,7 @@ from sklearn.preprocessing import StandardScaler, MinMaxScaler
|
||||
from stock.analysis.AnalyzerSqlite import AnalyzerSqlite
|
||||
from hts.BuySellChecker import BuySellChecker
|
||||
from hts.HTS import HTS
|
||||
from stock.util.SlackBot import SlackBot
|
||||
|
||||
|
||||
class Bithumb_minute(HTS):
|
||||
@@ -27,9 +28,14 @@ class Bithumb_minute(HTS):
|
||||
binance = None
|
||||
TODAY = None
|
||||
MAX_BUY_PRICE = None
|
||||
slackBot = None
|
||||
stock_code = None
|
||||
|
||||
def __init__(self, RESOURCE_PATH, today):
|
||||
super().__init__(RESOURCE_PATH)
|
||||
self.slackBot = SlackBot()
|
||||
self.stock_code = {"XRP": "리플"}
|
||||
|
||||
self.RESOURCE_PATH = RESOURCE_PATH
|
||||
|
||||
con_key = "946dd0b0e6f8ad411144cd33f09518d3" # 본인의 Connect Key를 입력한다.
|
||||
@@ -527,6 +533,8 @@ class Bithumb_minute(HTS):
|
||||
for i in range(len(df)):
|
||||
order = (df['order0'][i], df['order1'][i], df['order2'][i], df['order3'][i])
|
||||
cancel = self.bithumb.cancel_order(order)
|
||||
# slackbot에 메시지를 보냄
|
||||
self.slackBot.post_to_slack(ticker, self.stock_code[ticker], "CANCEL", -1, -1)
|
||||
|
||||
log_df = log_df.loc[(log_df.index > now)]
|
||||
if len(log_df) == 0:
|
||||
@@ -628,7 +636,12 @@ class Bithumb_minute(HTS):
|
||||
balance = tmp[2]
|
||||
#count = round((balance * (bsLine['buy_weight'][len(bsLine['buy_weight']) - 1] / 100)) / bsLine['buy'][len(bsLine['buy']) - 1], 2)
|
||||
count = round(self.MAX_BUY_PRICE / bsLine['buy'][len(bsLine['buy']) - 1], 2)
|
||||
|
||||
# 매수를 요청한다.
|
||||
order = self.bithumb.buy_limit_order(ticker, bsLine['buy'][len(bsLine['buy']) - 1], count)
|
||||
# slackbot에 메시지를 보냄
|
||||
self.slackBot.post_to_slack(ticker, self.stock_code[ticker], "BUY", bsLine['buy'][len(bsLine['buy']) - 1], count)
|
||||
|
||||
# order: ('bid', 'BTC', 'C0101000000322993432', 'KRW')
|
||||
if len(stock1['close']) > 0:
|
||||
print(ticker, "/", datetime.now().strftime('%Y-%m-%d %H:%M:%S'), "/", stock1['close'][len(stock1['close']) - 1], "/ BUY / ", stock2['slow_k'][len(stock2['slow_k']) - 1], "/", stock1['slow_k'][len(stock1['slow_k']) - 1], "/", bsLine['buy'][len(bsLine['buy']) - 1], "/", count)
|
||||
@@ -663,7 +676,12 @@ class Bithumb_minute(HTS):
|
||||
if tmp is None:
|
||||
return
|
||||
count = tmp[0]
|
||||
|
||||
# 매도를 요청한다.
|
||||
order = self.bithumb.sell_limit_order(ticker, bsLine['sell'][len(bsLine['sell'])-1], count)
|
||||
# slackbot에 메시지를 보냄
|
||||
self.slackBot.post_to_slack(ticker, self.stock_code[ticker], "SELL", bsLine['sell'][len(bsLine['sell']) - 1], count)
|
||||
|
||||
if len(order) > 2 and len(stock1['close'])>0:
|
||||
print(ticker, "/", datetime.now().strftime('%Y-%m-%d %H:%M:%S'), "/", stock1['close'][len(stock1['close']) - 1], "/ SELL / ", stock2['slow_k'][len(stock2['slow_k']) - 1], "/", stock1['slow_k'][len(stock1['slow_k']) - 1], "/", bsLine['sell'][len(bsLine['sell']) - 1], "/", count)
|
||||
value = {"type": "SELL","order0": order[0], "order1": order[1], "order2": order[2], "order3": order[3], "slow_k_30": stock2['slow_k'][len(stock2['slow_k']) - 1], "slow_k_5": stock1['slow_k'][len(stock1['slow_k']) - 1], "price": bsLine['sell'][len(bsLine['sell']) - 1], "count": count}
|
||||
|
||||
@@ -9,6 +9,7 @@ from hts.OrderType import OrderType
|
||||
|
||||
from hts.BuySellChecker import BuySellChecker
|
||||
from hts.OrderChecker import OrderChecker
|
||||
from stock.util.SlackBot import SlackBot
|
||||
|
||||
class HTS_DAILY (HTS):
|
||||
|
||||
@@ -22,6 +23,7 @@ class HTS_DAILY (HTS):
|
||||
|
||||
def __init__(self, RESOURCE_PATH):
|
||||
super().__init__(RESOURCE_PATH)
|
||||
self.slackBot = SlackBot()
|
||||
|
||||
self.RESOURCE_PATH = RESOURCE_PATH
|
||||
self.dailyStatus = DailyStatus(RESOURCE_PATH)
|
||||
@@ -132,6 +134,8 @@ class HTS_DAILY (HTS):
|
||||
|
||||
# 매수를 주문한다.
|
||||
orderNum = self.requestOrder(OrderType.buy, stock_code, buy_count, bs_buy_price)
|
||||
# slackbot에 메시지를 보냄
|
||||
self.slackBot.post_to_slack(stock_code, stock_name, "BUY", bsLine['buy'][len(bsLine['buy']) - 1], buy_count)
|
||||
self.orderChecker.add(today, stock_code, 1, buy_count, bs_buy_price, orderNum)
|
||||
|
||||
# 로그 출력
|
||||
@@ -143,6 +147,8 @@ class HTS_DAILY (HTS):
|
||||
if bsLine['sell'][last_index] > 0:
|
||||
bs_sell_price = bsLine['sell'][last_index]
|
||||
orderNum = self.getSellingPrice(THIS_TIME, stock_code, bs_sell_price)
|
||||
# slackbot에 메시지를 보냄
|
||||
self.slackBot.post_to_slack(stock_code, stock_name, "SELL", bsLine['sell'][len(bsLine['sell']) - 1], -1)
|
||||
self.orderChecker.delete(today, stock_code)
|
||||
|
||||
# 로그 출력
|
||||
|
||||
@@ -15,8 +15,9 @@ class SlackBot:
|
||||
|
||||
return
|
||||
|
||||
def post_to_slack(self, this_time, stock_code, stock_name, type, price, count):
|
||||
def post_to_slack(self, stock_code, stock_name, type, price, count):
|
||||
try:
|
||||
this_time = datetime.now()
|
||||
text = "DATE TIME:" + this_time.strftime(
|
||||
'%Y-%m-%d %H:%M:%S') + ", " + "stock_code:" + stock_code + ", " + "stock_name:" + stock_name + ", " + "type:" + type + ", " + "price:" + str(
|
||||
price) + ", " + "count:" + str(count)
|
||||
|
||||
Reference in New Issue
Block a user