Class ConfigurationClient


  • public class ConfigurationClient
    extends MetaApiClient
    metaapi.cloud CopyFactory configuration API (trade copying configuration API) client (see https://trading-api-v1.project-stock.agiliumlabs.cloud/swagger/#/)
    • Constructor Detail

      • ConfigurationClient

        public ConfigurationClient​(HttpClient httpClient,
                                   String token)
        Constructs CopyFactory configuration API client instance. Domain is set to agiliumtrade.agiliumtrade.ai
        Parameters:
        httpClient - HTTP client
        token - authorization token
      • ConfigurationClient

        public ConfigurationClient​(HttpClient httpClient,
                                   String token,
                                   String domain)
        Constructs CopyFactory configuration API client instance
        Parameters:
        httpClient - HTTP client
        token - authorization token
        domain - domain to connect to
    • Method Detail

      • generateStrategyId

        public CompletableFuture<StrategyId> generateStrategyId()
        Retrieves new unused strategy id. Method is accessible only with API access token. See https://trading-api-v1.agiliumtrade.agiliumtrade.ai/swagger/#!/default/get_users_current_configuration_unused_strategy_id
        Returns:
        completable future resolving with strategy id generated
      • generateAccountId

        public String generateAccountId()
        Generates random account id
        Returns:
        account id
      • getAccounts

        public CompletableFuture<List<CopyFactoryAccount>> getAccounts()
        Retrieves CopyFactory copy trading accounts. See https://trading-api-v1.agiliumtrade.agiliumtrade.ai/swagger/#!/default/get_users_current_configuration_accounts
        Returns:
        completable future resolving with CopyFactory accounts found
      • updateAccount

        public CompletableFuture<Void> updateAccount​(String id,
                                                     CopyFactoryAccountUpdate account)
        Updates a CopyFactory trade copying account. See https://trading-api-v1.agiliumtrade.agiliumtrade.ai/swagger/#!/default/put_users_current_configuration_accounts_accountId
        Parameters:
        id - copy trading account id
        account - trading account update
        Returns:
        completable future resolving when account is updated
      • removeAccount

        public CompletableFuture<Void> removeAccount​(String id)
        Deletes a CopyFactory trade copying account. See https://trading-api-v1.agiliumtrade.agiliumtrade.ai/swagger/#!/default/delete_users_current_configuration_accounts_accountId
        Parameters:
        id - copy trading account id
        Returns:
        completable future resolving when account is removed
      • getStrategies

        public CompletableFuture<List<CopyFactoryStrategy>> getStrategies()
        Retrieves CopyFactory copy trading strategies. See https://trading-api-v1.agiliumtrade.agiliumtrade.ai/swagger/#!/default/get_users_current_configuration_strategies
        Returns:
        completable future resolving with CopyFactory strategies found
      • updateStrategy

        public CompletableFuture<Void> updateStrategy​(String id,
                                                      CopyFactoryStrategyUpdate strategy)
        Updates a CopyFactory strategy. See https://trading-api-v1.agiliumtrade.agiliumtrade.ai/swagger/#!/default/put_users_current_configuration_strategies_strategyId
        Parameters:
        id - copy trading strategy id
        account - trading strategy update
        Returns:
        completable future resolving when strategy is updated
      • removeStrategy

        public CompletableFuture<Void> removeStrategy​(String id)
        Deletes a CopyFactory strategy. See https://trading-api-v1.agiliumtrade.agiliumtrade.ai/swagger/#!/default/delete_users_current_configuration_strategies_strategyId
        Parameters:
        id - strategy id
        Returns:
        completable future resolving when strategy is removed