분류 전체보기(26)
-
코인 자동매매 봇 (코이너) — 프로젝트 세팅과 첫 실행
바이브코딩으로 코인 자동매매 프로그램을 만들어봤다. Claude Code와 대화하면서 NestJS 기반의 봇을 처음부터 구축한 과정을 기록한다.이 시리즈는 여러편으로 나눠서 작성할 예정이다. 이번 편에서는 프로젝트 초기 세팅부터 봇이 처음 실행되기까지의 과정을 다룬다.참고로 COINER는 내가 지은 이름이다. 나노바나나한테 부탁했더니 저런 이미지를 가져왔다..목표 설정세 가지 조건을 만족하는 자동매매 봇을 만들고 싶었다.외부 유료 API 없이 로컬 LLM으로 매매 판단코드를 직접 짜지 않는 바이브코딩 방식으로 개발목표 수익률 달성 시 자동 중단Claude Code에 이 조건을 전달하자 5단계 개발 로드맵이 나왔다. 거래소는 Upbit, LLM은 이미 설치되어 있던 Ollama, 전략은 매 5분봉마다 LL..
2026.02.23 -
최댓값과 최솟값
https://school.programmers.co.kr/learn/courses/30/lessons/12939?language=kotlin 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krLv2문자열에서 최댓값과 최솟값을 구하는 문제이게 왜 레벨2?? class Solution { fun solution(s: String): String { val numbers = s.split(" ").map { it.toInt() } return "${numbers.minOrNull() ?: 0} ${numbers.maxOrNull() ?: 0}" }} 풀이풀이 할것도 없다... 코틀린..
2026.02.02 -
HashMap의 내부 동작 원리와 시간 복잡도
HashMap이 뭔지 확실히 알았다BST를 공부하다가 HashMap을 비교하는 질문이 나와서 공부하게 됐다.Key-Value 저장 방식전화번호부를 떠올려보면 이해하기 쉽다.이름(Key) → 전화번호(Value)"철수" → "010-1234-5678""영희" → "010-9876-5432""민수" → "010-5555-6666"사물함에 비유해봤다:사물함 번호만 알면 바로 찾을 수 있다다른 사물함을 하나씩 열어볼 필요가 없다해시 함수라는 게 핵심이었다해시 함수의 역할을 이해했다"Key를 숫자로 바꾸는 마법"Key 해시 함수 숫자(인덱스)"철수" ─────────→ 3"영희" ─────────→ 7"민수" ─────────→ ..
2026.02.02 -
이진 탐색 트리(BST)와 균형 이진 탐색 트리
트리(Tree)부터 이해하기면접 준비하면서 BST를 공부하게 됐는데, 트리가 뭔지는 알고 있었지만 기초개념부터 정리했다.트리가 뭔지?가계도를 떠올려보니 이해가 쉬웠다. 할아버지 / \ 아버지 삼촌 / \ / \나 동생 사촌1 사촌2트리 용어들을 정리해봤다:루트(root): 최상위 노드 (할아버지)부모(parent): 바로 위 노드자식(child): 바로 아래 노드잎(leaf): 자식이 없는 노드높이(height): 루트에서 가장 먼 잎까지의 거리이진 트리는 뭔가?이진 = 두 갈래. 각 노드가 최대 2개의 자식만 가질 수 있다. 10 / \ 5 15 / \3 7이진 탐색 트리(BST) 공부하기BST의 핵심 규칙을 알게 됐다왼쪽 이..
2026.02.02 -
웹 서버 동작 원리
시작하며나는 컴퓨터공학을 전공하지 않았다. 그래서 CS 지식이 부족한 편인데, 이번 기회에 웹 서버 어플리케이션의 작동 방식을 제대로 정리해보기로 했다. 특히 내가 주로 사용하는 NestJS와, 많은 기업에서 사용하는 Spring Boot의 차이를 깊이 이해하고 싶었다.HTTP나 라우팅 같은 개념은 이미 알고 있었지만, 왜 Node.js는 싱글 스레드인데 동시에 여러 요청을 처리할 수 있는지, Spring Boot는 왜 멀티 스레드를 사용하는지에 대한 근본적인 이해가 부족했다.이 글에서는 그 의문을 해결하는 과정에서 배운 CS 기초 개념들을 정리했다.1. 프로세스와 스레드프로세스란?실행 중인 프로그램이다. 디스크에 저장된 프로그램 파일을 실행하면 메모리에 로드되는데, 이게 프로세스다.[디스크의 프로그램]..
2026.01.29 -
Kotlin + Spring Boot 게시판 만들기
프로젝트 시작Kotlin과 Spring Boot를 함께 사용해서 간단한 게시판을 만들어보기로 했다. 기존에 Java로 Spring Boot를 써본 적은 있지만, Kotlin은 처음이라 새롭게 배우는 기분이었다.개발 환경Spring Boot 4.0.1Kotlin 2.2.21Gradle (Kotlin DSL)MySQLJDK 21Gradle 설정부터 시작했다build.gradle.kts 파일을 작성하면서 Kotlin DSL의 문법에 적응해야 했다. Java와 다르게 문자열 처리나 함수 호출 방식이 조금 달랐다.plugins { kotlin("jvm") version "2.2.21" kotlin("plugin.spring") version "2.2.21" kotlin("plugin.jpa") v..
2026.01.22