API를 이용한 자동매매 개발 #9 로직 - 호가갭차이를 이용한 전략

By @cowin8/21/2017kr

오랜만의 포스팅입니다.

이번 포스팅은 자동매매 로직 중 호가갭차이를 노려보려 합니다.


1/20초(0.05초) 마다 호가를 받아오며 (리얼패킷을 주지 않는터라...) 표시합니다.

BCH 화폐의 호가스크린샷입니다.
두개의 호가 매수/매도 매물대가 이상하죠? 바로 이번에 추가한 [빈호가 표시] 입니다.

손으로 실시간 스크린샷을 그대로 찍다보니,
4초정도의 시간이 차이가 나긴하지만 이번 포스팅에 다루려는 내용에는 충분하다 생각됩니다.

전략의 캐치프레이즈는 아래와 같습니다.

매수1호가와 매도1호가의 차이가 수수료를 커버할 만큼 벌어지면
매수1호가 + 호가단위의 매수주문
매도1호가 - 호가단위의 매도주문
차이만큼의 수익을 취한다

이해 되셨나요? 설명 잘 못하는 터라, 조금 더 장황하게 풀어보겠습니다.

첫번째 스크린샷을 보면,
매수1호가는 793,400원. 매도1호가는 794,700원 (0.16은 매수1호가대비 %를 의미합니다)
BCH의 호가단위는 100원인데 반해, 최우선호가의 가격차이는 1,300원이네요. 13틱이죠~
이 차이를 노려보는 전략입니다.

두번째 스크린샷을 보면,
매물수량이 0인 값도 표시하게 했습니다. 한 틱당 0.01%입니다.(매수1호가기준)

빗썸 뉴비인 저에게는 수수료가 0.3%(매수/매도 각 0.15%)가 적용되지만,
헤비(?) 트레이더들에게는 수수료쿠폰들이 있으니 최대 0.01%까지 낮아지더군요

우수고객 전용쿠폰이 있다면, 매수+매도 각 1회씩 총 0.02%의 수수료가 발생하므로
(매수호가+1틱) - (매호1호가-1틱) = 0.14% 의 수익이 예상됩니다
0.14%수익에 매매수수료 0.01%의 2회(매수/매도) 를 빼더라도 0.12%가 남는군요.

물론 전제조건

매수1호가+1틱, 매도1호가-1틱에 각각 체결되어야 하며,
매수체결 후 매도호가가 수수료보다 낮아지지 않아야 함
큰 금액의 주문은 모든 수량이 체결되지 않을 수 있음

이 존재하지만, 반드시 수익이라기보다는 상당히 유리한 접근이라는점은 확실한 것 같습니다.

빗썸과 거래서버와의 통신지연을 조금 더 줄여준다면 성공률이 높을 수 있지 않을까 생각됩니다.

*이론상 1회 거래에 걸리는 *
최단 시간 = 0.05초 호가갱신 + 0.1초 매수주문 + 0.1초 체결확인 + 0.1초 매도주문 + 0.1초 매도체결확인
= 0.45초 (HFT:HighFrequencyTrading에 비하면 거북이속도네요)

아직 소규모자본만 돌리기때문에
조금 더 안전한 스켈핑 전략이 나오기전까지는
자동거래는 돌리지 않고, 시그널 확인정도만 할 생각입니다.

어디 우수고객쿠폰 보유하신 금수저(?) 안계신가요?

자동으로 돌려보고 싶다만 시뮬레이션으로만 만족해야겠습니다.
(시뮬레이션은 실제 거래가 아니기 때문에 공개해도 의미가 1도 없는거 아시죠?)

오늘도 성투하세요
마칩니다.

다음 포스팅은 기술적분석에 의한 매매를 해볼 생각입니다.

+2017.08.22. 오후3시. 추가

오늘 이렇게 구동해보고 다음 포스트에 로그기록을 요청이 있다면 공개하겠습니다

1분봉등락 0.1%초과
5분봉등락 0.2%초과
10분봉등락 0.3%초과
30분봉등락 0.4%초과
60분봉등락 0.5%초과
최우선호가 갭차이 0.5%초과
종목 중 제일 갭차이가 큰 종목을 골라내는 소스입니다 ^^

#현재까지 완료된 실행파일 : http://bitcoin.cowincomfunny.com/
API제한이 있으니(Private는 초당10회) 프로세스를 여러개 실행하면 안됩니다
Tag : 비트코인 빗썸 자동매매 bitcoin API BTC BCH ETH ETC DASH LTC XRP 호가주문

14

comments