코드들은 github에 업로드되어있습니다.
https://github.com/JaeYeongSong/Blog/tree/main/BTC_Pyupbit-Autotrade
GitHub - JaeYeongSong/Blog
Contribute to JaeYeongSong/Blog development by creating an account on GitHub.
github.com
저번 2시간은 매수, 매도하는 방법에 대해 알아보았습니다.
매수와 매도는 주문이라는 하나에 개념에 합쳐지죠. 그럼 지금부터 매수와 매도를 합쳐 주문이라고 정의하겠습니다.
여러분들 주문을 했는데 자신이 원하지 않은 금액 또는, 주문을 잘 못 넣어서 취소하려고 하는데
주문 취소를 못하면 어떻게 될까요? 손해를 볼 수 있습니다.
그럼 자동매매 코드를 만들었는데, 주문을 취소하고 싶다면 오늘 알아볼 주문 취소하는 코드를 알아보아야 합니다.
그럼 오늘 주문을 취소할 수 있는 코드를 들고 오겠습니다.
import pyupbit
access = "your access"
secret = "your secret"
upbit_Token = pyupbit.Upbit(access, secret)
ret = upbit_Token.buy_limit_order("KRW-BTC", 4000000, 1) # 매수
ret = upbit_Token.sell_limit_order("KRW-BTC", 4000000, 1) # 매도
uuid = ret['uuid'] # 주문번호 얻기
upbit_Token.cancel_order(uuid) # 주문 취소
▲ AT_basic/04.py
이게 오늘 배울 전체 소스코드입니다.
여기 부분에서 오늘 배울 부분을 알아봅시다.
uuid = ret['uuid'] # 주문번호 얻기
upbit_Token.cancel_order(uuid) # 주문 취소
▲ AT_basic/04.py 중 주문 취소
오늘 주문 취소에 대해서 알려면, uuid 라는 걸 아셔야 합니다.
uuid는 주문의 고유 아이디 입니다.
무슨 소리냐면 우리가 매수나 매도를 할 때 매수를 하거나 매도를 할 때
그 거래내역의 이름을 uuid 즉 주문의 고유 아이디입니다.
uuid로 주문을 한 기록을 특정할 수 있습니다.
주문을 취소하는 것도 uuid를 이용해서 주문기록을 특정하여 취소하는 방식이라고 생각하시면 될 것 같습니다.
자 일단 우리가 코드를 짤 때 주문을 취소할 경우가 생겼을 때 우리가 uuid를 찾아서 입력해 주지는 않죠.
그렇기 때문에 주문이 되었을 때 생성되는 uuid를 가지고 있어야 합니다.
일단 주문 코드를 함수로 만들어주겠습니다.
ret = upbit_Token.buy_limit_order("KRW-BTC", 4000000, 1) # 매수
ret = upbit_Token.sell_limit_order("KRW-BTC", 4000000, 1) # 매도
▲ AT_basic/04.py 중 주문
위에 코드는 매수 코드이고, 아래 코드는 매도 코드입니다. 지정가로 주문하는 게 적혀있지만 시장가로 주문하는 걸 알고 싶으시다면, AT_basic 시리즈 2, 3번을 보시면, 시장가로 매수, 매도하는 게 나와 있습니다. (AT_basic 시리즈는 () 소괄호)
일단 본론으로 들어와서 앞에 부분을 ret 라는 함수로 묶어줍시다.
그다음에 ret 라는 함수로 묶어준 주문 코드의 uuid를 가져오겠습니다.
uuid = ret['uuid'] # 주문번호 얻기
▲ AT_basic/04.py 중 uuid 얻기
uuid 라는 함수를 만들어서 ret에 uuid만 가져오는 코드입니다.
uuid는 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' 뭐 이러한 형식으로 구성되어 있습니다.
이제 uuid를 얻었으니까, uuid를 통해서 주문을 취소합시다. uuid를 통해 주문을 취소하는 방법은
upbit_Token.cancel_order(uuid) # 주문 취소
▲ AT_basic/04.py 중 주문 취소
이러한 코드를 사용해서 주문을 취소합니다.
cancel_order를 사용해서 말이죠.
이 함수 같은 경우에는 첫 번째 인자에 uuid를 받습니다. 즉 주문의 고유 아이디를 받습니다.
주문을 취소하면 그 주문을 특정을 해야지 취소를 가능한 것처럼 말이죠.
지금까지 읽어주신 분들 감사드립니다.
지금까지 주문 취소 코드였습니다.