컴퓨터 공학

[시스템 트레이딩]okx거래소의 lot size를 알아보는 방법, 그리고lot size가 의미하는바 이해하기

crypto&stock channel 2024. 8. 6. 22:19
반응형

lot size란?

반응형

lot size는 거래에서 사용되는 기본 단위로, 특정 금융 상품(예: 주식, 선물 계약, 외환 등)의 거래에서 최소 주문 가능한 양을 의미합니다. 각 거래 플랫폼이나 금융 상품에 따라 lot size는 다를 수 있습니다.

 

okx의 비트코인 무기한계약의 lot size를 알려면 어떻게해야 할까요?

 

코드줄:

import requests

def get_btc_perp_lot_size():
    url = "https://www.okx.com/api/v5/public/instruments?instType=SWAP&instId=BTC-USDT-SWAP"
    
    response = requests.get(url)
    data = response.json()

    if data['code'] == '0':
        instrument_info = data['data'][0]
        lot_size = instrument_info['lotSz']
        return lot_size
    else:
        raise Exception(f"Failed to get data: {data['msg']}")

# BTC-USDT 무기한 선물의 lot size를 가져옵니다.
btc_perp_lot_size = get_btc_perp_lot_size()
print(f"The lot size for BTC-USDT-SWAP is {btc_perp_lot_size}")

 

 

 

해당 코드를 파이썬에 입력하면 okx의 lot size를 얻을수있습니다

 

okx의 lot size

 

현재 okx의 lot size는 0.1입니다

하지만 0.1이 의미하는게 0.1비트코인일까요? 아니면 계약단위일까요?

 

이부분이 명확하지 않아 시행착오를 겪었고 결국 0.1이 계약단위인걸 알게되었습니다.

 

1계약이 얼마인지도 알아내봅시다

import requests

def get_contract_size(inst_id):
    url = f"https://www.okx.com/api/v5/public/instruments?instType=SWAP&instId={inst_id}"
    
    response = requests.get(url)
    data = response.json()

    if data['code'] == '0':
        instrument_info = data['data'][0]
        contract_size = instrument_info['ctVal']
        return contract_size
    else:
        raise Exception(f"Failed to get data: {data['msg']}")

# BTC-USDT-SWAP 무기한 선물 계약의 계약 단위를 가져옵니다.
inst_id = 'BTC-USDT-SWAP'
contract_size = get_contract_size(inst_id)
print(f"The contract size for {inst_id} is {contract_size}")

 

 

 

해당 코드줄을 파이썬에서 실행하면 비트코인 영구계약에서의 1계약이 몇비트인지 알아낼수가 있습니다

비트코인 영구계약에서의 1계약

 

1계약은 0.01비트이고

lot size는 0.1인데 lot size가 계약단위였다고 앞서 얘기했었죠

 

그럼 okx의 btc perp의 최소거래 단위는 0.001btc인셈입니다

 

거래소마다 lot size는다르고 lot size가 의미하는바도 다릅니다

okx의경우엔 lot size가 계약단위 인것이고요.

 

근데lot size를 왜 알아야할까요?

 

어차피 거래소에서 주문할떄 시드맞춰서 주문하면 알아서 하는데.

 

자동트레이딩이나 시스템 트레이딩을 만들려면 거래소api를 사용해 주문을 코드상에서 구현해야하는데 이때 구체적인 계약수를 명시해야 하는데 이떄 반드시 lot size의 배수만큼의 주문을 설정해야 오류가 안생깁니다

 

본인도 lot size관련 오류를 숱하게 겪다 해답을 찾게된거구요

 

okx의 lot size관련된 포스팅 유익하셨길 바라며 이만 물러나 보겠습니다.

 

 

 

 

 

 

 

반응형