Example #1
0
        public async Task <XCommasResponse <GridBot> > EnableGridBotAsync(int gridBotId)
        {
            var path = $"{BaseAddress}/ver1/grid_bots/{gridBotId}/enable";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <GridBot>(request).ConfigureAwait(false));
            }
        }
Example #2
0
        public async Task <XCommasResponse <PieChartPiece[]> > GetPieChartDataAsync(int accountId)
        {
            var path = $"{BaseAddress}/ver1/accounts/{accountId}/pie_chart_data";

            using (var request = XCommasRequest.Post(path).Sign(this))
            {
                return(await this.GetResponse <PieChartPiece[]>(request).ConfigureAwait(false));
            }
        }
Example #3
0
        public async Task <XCommasResponse <string> > RemoveAccountAsync(int accountId)
        {
            var path = $"{BaseAddress}/ver1/accounts/{accountId}/remove";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <string>(request).ConfigureAwait(false));
            }
        }
Example #4
0
        public async Task <XCommasResponse <SmartTrade> > AddFundsToSmartTradeAsync(int id, AddFundsToSmartTradeParams param)
        {
            var path = $"{BaseAddress}/v2/smart_trades/{id}/add_funds";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(param).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <SmartTrade>(request).ConfigureAwait(false));
            }
        }
Example #5
0
        public async Task <XCommasResponse <Account> > LoadBalancesAsync(int accountId)
        {
            var path = $"{BaseAddress}/ver1/accounts/{accountId}/load_balances";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <Account>(request).ConfigureAwait(false));
            }
        }
Example #6
0
        public async Task <XCommasResponse <bool> > DeleteBotAsync(int botId)
        {
            var path = $"{BaseAddress}/ver1/bots/{botId}/delete";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <bool>(request).ConfigureAwait(false));
            }
        }
Example #7
0
        public async Task <XCommasResponse <SmartTrade> > CreateSmartTradeAsync(SmartTradeCreateRequest createRequest)
        {
            var path = $"{BaseAddress}/v2/smart_trades";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(createRequest).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <SmartTrade>(request).ConfigureAwait(false));
            }
        }
Example #8
0
        public async Task <XCommasResponse <Deal> > PanicSellDealAsync(int dealId)
        {
            var path = $"{BaseAddress}/ver1/deals/{dealId}/panic_sell";

            using (var request = XCommasRequest.Post(path).Sign(this))
            {
                return(await this.GetResponse <Deal>(request).ConfigureAwait(false));
            }
        }
Example #9
0
        public async Task <XCommasResponse <bool> > ChangeUserModeAsync(UserMode userMode)
        {
            var path = $"{BaseAddress}/ver1/users/change_mode?mode={userMode.GetEnumMemberAttrValue()}";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <bool>(request).ConfigureAwait(false));
            }
        }
Example #10
0
        public async Task <XCommasResponse <SmartTradeStep> > AddFundsToSmartTradeAsync(SmartTradeAddFundsParameters data)
        {
            var path = $"{BaseAddress}/ver1/smart_trades/{data.SmartTradeId}/add_funds";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(data).Sign(this))
            {
                return(await this.GetResponse <SmartTradeStep>(request).ConfigureAwait(false));
            }
        }
Example #11
0
        public async Task <XCommasResponse <SmartTrade> > CancelSmartTradeOrderAsync(int smartTradeId, int stepId)
        {
            var path = $"{BaseAddress}/ver1/smart_trades/{smartTradeId}/cancel_order?step_id={stepId}";

            using (var request = XCommasRequest.Post(path).Sign(this))
            {
                return(await this.GetResponse <SmartTrade>(request).ConfigureAwait(false));
            }
        }
Example #12
0
        public async Task <XCommasResponse <SmartTrade> > RefreshSmartTradeAsync(int smartTradeId)
        {
            var path = $"{BaseAddress}/ver1/smart_trades/{smartTradeId}/force_process";

            using (var request = XCommasRequest.Post(path).Sign(this))
            {
                return(await this.GetResponse <SmartTrade>(request).ConfigureAwait(false));
            }
        }
Example #13
0
        public async Task <XCommasResponse <SmartTrade> > CreateSmartTradeAsync(SmartTradeCreateParameters data)
        {
            var path = $"{BaseAddress}/ver1/smart_trades/create_smart_trade";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(data).Sign(this))
            {
                return(await this.GetResponse <SmartTrade>(request).ConfigureAwait(false));
            }
        }
Example #14
0
        public async Task <XCommasResponse <Bot> > DisableBotAsync(int botId)
        {
            var path = $"{BaseAddress}/ver1/bots/{botId}/disable";

            using (var request = XCommasRequest.Post(path).Sign(this))
            {
                return(await this.GetResponse <Bot>(request).ConfigureAwait(false));
            }
        }
Example #15
0
        public async Task <XCommasResponse <bool> > SetBotPairsBlackListAsync(BotPairsBlackListData data)
        {
            var path = $"{BaseAddress}/ver1/bots/update_pairs_black_list";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(data).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <bool>(request).ConfigureAwait(false));
            }
        }
Example #16
0
        public async Task <XCommasResponse <Deal> > CancelDealAsync(int dealId)
        {
            var path = $"{BaseAddress}/ver1/deals/{dealId}/cancel";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <Deal>(request).ConfigureAwait(false));
            }
        }
Example #17
0
        public async Task <XCommasResponse <Bot> > CreateBotAsync(int accountId, Strategy strategy, BotData data)
        {
            var path = $"{BaseAddress}/ver1/bots/create_bot";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(new BotCreateData(accountId, strategy, data)).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <Bot>(request).ConfigureAwait(false));
            }
        }
Example #18
0
        public async Task <XCommasResponse <Deal> > AddFundsToDealAsync(DealAddFundsParameters data)
        {
            var path = $"{BaseAddress}/ver1/deals/{data.DealId}/add_funds";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(data).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <Deal>(request).ConfigureAwait(false));
            }
        }
Example #19
0
        public async Task <XCommasResponse <Bot> > CancelAllBotDealsAsync(int botId)
        {
            var path = $"{BaseAddress}/ver1/bots/{botId}/cancel_all_deals";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <Bot>(request).ConfigureAwait(false));
            }
        }
Example #20
0
        public async Task <XCommasResponse <string> > CreateAccountAsync(AccountCreateData data)
        {
            var path = $"{BaseAddress}/ver1/accounts/new";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(data).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <string>(request).ConfigureAwait(false));
            }
        }
Example #21
0
        public async Task <XCommasResponse <SmartTrade> > CloseSmartTradeByMarketAsync(int id)
        {
            var path = $"{BaseAddress}/v2/smart_trades/{id}/close_by_market";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <SmartTrade>(request).ConfigureAwait(false));
            }
        }
Example #22
0
        public async Task <XCommasResponse <AccountTableData[]> > GetAccountTableDataAsync(int accountId)
        {
            var path = $"{BaseAddress}/ver1/accounts/{accountId}/account_table_data";

            using (var request = XCommasRequest.Post(path).Force(UserMode).Sign(this))
            {
                return(await this.GetResponse <AccountTableData[]>(request).ConfigureAwait(false));
            }
        }
Example #23
0
        public async Task <XCommasResponse <string> > SellAllToBtcAsync(int accountId)
        {
            var path = $"{BaseAddress}/ver1/accounts/{accountId}/sell_all_to_btc";

            using (var request = XCommasRequest.Post(path).Sign(this))
            {
                return(await this.GetResponse <string>(request).ConfigureAwait(false));
            }
        }
Example #24
0
        public async Task <XCommasResponse <Deal> > PanicSellSmartTradeStepAsync(int smartTradeId, int stepId)
        {
            var path = $"{BaseAddress}/ver1/smart_trades/{smartTradeId}/step_panic_sell";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(new PanicSellSmartTradeStepData {
                StepId = stepId
            }).Sign(this))
            {
                return(await this.GetResponse <Deal>(request).ConfigureAwait(false));
            }
        }
Example #25
0
        public async Task <XCommasResponse <Deal> > UpdateMaxSafetyOrdersAsync(int dealId, int maxSafetyOrders)
        {
            var path = $"{BaseAddress}/ver1/deals/{dealId}/update_max_safety_orders";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(new UpdateMaxSafetyOrderData {
                MaxSafetyOrders = maxSafetyOrders
            }).Sign(this))
            {
                return(await this.GetResponse <Deal>(request).ConfigureAwait(false));
            }
        }
Example #26
0
        public async Task <XCommasResponse <Account> > RenameAccountAsync(int accountId, string name)
        {
            var path = $"{BaseAddress}/ver1/accounts/{accountId}/rename";

            using (var request = XCommasRequest.Post(path).WithSerializedContent(new RenameAccountData {
                NewName = name
            }).Sign(this))
            {
                return(await this.GetResponse <Account>(request).ConfigureAwait(false));
            }
        }
Example #27
0
        public async Task <XCommasResponse <Bot> > StartNewDealAsync(int botId, string pair = null, bool skipSignalChecks = false, bool skipOpenDealsChecks = false)
        {
            var path = $"{BaseAddress}/ver1/bots/{botId}/start_new_deal";

            using (var request = XCommasRequest.Post(path)
                                 .WithSerializedContent(new StartNewDealData {
                Pair = pair, SkipOpenDealsChecks = skipOpenDealsChecks, SkipSignalChecks = skipSignalChecks
            }).Sign(this))
            {
                return(await this.GetResponse <Bot>(request).ConfigureAwait(false));
            }
        }