This commit is contained in:
dosangyoon
2022-08-17 04:25:58 +09:00
parent 19644cd7bc
commit df52c7bd8b
4 changed files with 54 additions and 34 deletions

View File

@@ -179,8 +179,10 @@ if __name__ == "__main__":
# to check bying
stock_codes = {
#"252670": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811', '20220812'],
"122630": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811', '20220812'],
"252670": ['20220801', '20220802', '20220803', '20220804',
'20220805', '20220808', '20220809', '20220810', '20220811',
'20220812', '20220816'],
#"122630": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811', '20220812'],
}
method = "rule" # "rule", "ml", "answer"

View File

@@ -197,28 +197,28 @@ class BuySellChecker:
# 매수 분석
param = 1
if (data["macd"][i] < -1.741263068 and
data["diff_avg27"][i] < -0.299978341*param and
data["diff_avg3_avg27"][i] < -3.600823045 * param and
data["diff_avg3_avg54"][i] < -6.423001949 * param and
if (data["macd"][i] < -3.345900723 and data["macds"][i] < -2.6891156 and
data["diff_avg27"][i] < -0.533890436*param and
data["diff_avg3_avg27"][i] < -8.13705767 * param and
data["diff_avg3_avg54"][i] < -11.87996492 * param and
data["diff_avg6_avg27"][i] < -2.889322071 * param and
data["diff_avg6_avg54"][i] < -5.711500975*param and
data["diff_avg6_avg27"][i] < -6.800010317 * param and
data["diff_avg6_avg54"][i] < -10.54291757*param and
data["diff_avg9_avg27"][i] < -2.216807451 * param and
data["diff_avg9_avg54"][i] < -5.038986355*param and
data["diff_avg9_avg27"][i] < -5.492365625 * param and
data["diff_avg9_avg54"][i] < -9.235272877*param and
data["diff_avg12_avg27"][i] < -1.70023825 * param and
data["diff_avg12_avg54"][i] < -4.522417154*param and
data["diff_avg12_avg27"][i] < -4.243719695 * param and
data["diff_avg12_avg54"][i] < -7.986626947*param and
data["diff_change_lead1"][i] < -6.425438596 * param and
data["diff_open_lead1"][i] < -7.302631579*param and
data["diff_close_lead1"][i] < -7.711988304*param and
data["diff_high_lead1"][i] < -4.875730994*param and
data["diff_low_lead1"][i] < -11.74707602*param and
data["diff_change_lead1"][i] < -11.86803621 * param and
data["diff_open_lead1"][i] < -14.51775766*param and
data["diff_close_lead1"][i] < -14.69185237*param and
data["diff_high_lead1"][i] < -11.33530641*param and
data["diff_low_lead1"][i] < -18.93976323*param and
data["diff_upper_lower"][i] < 19.2091055*param + 11.75882982/3 and
data["diff_change_base"][i] < -2.616959064*param
27.50548619 - 20.56512876/3 < data["diff_upper_lower"][i] < 27.50548619*param + 20.56512876
#data["diff_change_base"][i] < -5.250696379*param
):
buy = int((data["open"][i] + data["close"][i]) / 2)

Binary file not shown.

View File

@@ -289,8 +289,9 @@ class LabelMaker (HTS):
bsLine['buy'] = [-1 for i in range(size)]
bsLine['sell'] = [-1 for i in range(size)]
for i in range(size):
self.buySellChecker.write(outFp, data, i)
outFp.flush()
if outFp is not None:
self.buySellChecker.write(outFp, data, i)
outFp.flush()
if labels[i] == 1:
bsLine['sell'][i] = closes[i]
if labels[i] == 2:
@@ -313,23 +314,40 @@ if __name__ == "__main__":
UPDATE_MODE = False
if UPDATE_MODE:
stock_code = "122630"
ymd = '20220812'
"""
# 매일 입력하면서 정답 셋 만들기
stock_code = "252670"
ymd = '20220730'
labelMaker.clearLabel(db_filename, stock_code, ymd)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0910", 2)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0911", 2)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0912", 2)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0915", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0916", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0948", 2)
"""
labelMaker.makeLabel(db_filename, stock_code, ymd, "0933", 2)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0934", 2)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0935", 2)
labelMaker.makeLabel(db_filename, stock_code, ymd, "0936", 2)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1004", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1005", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1006", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1007", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1412", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1413", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1414", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1415", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1416", 1)
labelMaker.makeLabel(db_filename, stock_code, ymd, "1417", 1)
labelMaker.showLabels(stock_code, ymd)
else:
stock_codes = {
"252670": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811', '20220812'],
"122630": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811', '20220812'],
"252670": ['20220701', '20220704', '20220705', '20220706', '20220707',
'20220708', '20220711', '20220712', '20220713', '20220714',
'20220715', '20220718', '20220719', '20220720', '20220721',
'20220722', '20220725', '20220726', '20220727', '20220728',
'20220729', '20220801', '20220802', '20220803', '20220804',
'20220805', '20220808', '20220809', '20220810', '20220811',
'20220812', '20220816'],
#"122630": ['20220801', '20220802', '20220803', '20220804', '20220805', '20220808', '20220809', '20220810', '20220811', '20220812'],
}
view = True
@@ -342,7 +360,7 @@ if __name__ == "__main__":
if view:
labelMaker.showLabels(stock_code, ymd, outFp)
else:
stock_codes = ["252670", "122630"]
# 종목에 대해서 주어진 일자에 대해서 통계치 추출하기
for stock_code in stock_codes:
ymds = labelMaker.getDate(stock_code)
for ymd in ymds: