'자동매매'에 해당되는 글 2건

  1. 2023.03.03 [Trading] L-ATS 3.0의 시작
  2. 2020.05.24 [Trading] 첫번째 프로그램

L-ATSLim's Automatic Trading System의 약자로 2016년 성(임씨)이 같은 나(프로그램 개발)와 내 친구(검색식 생성)의 합작으로 시작된 프로젝트였다.

 

Trading 프로그램들은 모두 같은 목적을 갖고 있다. 

[ 매매의 자동화 ]

 

프로그램을 필요로하는 사람들마다 매매의 자동화의 방식, 기준은 다 제각각이다

L-ATS은 매매의 자동화를 위해 이러한 기능들을 제공했다.

 

2016년 L-ATS 1.0

2020.05.24 - [Trading] - [Trading] 첫번째 프로그램

 

[Trading] 첫번째 프로그램

프로그램 명 : L-ATS (Lim's Automatic Trading System) 버전 : 1.0 환경 : Visual Basic 주요기능 : 검색식 기반 주식 매수, 설정값 기반 주식 매도, 스탑로스 API : 키움증권 API 제작기간 : 2015.05 ~ 2015.08 키움에서

brandon-dev.tistory.com


  • 키움증권 API 사용
  • 키움증권 [조건검색]의 자체 개발한 검색식을 사용한 자동 매수

손익 수준(%) 및 수량을 단계적으로 커스텀 가능한 자동 매도

 

2020년 L-ATS 2.0

2020.06.07 - [Trading] - [Trading] 두번째 프로그램

 

[Trading] 두번째 프로그램

프로그램 명 : L-ATS (Lim's Automatic Trading System) 버전 : 2.0 환경 : Visual C# 주요기능 : HTS/MTS 매수 종목 정보 실시간 수신, 설정값 기반 주식 매도, Flexable 스탑로스 API : 이베스트 증권 XingAPI 제작기간 : 2

brandon-dev.tistory.com


  • 이베스트증권 XingAPI 사용
  • 자동 매매 프로그램과 텔레그램 봇의 조합으로 텔레그램에서 종목명만 입력하면 설정된 조건으로 알아서 매수해 주는 실시간 매수 자동화
  • 가장 빠르게(!) 매수하는게 주 목적으로 매매를 위한 종목 클릭, 계좌 비번 입력, 매수 수량 입력, 매수 버튼 클릭 등의 작업을 없앤 초 간단 매수
  • 상승하는 종목의 최대 수익을 낼 수 있도록 현재가에 맞춰 유동적으로 변화하는 매도 기준의 실시간 변화
  • 손실을 최소화 할 수 있는 철저한 자동 손절

 

L-ATS 1.0은 사실상 실패한 프로젝트였다. 실패라기 보단 매매의 목적(=수익)을 달성하기에 큰 단점이 있었다.

제대로된 검색식

L-ATS 1.0은 위에 기술했듯이 키움증권의 검색식을 통해 추출된 종목을 즉시 매매하는 방식으로 차트 기반의 수익을 만들어내는 제대로된 검색식을 필요로 했기 때문이다.

아는 사람은 알겠지만...수익을 만들어 내는 제대로된 검색식을 만들기란 정말 쉽지않다. 
제대로된 검색식을 누구나 만들 수 있다면 모든 사람이 부자가 됐겠지...(나 역시도 반년간 검색식에 매달렸지만....)

L-ATS 1.0은 이렇게 약 7개월 정도 운용되다가 폐기되었다.


그렇게 시간이 흘러 2019년.

친구의 권유로 카카x톡 찌라시 매매방에 들어가게 되었고, 약 1년여의 시간동안 관찰해온 찌라시 매매방의 특징으로 나만의 독창적인 매도 방식을 결합하여 L-ATS 2.0을 설계하게 되었다.

 

[ 찌라시 매매방에서 찾아낸 특징 ]

  1. 찌라시 매매방은 진짜 뉴스와 가짜 뉴스가 섞여 나온다.
  2. 찌라시 매매방의 목적 상(= 뉴스 띄우고 개미들이 들러붙어 1~2% 오를때 물량 넘기기 수법) 진짜 뉴스든 가짜 뉴스든 대부분 어느 순간 일정 수준의 상승을 보인다.
  3. 높은 확률로 상한가 직행 종목이 나온다. (=진짜뉴스)
   결론 : 가지 않는 종목을 빠른 손절로 손실을 최소화 하고 상한가 가능 종목 1개만 잡아도 평균적으로 수익이다.

[ 자동 손절로 최대 수익을 낼 수 있는 방법의 추론]

  1. 주식판의 모든 종목은 파형을 그리면서 움직인다.
  2. 세력이 들어와 급등하는 종목도 개미를 떨구거나 더 많은 매물을 모아서 올리기 위해 매량 매도를 통해 순간 가격을 내린다.
  3. 종목의 최고가가 갱신될 때마다 해당 값을 기준으로 일정 수준의 손절 라인을 실시간으로 변경하면서 가져간다면 자동매매로써의 최대 수익을 낼 수 있는 하나의 방법이 된다. (= 내 생각)
절대적 손절 라인을 -5%로 지정했다고 가정해 보자.
내가 1000원에 어떤 종목을 샀으면 그 시점에 손절 라인은 1000원에서 -5%인 950원이다. 
이때 종목이 1000원에서 1100원이 되면 그 시점에 손절 라인은 1045원이 된다. 
이런 식으로 손절 라인을 매 시점의 최고가에 맞게 높여 나간다면 1000원에서 급등했다가 다시 1000원으로 내려와도 무조건 수익이 생기게 된다. 
또한, 급등하는 중간 중간에 세력이 개미를 떨구기 위해 호가를 내리는 경우 설정된 -5% 이내에 들어오면 손절되지 않고 상승 파형을 따라 끝까지 가져갈 수 있는 좋은 조건이 된다.
이것은 고정된 금액. 또는 고정된 수익/손절 %에서 자동 청산 기능을 제공하는 많은 증권사들의 기능과는 확실히 더 나은 차별점이 있다.

이렇게 탄생한 L-ATS 2.0은 약 2년간 기능 업데이트 및 버그 수정을 거듭해가며 나의 증권 계좌를 운용해 주었다.

 

L-ATS 2.0은 찌라시 매매방에서 언급한 종목을 무조건 사는 방식을 채택하였기에 

매수에 한해서는 완전 자동화를 할 수가 없었다.

때문에, 찌라시 매매방에 종목이 올라온 것을 캐치한 후 미리켜둔 증권 앱에서 종목을 검색하여 수동으로 매수를 하였다. 

여기서 L-ATS 2.0의 단점이 발생했다.

 

바로 매수가 느리다는 것.

찌라시 매매방에 올라오는 종목은 말그대로 찌라시에 의한 급등 종목들이기 때문에 빠른 매수가 수익과 직결된다. 

하지만 수동 매수로 인해 증권사 앱에 접속하는 시간, 종목을 검색하는 시간, 계좌 비밀번호를 입력하는 시간, 매수 가격 및 매수금액 입력  시간 등..

 

이를 보완하기 위해 텔레그램 봇을 이용하여 L-ATS 2.0 프로그램과 연동을 통해 수동 매수의 한계점을 극복하였으나

이것 역시 찌라시 매매방의 종목을 내가 인지한 후에 매수가 가능했기에 타이밍을 놓치거나 아예 보지 못해 매수를 하지 못하는 단점들이 생겨났다. 

그래서 결론은,  역시 완전 자동화!!

L-ATS 2.0은 약 7개월 전, 결국 전체 수익률 약 -3% 수준을 기록하고 멈추었다. 

그래도 반자동 매매 치고는 매우 괜찮은 수준이라고 생각한다.

 


최근 애플에서 iOS 업데이트를 하면서 카메라 기능 중 OCR 기능을 기본 탑재하면서 전 세계적으로 인공지능 학습에 의한 OCR 정확도가 평균적으로 매우 상승하였음을 보여주었다. (실제로 써보면 거의 100% 정확하다.)

 

L-ATS 2.0에서 완성하지 못했던 완전 자동화를 이 인공지능 OCR 기능을 통해 구현해 보고자 

다시 Visual Studio를 열게 되었다. (지금 내가 인공지능 회사에 재직 중이니까...)

 

2023년 L-ATS 3.0

L-ATS 3.0은 찌라시 매매방의 채팅 창을 일정 시간 간격으로 캡쳐하여 TEXT만 OCR로 변환 후

종목명을 추출하여 즉시 매수 처리하는 방식으로 구현될 것이다.

 

이 과정에서도 분명 문제점은 있다. 

하지만 완전 자동화가 되는 프로그램을 만드는 것이 우선순위이기 때문에 이슈들은 일단 뒤로 제껴둘 생각이다.

Posted by [ 브랜든 ]
,

프로그램 명 : L-ATS (Lim's Automatic Trading System)

버전 : 1.0

환경 : Visual Basic

주요기능 : 검색식 기반 주식 매수, 설정값 기반 주식 매도, 스탑로스

API : 키움증권 API

제작기간 : 2015.05 ~ 2015.08

 

 

키움에서 제공하는 검색식 기반 자동매매 프로그램이다. 

구현된 기능 및 UI 구조는 당시 안정성 및 디테일한 기능 제공으로 유명했던 어떤 프로그램을 벤치마킹했다.

 

매수와 매도를 전적으로 프로그램에 맡기는 형태로 검색식을 얼마나 잘 만드냐에 따라 희비가 갈린다.

경험자는 잘 알겠지만 매수를 자동으로 하는것이 매우 어렵다.

때문에 새로만들 두번째 L-ATS는 매도만 하는 프로그램으로 구상했다.

물론 일반적인 스탑로스라면 재미없겠지만, 아직 어느곳에서도 사용되지 않았던 방식의 스탑로스가

적용될 것이다.

 

API는 키움 -> 이베스트로 변경 예정.

C#으로 만들 생각하니 벌써부터 두근두근 거린다.

'Trading' 카테고리의 다른 글

[Trading] L-ATS 사용자 시나리오  (0) 2020.08.02
[Trading] 사용자 정보 구조  (0) 2020.07.18
[Trading] HTS 로그인 설계, 구현  (0) 2020.07.08
[Trading] 프로그램 로그인  (0) 2020.06.21
[Trading] 두번째 프로그램  (0) 2020.06.07
Posted by [ 브랜든 ]
,