mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-05-13 23:16:45 +00:00
* docs: Create new CODING_GUIDELINES doc Rids excess contribution instructions from other packages Adds AGENTS.md file for the AI overlords Rids unused templates Updates ADD_NEW_EXCHANGE.md with minor fixes * docs: Fix linter issues and minor adjustments based on Copilot feedback * docs: Update coding guidelines for API parameters and testing practices * docs: Remove redundant GoDoc references Adds copilot-instructions.md * docs: Update CODING_GUIDELINES with export recommendations and test commentary * docs: Fix formatting inconsistencies in ADD_NEW_EXCHANGE.md links * docs: Update struct naming conventions for request and response types * docs: Improve clarity and consistency in ADD_NEW_EXCHANGE.md and CODING_GUIDELINES.md * refactor: Simplify error handling in QueryOrder method
116 lines
2.5 KiB
Cheetah
116 lines
2.5 KiB
Cheetah
{{define "exchanges deribit" -}}
|
|
{{template "header" .}}
|
|
## Deribit Exchange
|
|
|
|
### Current Features
|
|
|
|
+ REST Support
|
|
+ Websocket Support
|
|
|
|
### How to enable
|
|
|
|
+ [Enable via configuration](https://github.com/thrasher-corp/gocryptotrader/tree/master/config#enable-exchange-via-config-example)
|
|
|
|
+ Individual package example below:
|
|
|
|
```go
|
|
// Exchanges will be abstracted out in further updates and examples will be
|
|
// supplied then
|
|
```
|
|
|
|
### How to do REST public/private calls
|
|
|
|
+ If enabled via "configuration".json file the exchange will be added to the
|
|
IBotExchange array in the ```go var bot Bot``` and you will only be able to use
|
|
the wrapper interface functions for accessing exchange data. View routines.go
|
|
for an example of integration usage with GoCryptoTrader. Rudimentary example
|
|
below:
|
|
|
|
main.go
|
|
```go
|
|
var d exchange.IBotExchange
|
|
|
|
for i := range bot.Exchanges {
|
|
if bot.Exchanges[i].GetName() == "Deribit" {
|
|
d = bot.Exchanges[i]
|
|
}
|
|
}
|
|
|
|
// Public calls - wrapper functions
|
|
|
|
// Fetches current ticker information
|
|
tick, err := d.UpdateTicker(...)
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
|
|
// Fetches current orderbook information
|
|
ob, err := d.UpdateOrderbook(...)
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
|
|
// Private calls - wrapper functions - make sure your APIKEY and APISECRET are
|
|
// set and AuthenticatedAPISupport is set to true
|
|
|
|
// Fetches current account information
|
|
accountInfo, err := d.GetAccountInfo()
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
```
|
|
|
|
+ If enabled via individually importing package, rudimentary example below:
|
|
|
|
```go
|
|
// Public calls
|
|
|
|
// Fetches current ticker information
|
|
tick, err := d.GetTicker()
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
|
|
// Fetches current orderbook information
|
|
ob, err := d.GetOrderBook()
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
|
|
// Private calls - make sure your APIKEY and APISECRET are set and
|
|
// AuthenticatedAPISupport is set to true
|
|
|
|
// GetUserInfo returns account info
|
|
accountInfo, err := d.GetUserInfo(...)
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
|
|
// Submits an order and the exchange and returns its tradeID
|
|
tradeID, err := d.Trade(...)
|
|
if err != nil {
|
|
// Handle error
|
|
}
|
|
```
|
|
|
|
### Subscriptions
|
|
|
|
All default subscriptions are for all enabled assets.
|
|
|
|
Default Public Subscriptions:
|
|
- Candles ( Timeframe: 1 day )
|
|
- Orderbook ( Full depth @ Interval: 100ms )
|
|
- Ticker ( Interval: 100ms )
|
|
- All Trades ( Interval: 100ms )
|
|
|
|
Default Authenticated Subscriptions:
|
|
- My Account Orders
|
|
- My Account Trades
|
|
|
|
kline.Raw Interval configurable for a raw orderbook subscription when authenticated
|
|
|
|
Subscriptions are subject to enabled assets and pairs.
|
|
|
|
{{template "donations" .}}
|
|
{{end}}
|