한 마디로 정리하자면, order.Info.detail를 order.Info.detail를 사용하여 wex.app에서 순서 매출 평균값을 검색할 수 있습니다.[0].price는 일반적인 order.AvgPrice를 대체한다. 코드를 작성할 때, 디버깅 도구를 통해 테스트 구매 판매를 할 수 있으며, wex.app은 역사 위탁 주문 정보를 비교하여 정책 코드를 조정한다.
선언: 이 글을 쓰는 목적은 코딩 과정에서 발생한 문제, 학습 과정, 그리고 해결 방법을 기록하는 것뿐입니다. 개발자 플랫폼에 대한 감사의 표시로 simulation disk wex.app를 제공하여 많은 전략을 테스트 할 수 있습니다. 거래의 측면에서, 나는 아직 모르는 것이 많이 있습니다.
이 글은 발명자의 웹사이트의调试 도구를 사용하여, 모의 디스크 웹사이트 wex.app에서 구매 판매 시가 주문을 테스트하고, 반환된 주문 정보를 검색한다. 구체적인 결과는 다음과 같다:
(a) 테스트 코드
function main(){
var account = exchange.GetAccount();
var preAccount = account;// 구매하기 전의 계정 상태를 기록한다
Log(preAccount);
var id = exchange.Buy ((-1, 50);// 50usdt를 들여 시가에서 BTC를 구매한다
Log(id);
if(id!=null){
var order = exchange.GetOrder(id);
Log(order);
account = exchange.GetAccount();// 구매 후의 계정 상태를 검색
Log(account);
}
}
(ii) 정보 반환 구매하기 전에, preAccount 계정 정보: { “Info”: { (이 부분에는 많은 정보가 있지만, 이 글의 분석에 영향을 미치지 않기 때문에 무시합니다.) }, “Stocks”: 0.8150649, “FrozenStocks”: 0, “Balance”: 5759.396067057396, “FrozenBalance”: 204954.226021164 }
구매 후, 계정 정보: { “Info”: { (이 부분의 정보는 제외) }, “Stocks”: 0.81682151, “FrozenStocks”: 0, “Balance”: 5709.396268085276, “FrozenBalance”: 204954.226021164 }
구매 전과 후의 계정 데이터를 비교하면 다음과 같은 결과가 나타납니다. 1, 계좌 잔액이 50usdt 감소했다. 2., 동전 수 ((Stocks) 가 0.00175661 BTC로 증가했다.
order은 다음과 같이 데이터를 반환합니다. { “Info”: { “account”: “exchange”, “side”: “bid”, “tx”: “49.9623272267”, “detail”: [{ “id”: 62138365, “price”: “28442.47”, “time”: 1609311663795, “amount”: “0.00175661”, “fee”: “0.037471745420025”, “fee_price”: “0.0”, “fee_replace”: “0.0” }], “fee_replace”: “0.0”, “time”: 1609311663795, “deal_amount”: “0.00175661”, “deleted”: 1609311663795, “remain”: “0.0”, “fee_symbol”: “EVE”, “id”: 201005081, “market”: “BTC_USDT”, “price”: “50.0”, “status”: “closed”, “amount”: “0.0”, “client”: “api”, “fee”: “0.037471745420025”, “type”: “market” }, “Id”: 201005081, “Amount”: 0, “Price”: 50, “DealAmount”: 0.00175661, “AvgPrice”: 0, “Status”: 1, “Type”: 0, “Offset”: 0, “ContractType”: “” }
Wex.app에서 돌아온 order order 정보에 따르면, 우리는 다음과 같은 것을 발견했습니다. 1 ᆞ 주문이 완료되었고, 상태는 1 ᆞ 2, 거래된 동전은 0.00175661이며, 계좌의 이전과 후의 변화 값과 일치한다. 3., wex.app 웹페이지의 역사적인 주문 정보를 비교해 보면: 전체 거래액은 49.9623272267 usdt입니다. 매매 평균 가격은 Info.detail[0].price=28442.47 전체 거래량은 Info.detail[0].amount=0.00175661 BTC 총 수수료는 Info.detail 입니다.[0].fee=0.037471745420025 usdt
평균 거래 가격 = 총 거래/ 총 거래량: 49.9623272267⁄0.00175661=28442.47 처리비율 = 총 처리비용/ 총 거래량 0.037471745420025/49.9623272267=0.00075
문제는, 위탁 금액을 거래 총액에서 다면, 이 차이는 총 수수료보다 조금 더 크다는 것입니다. 50-49.9623272267=0.0376727733 0.0376727733-0.037471745420025=0.000201028 이 차이는 어디 갔는지 모르겠어요. 아마도 주문 합치의 계산 방법과 관련이 있을 겁니다. 일반적으로 이 오류는 무시할 수 있습니다.
두 번째, 테스트 판매
(a) 테스트 코드
function main(){
var account = exchange.GetAccount();
var preAccount = account;// 판매 전의 계정 상태를 기록한다
Log(preAccount);
var id = exchange.Sell ((-1, 0.001);// 시장 가격으로 0.001 BTC를 판매
Log(id);
if(id!=null){
var order = exchange.GetOrder(id);
Log(order);
account = exchange.GetAccount (();// 판매 후의 계정 상태를 검색
Log(account);
}
}
(ii) 정보 반환 구매하기 전에, preAccount 계정 정보: { “Info”: { (이 부분의 정보는 제외) }, “Stocks”: 0.81682151, “FrozenStocks”: 0, “Balance”: 5752.887638167275, “FrozenBalance”: 204910.734651082 }
구매 후, 계정 정보: { “Info”: { (이 부분의 정보는 제외) }, “Stocks”: 0.81582151, “FrozenStocks”: 0, “Balance”: 5781.260102847275, “FrozenBalance”: 204910.734651082 }
구매 전과 후의 계정 데이터를 비교하면 다음과 같은 결과가 나타납니다. 1 계좌 잔액이 28.37246468usdt로 증가했다. 2. 동전 수 (Stocks) 가 0.001 BTC 감소했다.
order은 다음과 같이 데이터를 반환합니다. { “Info”: { “account”: “exchange”, “price”: “0.0”, “client”: “api”, “deleted”: 1609313057270, “fee_symbol”: “EVE”, “status”: “closed”, “time”: 1609313057270, “tx”: “28.39376”, “type”: “market”, “amount”: “0.001”, “detail”: [{ “time”: 1609313057270, “amount”: “0.001”, “fee”: “0.02129532”, “fee_price”: “0.0”, “fee_replace”: “0.0”, “id”: 62140121, “price”: “28393.76” }], “fee_replace”: “0.0”, “id”: 201015506, “remain”: “0.0”, “deal_amount”: “0.001”, “fee”: “0.02129532”, “market”: “BTC_USDT”, “side”: “ask” }, “Id”: 201015506, “Amount”: 0.001, “Price”: 0, “DealAmount”: 0.001, “AvgPrice”: 0, “Status”: 1, “Type”: 1, “Offset”: 0, “ContractType”: “” }
Wex.app에서 돌아온 order order 정보에 따르면, 우리는 다음과 같은 것을 발견했습니다. 1 ᆞ 주문이 완료되었고, 상태는 1 ᆞ 2, 거래된 동전 수는 0.001이며, 계좌 이전 이후의 변화 값과 일치한다. 3., wex.app 웹페이지의 역사적인 주문 정보를 비교해 보면: 전체 거래액은 28.39376 usdt입니다. 매매 평균 가격은 Info.detail[0].price=28393.76 전체 거래량은 Info.detail[0].amount=0.001 BTC 총 수수료는 Info.detail 입니다.[0].fee=0.021295325 usdt
평균 거래 가격 = 총 거래/ 총 거래량: 28.39376⁄0.0011=28393.76 처리비율 = 총 처리비용/ 총 거래량 0.021295325/28.39376=0.00075
우리는 다른 관점에서 절차 비용을 계산할 수 있습니다. 계좌 잔액의 변화값을 사용하여 거래 총액을 빼면: 28.37246468-28.39376-=-0.02129532 작은 오류가 있는데, 작은 숫자를 어냈기 때문에 무시할 수 있습니다.