Bitfinex

Da cryptofutures.trading.
Vai alla navigazione Vai alla ricerca

Introduzione a Bitfinex

Bitfinex è una delle piattaforme di scambio di criptovalute più rinomate e longeve nel settore, fondata nel 2012. Con sede a Hong Kong, Bitfinex si è affermata come una delle principali destinazioni per i trader che cercano di operare con futures crypto, spot trading, e altri strumenti finanziari legati alle criptovalute. La piattaforma è particolarmente apprezzata per la sua liquidità elevata, la sicurezza avanzata e l'ampia gamma# jsonrpc JSON-RPC 2.0 client and server implementation for Go.

[![GoDoc](https://godoc.org/github.com/neptulon/jsonrpc?status.svg)](https://godoc.org/github.com/neptulon/jsonrpc) [![Build Status](https://travis-ci.org/neptulon/jsonrpc.svg?branch=master)](https://travis-ci.org/neptulon/jsonrpc) [![Go Report Card](https://goreportcard.com/badge/github.com/neptulon/jsonrpc)](https://goreportcard.com/report/github.com/neptulon/jsonrpc)

    1. JSON-RPC 2.0 Specification

The JSON-RPC 2.0 specification can be found at [1](http://www.jsonrpc.org/specification).

    1. Design Goals

- Idiomatic Go API - Fully conforms to JSON-RPC 2.0 Specification - Thread safety - Extensibility - Transport layer agnostic design (can work with HTTP, WebSocket, TCP, IPC, etc.) - Test coverage - Benchmarking

    1. Features

- [x] Support for arbitrary message transports (e.g. HTTP, WebSocket, TCP, IPC, in-process Go channels, etc.) - [x] Request, response, notification, and batch message handling - [x] Customizable middleware support for connection and request handling - [x] Optional request queue for ordered request execution on a connection - [x] Dead simple type-safe API for remote method invocation and result handling - [x] Incoming request handling with optional context for storing request or connection specific values - [x] Support for custom in-memory and persistent session storage - [x] Easy access to underlying connection/net.Conn value for transport specific operations - [x] Support for custom message writers for transport specific message delivery - [x] Built-in support for WebSocket transport - [x] Built-in support for HTTP transport - [x] Built-in support for TCP transport - [x] Built-in support for in-process communication using Go channels for testing purposes - [x] Transport connection state management - [x] Optional per-connection read and write timeouts - [x] Optional per-connection read message size limits - [x] No external runtime dependencies - [x] Test coverage - [x] Benchmarking

    1. Roadmap

- [ ] Support for TLS - [ ] Client reconnection and back-off strategies for TCP and WebSocket transports - [ ] Per-message timeouts for requests - [ ] Request cancellation - [ ] Pluggable logger support - [ ] Request and response middleware - [ ] Metrics collection and reporting middleware - [ ] Authentication and authorization middleware - [ ] Request rate limiting middleware - [ ] Comprehensive examples and documentation - [ ] Performance optimizations - [ ] Fuzz testing - [ ] Load testing

    1. Quick Start

Install the package:

```bash go get github.com/neptulon/jsonrpc ```

Here is a simple client-server example:

```go package main

import ( "log"

"github.com/neptulon/jsonrpc" "github.com/neptulon/neptulon/middleware" )

func main() { // server s := jsonrpc.NewServer() s.RegisterMiddleware(middleware.Logger) s.RegisterMethod("greet", func(ctx *jsonrpc.Context) error { var name string if err := ctx.Params(&name); err != nil { return err } return ctx.Result("Greetings, "+name) })

// client c := jsonrpc.NewClient() c.RegisterMiddleware(middleware.Logger) c.Request("greet", "Rick", func(ctx *jsonrpc.ResCtx) error { var res string if err := ctx.Result(&res); err != nil { return err } log.Printf("Server responded with: %v", res) return nil })

// establish connection using in-process transport (for testing) conn, _ := s.Accept() c.Connect(conn)

// blocks until client and server are done communicating c.Wait() } ```

For more comprehensive examples, please check out the examples directory.

    1. Tests and Benchmarks

To run tests and benchmarks:

```bash go test -bench . -benchmem ```

    1. License

[MIT License](LICENSE)

Piattaforme di trading di futures consigliate

Piattaforma Caratteristiche dei futures Registrazione
Binance Futures Leva fino a 125x, contratti USDⓈ-M Registrati ora
Bybit Futures Contratti perpetui inversi Inizia a fare trading
BingX Futures Trading di copia per futures Unisciti a BingX
Bitget Futures Contratti con margine USDT Apri un conto

Unisciti alla community

Iscriviti al canale Telegram @strategybin per ulteriori informazioni. La piattaforma crypto più redditizia - registrati qui.

Partecipa alla nostra community

Iscriviti al canale Telegram @cryptofuturestrading per analisi, segnali gratuiti e altro ancora!