본문 바로가기

반응형

Blog for Programming

(158)
[FLOWBIT] 비트코인 자동거래 시스템에서 예측 가격 제공 서비스로 전환! ✨ 1. 개요 비트코인 자동거래 시스템을 만들기 위해 AI 모델을 학습시켰다. 이렇게 모델을 학습 시키고 나니 해당 정보를 사용자들에게 제공하는 것이 어떨까? 라는 생각이 들었다. 해당 모델의 값을 매일 업데이트하여 USER에게 제공해주는 서버를 개발하다면 스스로도 공부가 될 것 같았다. 그래서 팀을 모아 내 인생 첫 사이드 프로젝트인 FLOWBIT를 개발하기 시작하였다! 2. 본문 - 웹 서버 구현 비트코인 가격 예측 모델을 학습한 후 이를 배포할 서버가 필요했다. 그리고 Python 기반의 서버 프레임워크를 원했다. 마침 4학년 1학기 때 배운 Flask를 활용해보고 싶기도 하고 예측 가격만을 도츨하는 가벼운 기능이었기에 Flask를 최종적으로 선택하였다. USER 서버 같은 경우 Spring boot로..
[2023 K-PaaS활용 디지털 사회혁신 서비스 개발, 아이디어 공모전 특별상 수상] 특별상 수상 후기! 1. 개요 매일 지겹도록 비트코인 거래소에서 오늘의 가격을 확인하고 매수와 매도를 반복했다 단순하게 이 작업을 자동화할 수 있을 것 같다는 생각에 2022년 초에 간단한 트레이딩알고리즘으로 비트코인 자동 거래 시스템을 개발하였다. 그 후 2023년 해당 시스템을 조금 더 강화시키고 싶어 볼린저밴드 알고리즘을 사용한 트레이딩 시스템을 개발하였다. 수익률은 약 17%로, '수익'이 발생되었다. 그렇게 1학기 캡스톤 디자인 평가가 끝나고 방학이 되었다. 끊임없이 AI와 관련된 기사를 반 강제적으로 봐서 그런지 비트코인 예측에 관심이 가기 시작했다. 여러 논문들을 찾아 보고 도전해볼만한 분야라는 생각이 들어 예측 모델을 디자인해보았다. 학습결과가 괜찮게 나왔다. 백엔드 개발자를 꿈꾸던 나는 자연스럽게 이 모델을..
[programmers] 250136번 - PCCP 기출문제 2번(BFS, PCCP 기출문제) 1. 문제 및 예제 Level 2 문제들을 쭉 풀어가던 도중 PCCP 기출문제 두 문제가 공개되어 바로 풀어보았다. BFS 알고리즘이 핵심이지만, 더 빠른 알고리즘을 위해 범위를 저장하는 부분이 필요하였다. https://school.programmers.co.kr/learn/courses/30/lessons/250136 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이과정 시간 복잡도 때문에 BFS로는 풀 수 없다. O(N^3)이기 때문에 다른 방법을 생각해야 했다. 내가 생각한 방법은 다음과 같다. 아래와 같은 입력이 주어졌다고 가정하자. 이렇..
[멋쟁이사자처럼 지원페이지] #4 업데이트 진행 (MSA 구조 개요) 1. 서론 하나의 시스템을 운영해보고 이를 점차 발전시켜나가는 경험을 위해 기존에 운영하던 강남대학교 멋쟁이사자처럼 지원페이지의 단점을 보완하고 업데이트를 진행하고자 하였다. 첫 버전을 배포하고 느낀 가장 큰 문제점은 유지보수이다. 첫 서비스를 배포하고 여러 오류가 채널톡으로 들어왔을 때 너무 힘들었다. 하나의 작은 오류도 다시 서비스를 빌드해야하기에 배포가 신경이 많이 쓰였던 것 같았다. 매일 매일 기술블로그들을 구경하면서 본 구조 중 하나는 바로 MSA 구조였다. 방학기간동안 해당 구조를 공부하고 이를 우리 지원페이지에 적용하려 지금까지 노력하고 있다. 전체적인 구조는 다음과 같다. 2. 본론 - Rabbit-MQ 내가 맡은 서비스는 apply-service와 config-service 그리고 Mes..
[2023 오픈데이터포럼 해커톤] 우수상 수상 후기! 1. 개요 행정안전부, 한국지능정보사회진흥원, 오픈데이터포럼, 걸스인텍에서 진행하는 2023 오픈데이터포럼 해커톤에 참여한 경험을 쓰고자 한다! 결과는 우수상! 그 먼 과정까지의 여정을 정리하면 두고두고 도움이 될 것 같아 기록해본다. 2. 본론 - 1차 예선 해당 해커톤의 주제는 " 분야별 데이터를 활용한 사회 현안문제 해결 아이디어 기획 및 개발"이었다. 사회 현안문제라는 광범위한 주제를 가지고 어떻게 해야 남들과는 다른 차별성있는 아이디어를 가지고 서비스를 구현할지가 가장 큰 고민이었다. 여러 매체와 자료를 검색하면서 정부에서 주최하는 대회인 만큼 현정부의 큰 방향성을 타고자 하였다. 그래서 정한 아이디어가 바로 "스마트 항만을 위한 디지털 트윈 입출항 시뮬레이션 서비스" 이다. 해당 아이디어로 사..
[programmers] 1835번 - 단체사진 찍기(Brute force, 2017 카카오코드 본선) 1. 문제 및 예제 주어진 조건을 보면 아무리 계산을 많이 해도 시간 제한에 걸리지 않을 것이라는 확신을 가졌다. 그리고 문제 풀이를 세울 때도 Brute force밖에 생각나지 않았다. 이 문제가 정답률이 낮은 이유는 문제 자체의 난이도가 아니라 전역 변수에 관한 처리 방법인 것 같다는 생각이 들었다. https://school.programmers.co.kr/learn/courses/30/lessons/1835 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이과정 문제를 나누면 다음과 같다. 1. 구할 수 있는 모든 순서를 구한다. (재귀함수 ..
[programmers] 92342번 - 양궁대회 (BFS, 2022 KAKAO BLIND RECRUITMENT) 1. 문제 및 예제 DP인줄 알고 삽질만 두시간 했다가 도저희 감히 안잡혀서, 공식 문서 한 줄에서 힌트를 얻었다. 이런 간단한 방법도 생각하지 못하다니... 난 아직 멀었나보다.. https://school.programmers.co.kr/learn/courses/30/lessons/92342 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이과정 문제에서는 경우의 수를 return하는 것이 아니라 어떤 과녁에 몇발의 화살을 맞췄는지를 반환해야하기 때문에 queue에 몇발을 맞췄는지에 대한 정보를 저장하는 배열을 추가하였다. queue에는 해당 과..
[programmers] 150368번 - 이모티콘 할인행사 (brute force, 2023 KAKAO BLIND RECRUITMENT) 1. 문제 및 예제 완전탐색 조합문제이다. 카카오는 이제 구현이 베이스로 깔리는 것 같다. 문제를 나누는 카테고리는 따로 있어도 뭔가 복잡한 구현을 해야하는 느낌이다. 이런 구현은 많은 문제를 풀어보는 방법밖에 없나 싶다.. 약 20분에서 30분 정도 걸렸다. 실제로는 정해진 5시간 안에 여러 문제를 풀어야한다는데... 집중력 떨어지는 입장으로서 걱정이 많이 된다. https://school.programmers.co.kr/learn/courses/30/lessons/150368 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이과정 사실 풀이 과정..