Api

BTC-e API流程

  • October 2, 2015

我正在通過API送出Sell交易,返回的orderid為0。看來交易成功了,調整後的資金通過響應返回。所以看起來交易是立即發生的。

我最初擔心訂單需要一段時間並且必須檢查以了解訂單何時完成。我正計劃設置一個計時器來查看我的交易歷史,以便為我送出的交易尋找匹配的 orderid。

所以三個問題:

  1. 當交易呼叫被返回時,訂單是否總是完成,所以我可以跳過檢查訂單和

2)如果它確實返回一個非零的 OrderID,這是否意味著訂單不完整,我需要進行定時檢查?

最後,這些答案是否同樣適用於買入訂單?

謝謝您的幫助。我非常了解 API,但不了解底層交換功能的方式。

我想我已經能夠回答我自己的問題了。我所做的是使用 API 下訂單,但我知道通過將價格設置得非常低/高不會成功。

因為訂單沒有立即處理,所以它向我返回了一個非零的 OrderID。

使用 API 我檢查了我的訂單列表,訂單顯示在那裡。所以基本上,如果訂單返回一個非零的 OrderID,只要訂單仍然出現在 OrderList 中,它就會一直打開。

  1. 不,當您的交易請求被退回時,訂單不一定完整。嘗試發布一個在書中非常遙遠的限價單。你猜對了……只有當它返回零時,訂單才會立即完成。如果它需要更長的時間才能完成,它將被填充而不會返回 0,在這種情況下,您需要檢查您的交易或您的活動訂單,以便知道它何時被填充。其中之一與監控您的餘額相結合應該可以解決問題。所以喬恩史蒂文斯是錯誤的順便說一句,因為將您的餘額資訊與您的活動訂單結合使用可以很容易確定。

  2. 是的。

是的,購買也是如此。

需要注意的一件事是,假設您想在其他交易所實施類似的檢查,您必須小心在未結訂單和正常餘額之間分配餘額的慣例。例如,像 campbx 這樣的交易所會區分你的流動比特幣和你的總比特幣,因此你可以很容易地看到有多少被捆綁在訂單中。但是,在 btce 上你只有一個指標,所以當你的 btc 突然下跌時,你知道這是因為你輸入了一個訂單。如果你使用餘額作為交易的標誌,你必須小心不要將取消的賣單誤認為買單,因為兩者都會導致你的 btc 突然跳起來。為了做出這種區分,這將有助於同時監控您的 btc 的變化和您的美元(或您購買的任何貨幣)的變化。兩者同時變化即為交易,只有一個變化即為btc充值或註銷。你需要更多的標誌來區分後兩者。

總的來說,我發現即使您認為沒有必要,您也應該找到一種方法來使用來自 API 的外生資訊來確認您觸發或期望的每個操作。與 api 的每次不同互動在數據中都有一個唯一的簽名(您只需要查明它,有時在 BTC-E 等 API 上的數據有限),因此最佳實踐是在您觸發或預期任何操作之後,確保在您繼續之前,它會通過一些獨特的簽名得到確認。它將使調試變得更加容易,因為它可以確保您的程序狀態確實是您認為的那樣。

希望有幫助。

引用自:https://bitcoin.stackexchange.com/questions/10951