마스터욱
Toggle navigation
  • 회원가입 | 정보찾기
ICON NAVIGATION
정보수정 쪽지함 주변맛집 익명채팅
공지사항 채팅 개발문의 방명록
  • MAIN NAVIGATION
  • 메인
  • 마스터욱 공간
    • 마스터욱 소개
    • 개발 리스트
    • 공지사항
    • 방명록
  • 마스터욱 외부자료
    • 네이버
    • 티스토리
    • 깃허브(github)
  • 개인 프로젝트
    • 랜덤 이성 채팅
    • Auto 크롤링
    • Javascript 카카오 채팅
    • 파이썬 뉴스매매
    • C# 키움 주식 자동매매
    • C# 키움 주식 패턴 분석
    • PHP 욱보드
    • 업비트 자동매매 개발
    • 업비트 자동매매 일지
  • 개발 의뢰
    • 개발 문의
    • 개발 견적
    • 개발 피드백
    • FAQ
  • 개발 경험 Tip
    • PHP
    • JSP
    • HTML
    • Javascript
    • Android
    • C#
    • MySQL
    • Linux
    • Python
    • NodeJS
    • React
    • Vue.js
    • Flutter
    • 정규식
    • 기타
  • 커뮤니티
    • 자유게시판
    • 추천사이트
    • 영화
    • 여행
    • 유머
    • Overseas News
  • 맛집&즐길 거리 탐방
    • 맛집 정보
    • 즐길 거리 정보
    • 내 주위 맛집&즐길 거리
  • 공유 사진
    • 음식
    • 여행
    • 캐릭터
    • 배경
    • 기타
    • 이모티콘
    • 일러스트
  • 놀이터
    • 블록뽀시기
    • 트레이딩뷰
    • 로또 시뮬레이션
    • 쳇쳇 익명 채팅
    • 랜덤 이성 채팅
    • AI 채팅
    • 미니 채팅
    • 바이너리 테스트
    • 마번호 생성기
    • 바카라 시뮬레이션
    • 홀짝점수 테스트
    • 로또 분석기
SITE STATISTICS
  • - 명 현재 접속자
  • 609 명 오늘 방문자
  • 1,445 명 어제 방문자
  • 5,192 명 최대 방문자
  • 702,801 명 전체 방문자
  • 2,571 개 전체 게시물
  • 496 개 전체 댓글수
Facebook Twitter GooglePlus KakaoStory NaverBand
  1. 홈
  2. 자유게시판
목록으로

업비트 API에 대한 고찰

마스터욱 1 201 0 0 2021-12-07 05:08:20

업비트 API 도 해외 거래소와 마찬가지로 websocket 을 지원한다.

다만 private websocket 을 지원하지 않는다.

즉 나의 거래에 관한 피드백을 주지 실시간으로 제공하지 않는다는 말이다.

그럼 어떻게 하냐고?

request 를 초단위로 호출할 수밖에...

다행히 1초에 한번 호출해도 될 정도로 호출카운트는 넉넉히 주는것 같다.

업비트 측에서 의도한 바인지는 모르겠으나, 하루빨리 조속히 매우 신속하게 웹소켓 private api 를 제공하기를 바란다.(공짜로 쓰는 주제에 매우 당당하게 어필하깅~)

 

그러나 이 request 가 문제인데,

업비트의 주문리스트는 상태값이 여러개이다.

그중에 체결완료 상태는 "done" "cancel" 이 두개이다.

done 하나만 호출하면 안된다. 시장가는 cancel 로 오는 경우가 허다하다... 왜 이런지는 모르겠다. 업비트 지 맘이지 모...

 

API 상으로는 상태값 하나만 호출하면 state 값만 주면 되는데, 복수값을 원할 경우, states 로 array 로 달라고 한다.

근대 그게 잘안된다.

state 는 잘되는데, states 가 안된다.

php 만 안되나??? 싶어서 업비트 메뉴얼에 들어가서 nodejs 샘플을 직접 만들어 보아서 실행해 보았다.

 

========================================================================================

 

const request = require('request')

const uuid = require("uuidv4")

const crypto = require('crypto')

const sign = require('jsonwebtoken').sign

const queryEncode = require("querystring").encode

 

const access_key = "엑세스키"

const secret_key = "시크릿키"

const server_url = "https://api.upbit.com"

 

const limit = 10

const states = [

    'done','cancel'

    //...

]

 

const non_array_body = {

    limit: limit,

}

const array_body = {

    states: states,

}

const body = {

    ...non_array_body,

    ...array_body

}

 

const uuid_query = states.map(state => `states[]=${state}`).join('&')

const query = queryEncode(non_array_body) + '&' + uuid_query

 

const hash = crypto.createHash('sha512')

const queryHash = hash.update(query, 'utf-8').digest('hex')

 

const payload = {

    access_key: access_key,

    nonce: "11bf5b37-e0b8-42e0-8dcf-dc8c4aefc000",

    query_hash: queryHash,

    query_hash_alg: 'SHA512',

}

 

const token = sign(payload, secret_key)

 

const options = {

    method: "GET",

    url: server_url + "/v1/orders?" + query,

    headers: {Authorization: `Bearer ${token}`},

    json: body

}

 

request(options, (error, response, body) => {

    if (error) throw new Error(error)

    console.log(body)

})

 

======================================================

 

솔직히 나는 안되길 바랬다...

안되면은 애초에 API 가 잘못된 거라고 우길수 있기 때문이다...

그치만 성공했다...

업비트 API에 대한 고찰
 

그럼 php 로 만든 소스가 문제란 말인데...

 

성공하게 되면 후기를 작성해 주겠다...

0
0

목록

Facebook Twitter GooglePlus KakaoStory NaverBand
1 Comments

비밀번호 확인

확인
댓글은 자신을 나타내는 '얼굴'입니다. *^^*
등록
자동등록방지 숫자를 순서대로 입력하세요.

댓글수정


글쓰기
검색
번호 제목 이름 날짜 조회
  • 236
    기안84 를 리스펙하며~
    마스터욱
    조회수 10   26-10-12 00:49
    마스터욱
    26-10-12 00:49
    10
  • 235
    음 글을 너무 안쓴거 같은데.....
    마스터욱
    조회수 106   26-08-16 00:53
    마스터욱
    26-08-16 00:53
    106
  • 234
    cursor AI에게 자주 사용하는 명령모음
    마스터욱
    조회수 308   26-03-17 22:41
    마스터욱
    26-03-17 22:41
    308
  • 233
    20살, 숫자만으로 아름다운 나이
    마스터욱
    조회수 324   25-11-15 13:17
    마스터욱
    25-11-15 13:17
    324
  • 232
    [2] 2007년 전역과 그리움 [2]
    마스터욱
    조회수 504   25-11-04 13:37
    마스터욱
    25-11-04 13:37
    504
  • 231
    [1] contabo 서버 결제했습니다. [1]
    마스터욱
    조회수 444   25-09-09 02:54
    마스터욱
    25-09-09 02:54
    444
  • 230
    [2] IOS 그로우스펙 앱 출시 [2]
    마스터욱
    조회수 497   25-09-05 03:04
    마스터욱
    25-09-05 03:04
    497
  • 229
    IOS 그로우스펙 앱 출시임박
    마스터욱
    조회수 373   25-08-05 17:38
    마스터욱
    25-08-05 17:38
    373
  • 228
    IOS 꽁술 앱 출시임박
    마스터욱
    조회수 279   25-06-17 14:14
    마스터욱
    25-06-17 14:14
    279
  • 227
    2005-05-11 인젝션 시도
    마스터욱
    조회수 287   25-05-11 23:28
    마스터욱
    25-05-11 23:28
    287
  • 226
    The Rise of Generative AI: How It\'s Transforming Creative Industries in 2024
    마스터욱
    조회수 297   25-05-06 23:05
    마스터욱
    25-05-06 23:05
    297
  • 225
    How Generative AI is Revolutionizing Content Creation in 2024
    마스터욱
    조회수 220   25-05-06 04:43
    마스터욱
    25-05-06 04:43
    220
  • 224
    해커 침입 흔적
    마스터욱
    조회수 263   25-02-21 11:35
    마스터욱
    25-02-21 11:35
    263
  • 223
    [1] 바이낸스 공지사항 크롤링에서.. X-Cache Miss from cloudfront 이렇게 해서 항상 MISS로 뜨는데.. [1]
    비회원
    조회수 439   25-01-08 17:27
    비회원
    25-01-08 17:27
    439
  • 222
    해커가 또 들어왔습니다.
    마스터욱
    조회수 201   24-12-17 20:19
    마스터욱
    24-12-17 20:19
    201
  • 221
    넷마블 대항해시대 온라인이 서비스를 종료하였다.
    마스터욱
    조회수 187   24-11-29 19:00
    마스터욱
    24-11-29 19:00
    187
  • 220
    [2] 해커가 들어왔다! [2]
    마스터욱
    조회수 269   24-07-16 22:14
    마스터욱
    24-07-16 22:14
    269
  • 219
    해태 팝 봉봉카세트 극장 (추억의 카세트 테이프)
    똘똘이
    조회수 404   24-05-20 12:34
    똘똘이
    24-05-20 12:34
    404
  • 218
    꽁술에서 꽁술먹자!
    마스터욱
    조회수 300   23-09-05 12:19
    마스터욱
    23-09-05 12:19
    300
  • 217
    CSS 로 만든 태극기 코드
    마스터욱
    조회수 287   23-08-15 23:48
    마스터욱
    23-08-15 23:48
    287
글쓰기
검색
  • 1
  • 2
  • 3
  • …
  • 12
  • 다음

Search

개인정보처리방침
마스터욱. All rights reserved.

Close

0 명 접속중
Time Loading...