Interface Exchange

    • Method Detail

      • getExchangeSpecification

        ExchangeSpecification getExchangeSpecification()
        Returns:
        The ExchangeSpecification in use for this exchange
      • getExchangeMetaData

        ExchangeMetaData getExchangeMetaData()
        The Meta Data defining some semi-static properties of an exchange such as currency pairs, trading fees, etc.
        Returns:
        The exchange's meta data
      • getExchangeSymbols

        List<CurrencyPair> getExchangeSymbols()
        Returns a list of CurrencyPair objects. This list can either come originally from a loaded json file or from a remote call if the implementation override's the `remoteInit` method.
        Returns:
        The exchange's symbols
      • getNonceFactory

        si.mazi.rescu.SynchronizedValueFactory<Long> getNonceFactory()
        The nonce factory used to create a nonce value. Allows services to accept a placeholder that is replaced with generated value just before message is serialized and sent. If a method of a rest accepts ValueFactory as a parameter, it's evaluated, the message is serialized and sent in a single synchronized block.
        Returns:
        Synchronized value factory
      • getResilienceRegistries

        default ResilienceRegistries getResilienceRegistries()
        resilience4j registries with retry strategies, rate limiters, etc. used for this exchange.
        Returns:
        resilience4j registries
        Throws:
        NotYetImplementedForExchangeException - if the exchange module does not support resilience features
      • getDefaultExchangeSpecification

        ExchangeSpecification getDefaultExchangeSpecification()
        Returns:
        A default ExchangeSpecification to use during the creation process if one is not supplied
      • getMarketDataService

        MarketDataService getMarketDataService()
        A market data service typically consists of a regularly updated list of the available prices for the various symbols

        This is the non-streaming (blocking) version of the service

        Returns:
        The exchange's market data service
      • getTradeService

        TradeService getTradeService()
        An trade service typically provides access to trading functionality

        Typically access is restricted by a secret API key and/or username password authentication which are usually provided in the ExchangeSpecification

        Returns:
        The exchange's trade service
      • getAccountService

        AccountService getAccountService()
        An account service typically provides access to the user's private exchange data

        Typically access is restricted by a secret API key and/or username password authentication which are usually provided in the ExchangeSpecification

        Returns:
        The exchange's account service