작업: multi-perp-dex에 DreamCash 거래소 추가
DreamCash는 Hyperliquid L1 위에서 돌아가는 프론트엔드 거래소다.
별도 래퍼가 필요 없고, 기존 hyperliquid 래퍼를 그대로 쓰면서 builder_code만 설정하면 된다.
#1. config.yaml에 거래소 항목 추가
exchanges 섹션 아래에 다음을 추가:
dreamcash:
enabled: true
keys:
wallet_address: "여기에_본인_지갑주소"
wallet_private_key: "여기에_본인_프라이빗키"
agent_api_address: null
agent_api_private_key: null
by_agent: false
vault_address: null
builder_code: "0x4950994884602d1b6c6d96e4fe30f58205c39395"
builder_fee_pair: {"base": "1 25"}
FrontendMarket: false
※ builder_fee_pair 설명:
- "1 25" = Maker 0.001%, Taker 0.025%
- 숫자는 각각 bps의 10분의 1 단위 (1 = 0.1bps = 0.001%)
※ builder_code는 DreamCash의 빌더 주소. 이걸 넣어야 DreamCash 프론트엔드 경유 거래로 인식되어 포인트/볼륨이 적립된다.
#2. factory.py 수정
mpdex/factory.py의 _load() mapping에 추가:
"dreamcash": ("mpdex.exchanges.hyperliquid", "HyperliquidExchange"),
create_exchange() 함수에 elif 추가:
elif exchange_platform == "dreamcash":
return await Ex(
wallet_address = key_params.wallet_address,
wallet_private_key = key_params.wallet_private_key,
agent_api_address = key_params.agent_api_address,
agent_api_private_key = key_params.agent_api_private_key,
by_agent = key_params.by_agent,
vault_address = key_params.vault_address,
builder_code = key_params.builder_code,
builder_fee_pair = key_params.builder_fee_pair,
FrontendMarket = key_params.FrontendMarket,
proxy = getattr(key_params, 'proxy', None),
).init()
SYMBOL_FORMATS에 추가:
"dreamcash": lambda coin, q=None: coin.upper(),
#3. limit_order 설정 (선택)
limit_order.exchange_flags에 추가:
dreamcash: true
#4. scaling 설정 (선택)
scaling.manual_equity에 추가:
dreamcash: 0
#5. 핵심 정리
- DreamCash = Hyperliquid 프론트엔드 → 별도 래퍼 파일 불필요
- 같은 HyperliquidExchange 클래스를 "dreamcash"란 이름으로 재사용
- builder_code가 핵심. 이게 있어야 DreamCash 볼륨/포인트 적립됨
- builder_fee_pair "1 25"는 Miracle보다 수수료가 낮다 (Maker 0.001% vs 0.003%)
- wallet_address를 명시적으로 넣어줘야 함 (null로 두면 프라이빗키에서 자동 파생되지만, 명시 권장)
- 프라이빗 키는 Hyperliquid 메인넷에서 쓰는 키와 동일해도 되고, 별도 지갑 써도 됨
- agent 모드 쓰려면 by_agent: true + agent_api_address/private_key 설정
#6. 검증
설정 후 아래 명령으로 정상 작동 확인:
python3 -m strategies.multi_runner --config config.yaml
로그에서 [dreamcash] 거래소 초기화 성공 메시지가 뜨면 완료.
