(Exchange) Add GetHistoricCandles() & GetHistoricCandlesEx() support to exchanges (#479)

* implemented binance and bitfinex GetHistoricCandles wrapper methods)

* coinbene supported added

* after and before clean up

* gateio wrapper completed

* merged upstream/master

* Added bsaic KlineIntervalSupported() method

* Converted binance fixed test

* WIP

* new KlineConvertToExchangeStandardString method added

* end of day WIP

* WIP

* end of day WIP started migration of trade history

* added kline support to hitbtc huobi lbank

* added exchangehistory to all supported exchanges started work on coinbase 300 candles/request method

* end of day WIP

* removed unused ta and misc changes to flag ready for review

* yobit cleanup

* revert coinbase changES

* general code clean up and added zb support

* poloniex support added

* renamed method to FormatExchangeKlineInterval other misc fixes

* linter fixes

* linter fixes

* removed verbose

* fixed poloniex test coverage

* revert poloniex mock data

* regenerated poloniex mock data

* a very verbose clean up

* binance mock clean up

* removed unneeded t.Log()

* setting verbose to true to debug CI issue

* first pass changes addressed

* common.ErrNotYetImplemented implemented :D

* comments added

* WIP-addressed exchange requests and reverted previous GetExchangeHistory changes

* WIP-addressed exchange requests and reverted previous GetExchangeHistory changes

* increased test coverage added kraken support

* OKGroup support completed started work on address GetExchangeHistory feedback and migrating to own PR under https://github.com/xtda/gocryptotrader/tree/exchange_history

* convert zb ratelimits

* gofmt run on okcoin

* increased delay on rate limit

* gofmt package

* fixed panic with coinbene and bithumb if conversion fails

* very broken end of day WIP

* added support for GetHistoricCandlesEx to coinbase and binance

* gofmt package

* coinbase, btcmarkets, zb ex wrapper function added

* added all exchange support for ex regenerated mock data

* update bithumb to return wrapper method

* gofmt package

* end of day started work on changes

* reworked test coverage added okgroup support general fixes/change requests addressed

* Added OneMonth

* limit checks on supportedexchanges

* reverted getexchangehistory

* reworked binance tesT

* added workaround for kraken panic

* renamed command to extended removed interval check on non-implemented commands

* added wrapperconfig back

* increased test coverage for FormatExchangeKlineInterval

* WIP

* increased test coverage for FormatExchangeKlineInterval bitfinex/gateio/huobi

* linter fixes

* zb kraken lbank coinbene btcmarkets support added

* removed verbose

* OK group support for other asset types added

* swapped margin to use spot endpoint

* index support added test coverage added for asset types

* added asset type to okcoin test

* gofmt

* add asset to extended method

* removed verbose

* add support for coinbene swap increase test coverage

* removed verbose

* small clean up of okgroup wrapper functions

* verbose to troubleshoot CI issues

* removed verbose

* added error check reverted coinbasechanges

* readme updated

* removed unused start/finish started work on decoupling api requests from kline package

* restructured coinbene, bithumb methods, added bitstamp support

* kraken time fix

* BTCMarkets restructure

* typo fix

* removed test for futures due to contact changing

* added start/end date to extended method over range

* converted to assettranslator

* removed verbose

* removed invalid char

* reverted incorrectly removed return

* added import

* further template updates

* macos hates my keyboard :D

* misc canges

* x -> i

* removed verbose

* updated fixCasing to allocate var before checks

* removed time conversion

* sort all outgoing kline candles

* fixCasing fix

* after/before checks added

* added parallel to test

* logic check on BTCmarkets

* removed unused param, used correct iterator

* converted HitBTC to use time.Time

* add iszero false check to candle times

* updated resultlimit to 5000

* new line added

* added comment to exported const

* use configured ratelimit

* fixed pair for test

* panic fixed WIP on fixCasing

* fixCasing rework, started work on readme docs

* enable rate limiter for wrapper issues tool

* docs updated

* removed err from return and formatted currency

* updated Yobit supported status

* Updated HitBTC to use onehour candles due to test exeuction times

* added further details to gctcli output

* added link to docs

* added link to tempalte

* disable FTX websocket in config_example

* fix poloneix

* regenerated poloniex mock data

* removed recording flag
This commit is contained in:
Andrew
2020-07-08 10:51:54 +10:00
committed by GitHub
parent c2c200cd1b
commit 4a736fb335
112 changed files with 52287 additions and 12550 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -91,7 +91,10 @@ func local_request_GoCryptoTrader_EnableSubsystem_0(ctx context.Context, marshal
var protoReq GenericSubsystemRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_EnableSubsystem_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_EnableSubsystem_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -124,7 +127,10 @@ func local_request_GoCryptoTrader_DisableSubsystem_0(ctx context.Context, marsha
var protoReq GenericSubsystemRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_DisableSubsystem_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_DisableSubsystem_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -193,7 +199,10 @@ func local_request_GoCryptoTrader_GetExchanges_0(ctx context.Context, marshaler
var protoReq GetExchangesRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GetExchanges_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GetExchanges_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -260,7 +269,10 @@ func local_request_GoCryptoTrader_GetExchangeInfo_0(ctx context.Context, marshal
var protoReq GenericExchangeNameRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GetExchangeInfo_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GetExchangeInfo_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -293,7 +305,10 @@ func local_request_GoCryptoTrader_GetExchangeOTPCode_0(ctx context.Context, mars
var protoReq GenericExchangeNameRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GetExchangeOTPCode_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GetExchangeOTPCode_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -482,7 +497,10 @@ func local_request_GoCryptoTrader_GetAccountInfo_0(ctx context.Context, marshale
var protoReq GetAccountInfoRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GetAccountInfo_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GetAccountInfo_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -1263,7 +1281,10 @@ func local_request_GoCryptoTrader_GetLoggerDetails_0(ctx context.Context, marsha
var protoReq GetLoggerDetailsRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GetLoggerDetails_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GetLoggerDetails_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -1544,7 +1565,10 @@ func local_request_GoCryptoTrader_GetAuditEvent_0(ctx context.Context, marshaler
var protoReq GetAuditEventRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GetAuditEvent_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GetAuditEvent_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -1577,7 +1601,10 @@ func local_request_GoCryptoTrader_GCTScriptExecute_0(ctx context.Context, marsha
var protoReq GCTScriptExecuteRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GCTScriptExecute_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GCTScriptExecute_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -1696,7 +1723,10 @@ func local_request_GoCryptoTrader_GCTScriptQuery_0(ctx context.Context, marshale
var protoReq GCTScriptQueryRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GCTScriptQuery_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GCTScriptQuery_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@@ -1865,7 +1895,10 @@ func local_request_GoCryptoTrader_GetHistoricCandles_0(ctx context.Context, mars
var protoReq GetHistoricCandlesRequest
var metadata runtime.ServerMetadata
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_GoCryptoTrader_GetHistoricCandles_0); err != nil {
if err := req.ParseForm(); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_GoCryptoTrader_GetHistoricCandles_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}

View File

@@ -606,10 +606,16 @@ message GetHistoricCandlesRequest {
int64 start = 4;
int64 end = 5;
int64 time_interval = 6;
bool ex_request = 7;
}
message GetHistoricCandlesResponse {
repeated Candle candle =1;
string exchange = 1;
CurrencyPair pair = 2;
int64 start = 3;
int64 end = 4;
string interval = 6;
repeated Candle candle = 5;
}
message Candle {

View File

@@ -13,7 +13,7 @@
"paths": {
"/v1/addevent": {
"post": {
"operationId": "AddEvent",
"operationId": "GoCryptoTrader_AddEvent",
"responses": {
"200": {
"description": "A successful response.",
@@ -45,7 +45,7 @@
},
"/v1/addportfolioaddress": {
"post": {
"operationId": "AddPortfolioAddress",
"operationId": "GoCryptoTrader_AddPortfolioAddress",
"responses": {
"200": {
"description": "A successful response.",
@@ -77,7 +77,7 @@
},
"/v1/cancelallorders": {
"post": {
"operationId": "CancelAllOrders",
"operationId": "GoCryptoTrader_CancelAllOrders",
"responses": {
"200": {
"description": "A successful response.",
@@ -109,7 +109,7 @@
},
"/v1/cancelorder": {
"post": {
"operationId": "CancelOrder",
"operationId": "GoCryptoTrader_CancelOrder",
"responses": {
"200": {
"description": "A successful response.",
@@ -141,7 +141,7 @@
},
"/v1/disableexchange": {
"post": {
"operationId": "DisableExchange",
"operationId": "GoCryptoTrader_DisableExchange",
"responses": {
"200": {
"description": "A successful response.",
@@ -173,7 +173,7 @@
},
"/v1/disableexchangepair": {
"post": {
"operationId": "DisableExchangePair",
"operationId": "GoCryptoTrader_DisableExchangePair",
"responses": {
"200": {
"description": "A successful response.",
@@ -205,7 +205,7 @@
},
"/v1/disablesubsystem": {
"get": {
"operationId": "DisableSubsystem",
"operationId": "GoCryptoTrader_DisableSubsystem",
"responses": {
"200": {
"description": "A successful response.",
@@ -235,7 +235,7 @@
},
"/v1/enableexchange": {
"post": {
"operationId": "EnableExchange",
"operationId": "GoCryptoTrader_EnableExchange",
"responses": {
"200": {
"description": "A successful response.",
@@ -267,7 +267,7 @@
},
"/v1/enableexchangepair": {
"post": {
"operationId": "EnableExchangePair",
"operationId": "GoCryptoTrader_EnableExchangePair",
"responses": {
"200": {
"description": "A successful response.",
@@ -299,7 +299,7 @@
},
"/v1/enablesubsystem": {
"get": {
"operationId": "EnableSubsystem",
"operationId": "GoCryptoTrader_EnableSubsystem",
"responses": {
"200": {
"description": "A successful response.",
@@ -329,7 +329,7 @@
},
"/v1/gctscript/autoload": {
"post": {
"operationId": "GCTScriptAutoLoadToggle",
"operationId": "GoCryptoTrader_GCTScriptAutoLoadToggle",
"responses": {
"200": {
"description": "A successful response.",
@@ -361,7 +361,7 @@
},
"/v1/gctscript/execute": {
"get": {
"operationId": "GCTScriptExecute",
"operationId": "GoCryptoTrader_GCTScriptExecute",
"responses": {
"200": {
"description": "A successful response.",
@@ -409,7 +409,7 @@
},
"/v1/gctscript/query": {
"get": {
"operationId": "GCTScriptQuery",
"operationId": "GoCryptoTrader_GCTScriptQuery",
"responses": {
"200": {
"description": "A successful response.",
@@ -457,7 +457,7 @@
},
"/v1/gctscript/read": {
"post": {
"operationId": "GCTScriptReadScript",
"operationId": "GoCryptoTrader_GCTScriptReadScript",
"responses": {
"200": {
"description": "A successful response.",
@@ -489,7 +489,7 @@
},
"/v1/gctscript/status": {
"get": {
"operationId": "GCTScriptStatus",
"operationId": "GoCryptoTrader_GCTScriptStatus",
"responses": {
"200": {
"description": "A successful response.",
@@ -511,7 +511,7 @@
},
"/v1/gctscript/stop": {
"post": {
"operationId": "GCTScriptListAll",
"operationId": "GoCryptoTrader_GCTScriptListAll",
"responses": {
"200": {
"description": "A successful response.",
@@ -543,7 +543,7 @@
},
"/v1/gctscript/upload": {
"post": {
"operationId": "GCTScriptUpload",
"operationId": "GoCryptoTrader_GCTScriptUpload",
"responses": {
"200": {
"description": "A successful response.",
@@ -575,7 +575,7 @@
},
"/v1/getaccountinfo": {
"get": {
"operationId": "GetAccountInfo",
"operationId": "GoCryptoTrader_GetAccountInfo",
"responses": {
"200": {
"description": "A successful response.",
@@ -605,7 +605,7 @@
},
"/v1/getaccountinfostream": {
"get": {
"operationId": "GetAccountInfoStream",
"operationId": "GoCryptoTrader_GetAccountInfoStream",
"responses": {
"200": {
"description": "A successful response.(streaming responses)",
@@ -644,7 +644,7 @@
},
"/v1/getauditevent": {
"get": {
"operationId": "GetAuditEvent",
"operationId": "GoCryptoTrader_GetAuditEvent",
"responses": {
"200": {
"description": "A successful response.",
@@ -700,7 +700,7 @@
},
"/v1/getcommunicationrelayers": {
"get": {
"operationId": "GetCommunicationRelayers",
"operationId": "GoCryptoTrader_GetCommunicationRelayers",
"responses": {
"200": {
"description": "A successful response.",
@@ -722,7 +722,7 @@
},
"/v1/getconfig": {
"get": {
"operationId": "GetConfig",
"operationId": "GoCryptoTrader_GetConfig",
"responses": {
"200": {
"description": "A successful response.",
@@ -744,7 +744,7 @@
},
"/v1/getcryptodepositaddress": {
"post": {
"operationId": "GetCryptocurrencyDepositAddress",
"operationId": "GoCryptoTrader_GetCryptocurrencyDepositAddress",
"responses": {
"200": {
"description": "A successful response.",
@@ -776,7 +776,7 @@
},
"/v1/getcryptodepositaddresses": {
"post": {
"operationId": "GetCryptocurrencyDepositAddresses",
"operationId": "GoCryptoTrader_GetCryptocurrencyDepositAddresses",
"responses": {
"200": {
"description": "A successful response.",
@@ -808,7 +808,7 @@
},
"/v1/getevents": {
"get": {
"operationId": "GetEvents",
"operationId": "GoCryptoTrader_GetEvents",
"responses": {
"200": {
"description": "A successful response.",
@@ -830,7 +830,7 @@
},
"/v1/getexchangeinfo": {
"get": {
"operationId": "GetExchangeInfo",
"operationId": "GoCryptoTrader_GetExchangeInfo",
"responses": {
"200": {
"description": "A successful response.",
@@ -860,7 +860,7 @@
},
"/v1/getexchangeorderbookstream": {
"get": {
"operationId": "GetExchangeOrderbookStream",
"operationId": "GoCryptoTrader_GetExchangeOrderbookStream",
"responses": {
"200": {
"description": "A successful response.(streaming responses)",
@@ -899,7 +899,7 @@
},
"/v1/getexchangeotp": {
"get": {
"operationId": "GetExchangeOTPCode",
"operationId": "GoCryptoTrader_GetExchangeOTPCode",
"responses": {
"200": {
"description": "A successful response.",
@@ -929,7 +929,7 @@
},
"/v1/getexchangeotps": {
"get": {
"operationId": "GetExchangeOTPCodes",
"operationId": "GoCryptoTrader_GetExchangeOTPCodes",
"responses": {
"200": {
"description": "A successful response.",
@@ -951,7 +951,7 @@
},
"/v1/getexchangepairs": {
"post": {
"operationId": "GetExchangePairs",
"operationId": "GoCryptoTrader_GetExchangePairs",
"responses": {
"200": {
"description": "A successful response.",
@@ -983,7 +983,7 @@
},
"/v1/getexchanges": {
"get": {
"operationId": "GetExchanges",
"operationId": "GoCryptoTrader_GetExchanges",
"responses": {
"200": {
"description": "A successful response.",
@@ -1014,7 +1014,7 @@
},
"/v1/getexchangetickerstream": {
"get": {
"operationId": "GetExchangeTickerStream",
"operationId": "GoCryptoTrader_GetExchangeTickerStream",
"responses": {
"200": {
"description": "A successful response.(streaming responses)",
@@ -1053,7 +1053,7 @@
},
"/v1/getforexproviders": {
"get": {
"operationId": "GetForexProviders",
"operationId": "GoCryptoTrader_GetForexProviders",
"responses": {
"200": {
"description": "A successful response.",
@@ -1075,7 +1075,7 @@
},
"/v1/getforexrates": {
"get": {
"operationId": "GetForexRates",
"operationId": "GoCryptoTrader_GetForexRates",
"responses": {
"200": {
"description": "A successful response.",
@@ -1097,7 +1097,7 @@
},
"/v1/gethistoriccandles": {
"get": {
"operationId": "GetHistoricCandles",
"operationId": "GoCryptoTrader_GetHistoricCandles",
"responses": {
"200": {
"description": "A successful response.",
@@ -1163,6 +1163,13 @@
"required": false,
"type": "string",
"format": "int64"
},
{
"name": "ex_request",
"in": "query",
"required": false,
"type": "boolean",
"format": "boolean"
}
],
"tags": [
@@ -1172,7 +1179,7 @@
},
"/v1/getinfo": {
"get": {
"operationId": "GetInfo",
"operationId": "GoCryptoTrader_GetInfo",
"responses": {
"200": {
"description": "A successful response.",
@@ -1194,7 +1201,7 @@
},
"/v1/getloggerdetails": {
"get": {
"operationId": "GetLoggerDetails",
"operationId": "GoCryptoTrader_GetLoggerDetails",
"responses": {
"200": {
"description": "A successful response.",
@@ -1224,7 +1231,7 @@
},
"/v1/getorder": {
"post": {
"operationId": "GetOrder",
"operationId": "GoCryptoTrader_GetOrder",
"responses": {
"200": {
"description": "A successful response.",
@@ -1256,7 +1263,7 @@
},
"/v1/getorderbook": {
"post": {
"operationId": "GetOrderbook",
"operationId": "GoCryptoTrader_GetOrderbook",
"responses": {
"200": {
"description": "A successful response.",
@@ -1288,7 +1295,7 @@
},
"/v1/getorderbooks": {
"get": {
"operationId": "GetOrderbooks",
"operationId": "GoCryptoTrader_GetOrderbooks",
"responses": {
"200": {
"description": "A successful response.",
@@ -1310,7 +1317,7 @@
},
"/v1/getorderbookstream": {
"get": {
"operationId": "GetOrderbookStream",
"operationId": "GoCryptoTrader_GetOrderbookStream",
"responses": {
"200": {
"description": "A successful response.(streaming responses)",
@@ -1373,7 +1380,7 @@
},
"/v1/getorders": {
"post": {
"operationId": "GetOrders",
"operationId": "GoCryptoTrader_GetOrders",
"responses": {
"200": {
"description": "A successful response.",
@@ -1405,7 +1412,7 @@
},
"/v1/getportfolio": {
"get": {
"operationId": "GetPortfolio",
"operationId": "GoCryptoTrader_GetPortfolio",
"responses": {
"200": {
"description": "A successful response.",
@@ -1427,7 +1434,7 @@
},
"/v1/getportfoliosummary": {
"get": {
"operationId": "GetPortfolioSummary",
"operationId": "GoCryptoTrader_GetPortfolioSummary",
"responses": {
"200": {
"description": "A successful response.",
@@ -1449,7 +1456,7 @@
},
"/v1/getrpcendpoints": {
"get": {
"operationId": "GetRPCEndpoints",
"operationId": "GoCryptoTrader_GetRPCEndpoints",
"responses": {
"200": {
"description": "A successful response.",
@@ -1471,7 +1478,7 @@
},
"/v1/getsubsystems": {
"get": {
"operationId": "GetSubsystems",
"operationId": "GoCryptoTrader_GetSubsystems",
"responses": {
"200": {
"description": "A successful response.",
@@ -1493,7 +1500,7 @@
},
"/v1/getticker": {
"post": {
"operationId": "GetTicker",
"operationId": "GoCryptoTrader_GetTicker",
"responses": {
"200": {
"description": "A successful response.",
@@ -1525,7 +1532,7 @@
},
"/v1/gettickers": {
"get": {
"operationId": "GetTickers",
"operationId": "GoCryptoTrader_GetTickers",
"responses": {
"200": {
"description": "A successful response.",
@@ -1547,7 +1554,7 @@
},
"/v1/gettickerstream": {
"get": {
"operationId": "GetTickerStream",
"operationId": "GoCryptoTrader_GetTickerStream",
"responses": {
"200": {
"description": "A successful response.(streaming responses)",
@@ -1610,7 +1617,7 @@
},
"/v1/removeevent": {
"post": {
"operationId": "RemoveEvent",
"operationId": "GoCryptoTrader_RemoveEvent",
"responses": {
"200": {
"description": "A successful response.",
@@ -1642,7 +1649,7 @@
},
"/v1/removeportfolioaddress": {
"post": {
"operationId": "RemovePortfolioAddress",
"operationId": "GoCryptoTrader_RemovePortfolioAddress",
"responses": {
"200": {
"description": "A successful response.",
@@ -1674,7 +1681,7 @@
},
"/v1/setloggerdetails": {
"post": {
"operationId": "SetLoggerDetails",
"operationId": "GoCryptoTrader_SetLoggerDetails",
"responses": {
"200": {
"description": "A successful response.",
@@ -1706,7 +1713,7 @@
},
"/v1/simulateorder": {
"post": {
"operationId": "SimulateOrder",
"operationId": "GoCryptoTrader_SimulateOrder",
"responses": {
"200": {
"description": "A successful response.",
@@ -1738,7 +1745,7 @@
},
"/v1/submitorder": {
"post": {
"operationId": "SubmitOrder",
"operationId": "GoCryptoTrader_SubmitOrder",
"responses": {
"200": {
"description": "A successful response.",
@@ -1770,7 +1777,7 @@
},
"/v1/whalebomb": {
"post": {
"operationId": "WhaleBomb",
"operationId": "GoCryptoTrader_WhaleBomb",
"responses": {
"200": {
"description": "A successful response.",
@@ -1802,7 +1809,7 @@
},
"/v1/withdrawaleventbydate": {
"post": {
"operationId": "WithdrawalEventsByDate",
"operationId": "GoCryptoTrader_WithdrawalEventsByDate",
"responses": {
"200": {
"description": "A successful response.",
@@ -1834,7 +1841,7 @@
},
"/v1/withdrawaleventbyid": {
"post": {
"operationId": "WithdrawalEventsByExchange",
"operationId": "GoCryptoTrader_WithdrawalEventsByExchange",
"responses": {
"200": {
"description": "A successful response.",
@@ -1866,7 +1873,7 @@
},
"/v1/withdrawfiatfunds": {
"post": {
"operationId": "WithdrawFiatFunds",
"operationId": "GoCryptoTrader_WithdrawFiatFunds",
"responses": {
"200": {
"description": "A successful response.",
@@ -1898,7 +1905,7 @@
},
"/v1/withdrawithdrawcryptofundswfiatfunds": {
"post": {
"operationId": "WithdrawCryptocurrencyFunds",
"operationId": "GoCryptoTrader_WithdrawCryptocurrencyFunds",
"responses": {
"200": {
"description": "A successful response.",
@@ -2653,6 +2660,23 @@
"gctrpcGetHistoricCandlesResponse": {
"type": "object",
"properties": {
"exchange": {
"type": "string"
},
"pair": {
"$ref": "#/definitions/gctrpcCurrencyPair"
},
"start": {
"type": "string",
"format": "int64"
},
"end": {
"type": "string",
"format": "int64"
},
"interval": {
"type": "string"
},
"candle": {
"type": "array",
"items": {