320x100
안녕하세요.
코라밸 입니다.
이전 글에 이어서 1, 2번 코드 예제를 살펴 봤습니다.
시세 (Ticker) 조회방식: WebSocket용도: 실시간으로 시세정보를 수신사용: 실시간으로 들어오는 시세정보를 저장하고 사용주문 정보 변경 체크방식: WebSocket용도: 모든 주문 정보에 변동이 생길 때마다 웹소켓으로 신호를 받아서 처리사용: 주문의 체결이 발생한 즉시 주문 전송 등 사전 정의된 작업 수행- 주문하기
방식: REST API
용도: 매수 주문 및 매도 주문 전송
사용: Open Order 또는 Close Order을 전송 - 계좌 정보 조회
방식: REST API
용도: 현재 지갑의 잔고 및 보유 포지션의 정보를 조회
사용: 0.3초에 한번씩 호출하여 현재가와 진입가를 비교해서 현재 손익률, 목표 손익률을 비교해서 처리
이번 글에서는 3, 4번 예제 코드를 이어서 살펴보겠습니다.
주문하기 예제 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | const axios = require('axios'); const moment = require('moment'); const crypto = require('crypto'); const querystring = require('querystring'); const BINANCE_ACCESS_KEY = 'BINANCE_ACCESS_KEY'; const BINANCE_SECRET_KEY = 'BINANCE_SECRET_KEY'; const _query = { symbol: 'XRPUSDT', side: 'BUY', positionSide: 'LONG', type: 'LIMIT', timeInForce: 'GTC', quantity: 100, price: '1.1', timestamp: moment().valueOf(), }; const query = querystring.stringify(_query); const sign = crypto .createHmac('sha256', BINANCE_SECRET_KEY) .update(query) .digest('hex'); axios({ method: 'POST', url: `https://fapi.binance.com/fapi/v1/order?${query}&signature=${sign}`, headers: { 'X-MBX-APIKEY': BINANCE_ACCESS_KEY, }, }) .then((response) => { // 주문 성공 }) .catch((error) => { console.log(error.response.data); }); | cs |
리플 100개를 $1.10 에 롱 오픈하는 코드입니다.
기본적으로 헷지 모드(Hedge Mode)를 사용하니 참고바랍니다.
헷지모드로 변경하는 방법은 아래 이미지로 설명 드리겠습니다.
계좌 정보 조회 예제 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | const axios = require('axios'); const moment = require('moment'); const crypto = require('crypto'); const querystring = require('querystring'); const BINANCE_ACCESS_KEY = 'BINANCE_ACCESS_KEY'; const BINANCE_SECRET_KEY = 'BINANCE_SECRET_KEY'; const query = querystring.stringify({ recvWindow: 10000, timestamp: moment().valueOf(), }); const sign = crypto .createHmac('sha256', BINANCE_SECRET_KEY) .update(query) .digest('hex'); axios({ method: 'GET', url: `https://fapi.binance.com/fapi/v2/account?${query}&signature=${sign}`, headers: { 'X-MBX-APIKEY': BINANCE_ACCESS_KEY, }, }) .then((response) => { console.log(response.data); }) .catch((error) => { console.log(error.response || error); return null; }); | cs |
기본 틀을 짜놓은 코드르 보면 사실 크게 어려운 코드는 없습니다.
하지만 코딩에 익숙치 않은 분들은 기초적인 예제 코드를 만드는 과정부터 많이 어려움을 겪습니다.
작동하는 코드와 결과가 출력되는 것만 확인이 된다면
그 다음부터는 조금씩 변경하여 자신이 원하는 로직을 짤 수 있으리라 생각합니다.
Node.js와 NPM을 공부하시면 여러분도 비트코인 자동매매 프로그램을 개발하실 수 있습니다.
자동매매 개발자 오픈톡: https://open.kakao.com/o/gbD73Bud
320x100
'함께만드는 자동매매' 카테고리의 다른 글
코라밸 자동매매의 기본 로직 (4) | 2022.01.19 |
---|---|
바이낸스 자동매매 프로그램 만들기 - 응용편 (0) | 2022.01.17 |
바이낸스 자동매매 프로그램 만들기 #1 (0) | 2022.01.17 |
업비트 자동매매 프로그램 만들기 - 실습 (0) | 2022.01.17 |
업비트 자동매매 프로그램 만들기 - 기본 (0) | 2022.01.17 |