dougdellolio / coinbasepro-csharp

The unofficial .NET/C# client library for the Coinbase Pro/GDAX API
MIT License
193 stars 90 forks source link

Any plans to support Coinbase Advanced Trading? #306

Open godkane1 opened 1 year ago

godkane1 commented 1 year ago

Looks like the API is finally released for coinbase advanced trading. It is looking similar to what you have already done. Wondering if you plan to support.

godkane1 commented 1 year ago

Here is the API: https://docs.cloud.coinbase.com/advanced-trade-api/reference/retailbrokerageapi_getaccounts

Base URL is: https://coinbase.com/api/v3/brokerage

plmitchell2 commented 1 year ago

I am also interested in knowing if there are plans to adapt this project to the new api. If not, is anyone aware of another open source c# client that is? I built a whole platform based off this and it is broken because I cant access my profile and orders since coinbase super very kindly migrated my account to their new unfinished platform.

pridmorej commented 1 year ago

I haven't migrated yet as I'm still using this library. I've hit a brick wall though as the authenticated websocket feeds don't contain my userid, so I have to check every order id against my own list. Although this library still works, I don't see it changing unless I roll my sleeves up, take a fork and implement the changes I need. If I'm going to put that much effort in, I may as well migrate to Advanced Trading too.

godkane1 commented 1 year ago

I did end up getting it to work, just everything is slightly different. Here are the functions I implemented. The paging does not work right now on getAllOrders that I need to fix soon.

var authenticatorAdv = new Authenticator(apiKeyAdv, apiSecretAdv);

var coinbaseAdvClient = new CoinbasePro.CoinbaseProClient(authenticatorAdv);

var productTicker2 = coinbaseAdvClient.ProductsService.GetProductTickerAdvAsync();

productTicker2.Wait();

var accounts = coinbaseAdvClient.AccountsService.GetAllAccountsAdvAsync();

var fees3 = coinbaseAdvClient.FeesService.GetCurrentFeesAdvAsync();

var btcFills = coinbaseAdvClient.FillsService.GetFillsByProductIdAdvAsync("BTC-USD");

var orders2 = coinbaseAdvClient.OrdersService.CancelOrdersByIdAdvAsync(cancelOrders);

var orders2 = coinbaseAdvClient.OrdersService.GetAllOrdersAdvAsync(CoinbasePro.Services.Orders.Types.OrderStatusAdv.Open, MAX_TOTAL_ORDERS);

var orders2 = coinbaseAdvClient.OrdersService.PlaceLimitOrderAdvAsync(CoinbasePro.Services.Orders.Types.OrderSideAdv.Buy, "BTC-USD", amount3, limitPrice3);

I’m sure making a CoinbaseAdv library makes more sense at this point.

From: Jeremy @.> Sent: Thursday, April 13, 2023 2:50 PM To: dougdellolio/coinbasepro-csharp @.> Cc: godkane1 @.>; Author @.> Subject: Re: [dougdellolio/coinbasepro-csharp] Any plans to support Coinbase Advanced Trading? (Issue #306)

I haven't migrated yet as I'm still using this library. I've hit a brick wall though as the authenticated websocket feeds don't contain my userid, so I have to check every order id against my own list. Although this library still works, I don't see it changing unless I roll my sleeves up, take a fork and implement the changes I need. If I'm going to put that much effort in, I may as well migrate to Advanced Trading too.

— Reply to this email directly, view it on GitHub https://github.com/dougdellolio/coinbasepro-csharp/issues/306#issuecomment-1507460132 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AV7JMY2FWZI7724O53LLISLXBBDGLANCNFSM6AAAAAASWXNJRE . You are receiving this because you authored the thread. https://github.com/notifications/beacon/AV7JMY4DTPDLTKKICRHMSXLXBBDGLA5CNFSM6AAAAAASWXNJRGWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSZ3ICCI.gif Message ID: @. @.> >