LeeChunHao2000 / dexlab-api-wrapper-python3

DexLab exchange API wrapper in python3
MIT License
11 stars 4 forks source link

place order失敗率高的問題。 #3

Closed God-Ray closed 5 months ago

God-Ray commented 3 years ago

使用api下單總是要多次嘗試才能成功,最常見的是“429 too many requests", 而且還有重複下單的問題,代碼顯示只成功一次,但是實際上可能同樣的單子下了兩次,請問如何解決。

LeeChunHao2000 commented 3 years ago

你好,這可能是因為網路環境或者短時間下單超過 Dexlab API Rates Limit 限制。此外 Dexlab 的下單功能即將被棄用,建議可以改用 pyserum 去下單。

[Deprecated] https://docs.dexlab.space/api-documentation/rest-api/wallet-api https://docs.dexlab.space/api-documentation/rest-api/order-api

God-Ray commented 3 years ago

感謝回復,我的下單頻率並不算高,頻率最高時幾秒鐘每單,這在中心化交易所從沒受到過限制,最困擾我的還是這個雙重下單問題,多次失敗后成功下單有時會出現兩個訂單,我考慮的是下單后返回False也有可能下單成功,我覺得這很可能跟dxl這邊的服務器有關。 還有一個問題請教一下,您發的這個pyserum我剛看了下,發現dxl上的orderbook和serum上的竟然完全相同,是不是我改用serum的api下單也是一樣的效果呢,還有serum的api會不會好用一點。

------------------ 原始邮件 ------------------ 发件人: "LeeChunHao2000/dexlab-api-wrapper-python3" @.>; 发送时间: 2021年10月9日(星期六) 下午4:48 @.>; @.**@.>; 主题: Re: [LeeChunHao2000/dexlab-api-wrapper-python3] place order失敗率高的問題。 (#3)

你好,這可能是因為網路環境或者短時間下單超過rates limit限制。可以參考以下兩篇FTX的公告:

https://docs.ftx.com/#rate-limits https://help.ftx.com/hc/en-us/articles/360052595091-2020-11-20-Ratelimit-Updates

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

LeeChunHao2000 commented 3 years ago

這樣看起來應該是 Dexlab 伺服器的問題,此外他的 Working Flow 你私鑰 -> Dexlab 伺服器 -> 簽章下單到鏈上,不如直接用 pyserum 本地簽章送鏈上就好,速度也會比較快一點。

另外,現階段 solana 上所有的 spot market 底層都是用 serum 喔,orderbook 都是共享的!所以不論你是直接從鏈上爬資料、用 Bonfida API 又或者是用 Dexlab api 最終結果都是一樣的,我個人是偏好直接從鏈上要資料,不過你可以自己測試一下 latency 看哪個比較快。

God-Ray commented 3 years ago

好的,非常感謝。我去研究一下您發的pyserum。

------------------ 原始邮件 ------------------ 发件人: "LeeChunHao2000/dexlab-api-wrapper-python3" @.>; 发送时间: 2021年10月9日(星期六) 晚上8:54 @.>; @.**@.>; 主题: Re: [LeeChunHao2000/dexlab-api-wrapper-python3] place order失敗率高的問題。 (#3)

這樣看起來應該是 Dexlab 伺服器的問題,此外他的 Working Flow 你私鑰 -> Dexlab 伺服器 -> 簽章下單到鏈上 ,不如直接用 pyserum 本地簽章送鏈上就好,速度也會比較快一點。

另外,現階段 solana 上所有的 spot market 底層都是用 serum 喔,orderbook 都是共享的!所以不論你是直接從鏈上爬資料、用 Bonfida API 又或者是用 Dexlab api 最終結果都是一樣的,我個人是偏好直接從鏈上要資料,不過你可以自己測試一下 latency 看哪個比較快。

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.