Files
broker/pkg/provider/cssf/cssf.go
T
zeekay f8d7400eac feat(broker): adapter stubs for sdx, adgm, securrency, cssf, euronext, xetra
Six new venue adapters for CH, AE, EU jurisdictions. Each implements
provider.Provider with all methods returning ErrNotImplemented — enough
to register, dispatch, and show up in superadmin.

- sdx: SIX Digital Exchange (Switzerland, FINMA)
- adgm: ADGM RegS venues (Abu Dhabi, FSRA)
- securrency: DFSA-licensed digital securities (Dubai DIFC)
- cssf: Luxembourg DLT securities rail (CSSF)
- euronext: Pan-EU exchange (Paris, Amsterdam, Brussels, Lisbon, Dublin, Oslo)
- xetra: Deutsche Boerse / Xetra (Germany, BaFin)
2026-04-13 12:26:09 -07:00

62 lines
4.1 KiB
Go

// Package cssf implements the broker Provider interface for CSSF-compliant
// digital securities infrastructure in Luxembourg.
package cssf
import (
"context"
"fmt"
"net/http"
"time"
"github.com/luxfi/broker/pkg/provider"
"github.com/luxfi/broker/pkg/types"
)
const (
ProdURL = "https://api.cssf-dlt.lu"
SandboxURL = "https://api.sandbox.cssf-dlt.lu"
)
type Config struct {
BaseURL string `json:"base_url"`
APIKey string `json:"-"`
APISecret string `json:"-"`
}
type Provider struct {
cfg Config
client *http.Client
}
var _ provider.Provider = (*Provider)(nil)
func New(cfg Config) *Provider {
if cfg.BaseURL == "" {
cfg.BaseURL = SandboxURL
}
return &Provider{cfg: cfg, client: &http.Client{Timeout: 30 * time.Second}}
}
func (p *Provider) Name() string { return "cssf" }
func (p *Provider) CreateAccount(_ context.Context, _ *types.CreateAccountRequest) (*types.Account, error) { return nil, fmt.Errorf("cssf: CreateAccount not implemented") }
func (p *Provider) GetAccount(_ context.Context, _ string) (*types.Account, error) { return nil, fmt.Errorf("cssf: GetAccount not implemented") }
func (p *Provider) ListAccounts(_ context.Context) ([]*types.Account, error) { return nil, fmt.Errorf("cssf: ListAccounts not implemented") }
func (p *Provider) GetPortfolio(_ context.Context, _ string) (*types.Portfolio, error) { return nil, fmt.Errorf("cssf: GetPortfolio not implemented") }
func (p *Provider) CreateOrder(_ context.Context, _ string, _ *types.CreateOrderRequest) (*types.Order, error) { return nil, fmt.Errorf("cssf: CreateOrder not implemented") }
func (p *Provider) ListOrders(_ context.Context, _ string) ([]*types.Order, error) { return nil, fmt.Errorf("cssf: ListOrders not implemented") }
func (p *Provider) GetOrder(_ context.Context, _, _ string) (*types.Order, error) { return nil, fmt.Errorf("cssf: GetOrder not implemented") }
func (p *Provider) CancelOrder(_ context.Context, _, _ string) error { return fmt.Errorf("cssf: CancelOrder not implemented") }
func (p *Provider) CreateTransfer(_ context.Context, _ string, _ *types.CreateTransferRequest) (*types.Transfer, error) { return nil, fmt.Errorf("cssf: CreateTransfer not implemented") }
func (p *Provider) ListTransfers(_ context.Context, _ string) ([]*types.Transfer, error) { return nil, fmt.Errorf("cssf: ListTransfers not implemented") }
func (p *Provider) CreateBankRelationship(_ context.Context, _, _, _, _, _ string) (*types.BankRelationship, error) { return nil, fmt.Errorf("cssf: CreateBankRelationship not implemented") }
func (p *Provider) ListBankRelationships(_ context.Context, _ string) ([]*types.BankRelationship, error) { return nil, fmt.Errorf("cssf: ListBankRelationships not implemented") }
func (p *Provider) ListAssets(_ context.Context, _ string) ([]*types.Asset, error) { return nil, fmt.Errorf("cssf: ListAssets not implemented") }
func (p *Provider) GetAsset(_ context.Context, _ string) (*types.Asset, error) { return nil, fmt.Errorf("cssf: GetAsset not implemented") }
func (p *Provider) GetSnapshot(_ context.Context, _ string) (*types.MarketSnapshot, error) { return nil, fmt.Errorf("cssf: GetSnapshot not implemented") }
func (p *Provider) GetSnapshots(_ context.Context, _ []string) (map[string]*types.MarketSnapshot, error) { return nil, fmt.Errorf("cssf: GetSnapshots not implemented") }
func (p *Provider) GetBars(_ context.Context, _, _, _, _ string, _ int) ([]*types.Bar, error) { return nil, fmt.Errorf("cssf: GetBars not implemented") }
func (p *Provider) GetLatestTrades(_ context.Context, _ []string) (map[string]*types.Trade, error) { return nil, fmt.Errorf("cssf: GetLatestTrades not implemented") }
func (p *Provider) GetLatestQuotes(_ context.Context, _ []string) (map[string]*types.Quote, error) { return nil, fmt.Errorf("cssf: GetLatestQuotes not implemented") }
func (p *Provider) GetClock(_ context.Context) (*types.MarketClock, error) { return nil, fmt.Errorf("cssf: GetClock not implemented") }
func (p *Provider) GetCalendar(_ context.Context, _, _ string) ([]*types.MarketCalendarDay, error) { return nil, fmt.Errorf("cssf: GetCalendar not implemented") }