mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-06-06 23:16:53 +00:00
exchanges/futures: Implement open interest (#1417)
* adds open interest to exchanges * ADDS TESTING YEAH * New endpoints, BTSE, RPCS, cached * slight design change, begin gateio You will need to get cached for each exchange that supports it * gateio, huobi, rpc * fix up kraken, cache retrieval * okx, gateio * finalising all implementations and tests * definitely my final ever commit on this * Well, well, well * final v2 * quick fix of bug * test coverage, assert notempty, test helper Added a new testhelper for currency management because its very annoying in a parallel test setting which wastes so much space otherwise * minimises REST requests for Open Interest * types.Number merge misses * Minimises Kraken REST calls * len change, value -> pointer receiver * further fixup * fixes gateio, batch calculates open interest * single gateio, lint const fixes * rejig and more thorough oi for huobi * formatting expansion * minor fix for handling expiring contracts * rm unused Binance strings * add bybit support, fix bybit issues * oopsie doopsie, dont look at my whoopsie * Fix issue, remove feature * move an irrelevant function for the pr * mini bybit upgrades * fixes cli request bug
This commit is contained in:
@@ -63,15 +63,6 @@ const (
|
||||
accountInfo = "/api/v3/account"
|
||||
marginAccountInfo = "/sapi/v1/margin/account"
|
||||
|
||||
// Withdraw API endpoints
|
||||
accountStatus = "/wapi/v3/accountStatus.html"
|
||||
systemStatus = "/wapi/v3/systemStatus.html"
|
||||
dustLog = "/wapi/v3/userAssetDribbletLog.html"
|
||||
tradeFee = "/wapi/v3/tradeFee.html"
|
||||
assetDetail = "/wapi/v3/assetDetail.html"
|
||||
undocumentedInterestHistory = "/gateway-api/v1/public/isolated-margin/pair/vip-level"
|
||||
undocumentedCrossMarginInterestHistory = "/gateway-api/v1/friendly/margin/vip/spec/list-all"
|
||||
|
||||
// Wallet endpoints
|
||||
allCoinsInfo = "/sapi/v1/capital/config/getall"
|
||||
withdrawEndpoint = "/sapi/v1/capital/withdraw/apply"
|
||||
@@ -105,8 +96,6 @@ const (
|
||||
flexibleLoanCollateralAssetsData = "/sapi/v1/loan/flexible/collateral/data"
|
||||
|
||||
defaultRecvWindow = 5 * time.Second
|
||||
|
||||
errUnexpectedPairFormat = "unexpected pair format"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -118,27 +107,6 @@ var (
|
||||
errEitherLoanOrCollateralAmountsMustBeSet = errors.New("either loan or collateral amounts must be set")
|
||||
)
|
||||
|
||||
// GetUndocumentedInterestHistory gets interest history for currency/currencies provided
|
||||
func (b *Binance) GetUndocumentedInterestHistory(ctx context.Context) (MarginInfoData, error) {
|
||||
var resp MarginInfoData
|
||||
if err := b.SendHTTPRequest(ctx, exchange.EdgeCase1, undocumentedInterestHistory, spotDefaultRate, &resp); err != nil {
|
||||
return resp, err
|
||||
}
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
// GetCrossMarginInterestHistory gets cross-margin interest history for currency/currencies provided
|
||||
func (b *Binance) GetCrossMarginInterestHistory(ctx context.Context) (CrossMarginInterestData, error) {
|
||||
var resp CrossMarginInterestData
|
||||
if err := b.SendHTTPRequest(ctx,
|
||||
exchange.EdgeCase1,
|
||||
undocumentedCrossMarginInterestHistory,
|
||||
spotDefaultRate, &resp); err != nil {
|
||||
return resp, err
|
||||
}
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
// GetExchangeInfo returns exchange information. Check binance_types for more
|
||||
// information
|
||||
func (b *Binance) GetExchangeInfo(ctx context.Context) (ExchangeInfo, error) {
|
||||
|
||||
Reference in New Issue
Block a user