This commit is contained in:
2026-09-07 14:18:23 +09:00
parent 5882f07e42
commit 5e90ee39bc
3 changed files with 13 additions and 7 deletions
@@ -242,7 +242,7 @@ object AutoTradingManager {
TradingLogStore.addNotice("SYSTEM", "LIMIT", "최대 보유 종목 도달로 신규 매수 일시 중단")
addToReanalysis(RankingStock(mksc_shrn_iscd = stockCode,hts_kor_isnm = stockName))
TradingLogStore.addWatchLog(decision,"WATCH","매수 실패 : 최대 보유 종목 도달로 신규 매수 일시 중단 => 재분석 대기열에 추가")
} else if (KisSession.isAvailBuyTime(LocalTime.now())){
} else if (KisSession.isAvailBuyTime(LocalTime.now()) || hasCode){
println("basePrice : $basePrice, oneTickLowerPrice : $oneTickLowerPrice, finalPrice : $finalPrice hasStocks : ${stockCode.contains(stockCode)}" )
var realOrderQty = orderQty
KisTradeService.postOrder(stockCode, realOrderQty, finalPrice.toLong().toString(), isBuy = true)
@@ -1028,7 +1028,7 @@ object AutoTradingManager {
while (iterator.hasNext()) {
totalCount--
val stock = iterator.next()
if (KisSession.isAvailBuyTime(now)) {
if (KisSession.isMarketOpenTime(now)) {
if (BLACKLISTEDSTOCKCODES.contains(stock.code)) {
println("❌ 차단 처리된 주식 : ${stock.name}")
} else {
@@ -1181,8 +1181,8 @@ object AutoTradingManager {
val tempAnalyzer = TechnicalAnalyzer().apply { this.daily = dailyData }
// 1. 변동성 기반 수익률 검증 (2% 이상 열려있는가?)
println("(dailyData.size * 0.8).toInt() ${(dailyData.size * 0.8).toInt()}")
val volatility = tempAnalyzer.calculateVolatilityForecast(dailyData, (dailyData.size * 0.8).toInt())
println("(dailyData.size * 0.8).toInt() ${(dailyData.size * 0.3).toInt()}")
val volatility = tempAnalyzer.calculateVolatilityForecast(dailyData, 20)
val expectedProfitRate = ((volatility.realisticHigh - currentPrice) / currentPrice) * 100.0
// 2. 일봉 기준 반등 주기 통계 추출 (일주일 내 승부 가능한가?)
@@ -1212,7 +1212,7 @@ object AutoTradingManager {
if (dropPrediction != null) {
// 💡 [방어 로직 1] 아직 바닥까지 한참 남았다면 지하실 방지
if (dropPrediction.remainingDropRate < -2.0 && !dropPrediction.isBottomZone) {
if (dropPrediction.remainingDropRate < -1.0 && !dropPrediction.isBottomZone) {
print("-> [${stock.name}] 지하실 주의 (현재 ${"%.1f".format(dropPrediction.currentDropRate)}% 하락, 추가 하락 위험) | ")
return@withTimeout
}