add: bot bond selling

This commit is contained in:
2026-05-09 12:29:22 +09:00
parent 03337b63dd
commit 0e8590c35c

View File

@@ -44,7 +44,7 @@ def main():
# pick? Also, you will need to send more orders over time. # pick? Also, you will need to send more orders over time.
# --- BOND 마켓 메이킹 설정 --- # --- BOND 마켓 메이킹 설정 ---
FAIR_VALUE = 1000 # BOND fair value (고정) FAIR_VALUE = 1000 # BOND fair value (고정)
ORDER_SIZE = 10 # 주문당 수량 ORDER_SIZE = 10 # 주문당 기본 수량
MAX_POSITION = 100 # 최대 포지션 한도 MAX_POSITION = 100 # 최대 포지션 한도
REFRESH_INTERVAL = 5.0 # 주문 갱신 주기 (초) REFRESH_INTERVAL = 5.0 # 주문 갱신 주기 (초)
@@ -71,15 +71,25 @@ def main():
cancel_all_bond_orders() cancel_all_bond_orders()
# 포지션이 음수면 매수 가격을 올려서 빨리 사들임 buy_price = FAIR_VALUE - 1 # 999
# 포지션이 양수면 매도 가격을 내려서 빨리 팖 sell_price = FAIR_VALUE + 1 # 1001
skew = position // 10 # 포지션 10마다 1틱 조정
buy_price = min(FAIR_VALUE - 1 + skew, FAIR_VALUE - 1) # 최대 999 # 포지션이 음수일수록 매수 size 크게, 매도 size 작게
sell_price = max(FAIR_VALUE + 1 + skew, FAIR_VALUE + 1) # 최소 1001 # 포지션이 양수일수록 매도 size 크게, 매수 size 작게
base_size = ORDER_SIZE
adjustment = abs(position) // 5 # 포지션 5마다 1씩 조정
buy_size = min(ORDER_SIZE, MAX_POSITION - position) if position < 0:
sell_size = min(ORDER_SIZE, MAX_POSITION + position) # 숏 포지션 → 매수를 더 많이
buy_size = min(base_size + adjustment, MAX_POSITION - position)
sell_size = max(base_size - adjustment, 1)
elif position > 0:
# 롱 포지션 → 매도를 더 많이
buy_size = max(base_size - adjustment, 1)
sell_size = min(base_size + adjustment, MAX_POSITION + position)
else:
buy_size = base_size
sell_size = base_size
if buy_size > 0: if buy_size > 0:
bid = next_id() bid = next_id()