예제 #1
0
        private static void TransferOut()
        {
            var marginClient = new CrossMarginClient(Config.AccessKey, Config.SecretKey);

            _logger.Start();
            var response = marginClient.TransferOut("eos", "0.000001").Result;

            _logger.StopAndLog();

            if (response != null)
            {
                switch (response.status)
                {
                case "ok":
                {
                    AppLogger.Info($"Transfer successfully, transfer id: {response.data}");
                    break;
                }

                case "error":
                {
                    AppLogger.Info($"Transfer fail, error code: {response.errorCode}, error message: {response.errorMessage}");
                    break;
                }
                }
            }
        }
예제 #2
0
        private static void GetLoanInfo()
        {
            var marginClient = new CrossMarginClient(Config.AccessKey, Config.SecretKey);

            _logger.Start();
            var response = marginClient.GetLoanInfo().Result;

            _logger.StopAndLog();

            if (response != null)
            {
                switch (response.status)
                {
                case "ok":
                {
                    if (response.data != null)
                    {
                        foreach (var c in response.data)
                        {
                            AppLogger.Info($"Currency: {c.currency}, interest: {c.interestRate}," +
                                           $" min: {c.maxLoanAmt}, max: {c.maxLoanAmt}, loanable: {c.loanableAmt}");
                        }
                    }
                    break;
                }

                case "error":
                {
                    AppLogger.Info($"Get loan info fail, error code: {response.errorCode}, error message: {response.errorMessage}");
                    break;
                }
                }
            }
        }
예제 #3
0
        private static void GetRepayment()
        {
            var client = new CrossMarginClient(Config.AccessKey, Config.SecretKey);

            var request = new GetRepaymentRequest
            {
                accountId = Config.AccountId,
                currency  = "htusdt"
            };

            var result = client.GetRepayment(request).Result;

            if ((result.code == (int)ResponseCode.Success) && result.data != null)
            {
                AppLogger.Info($"Get repayment success, count: {result.data.Length}");
                foreach (var r in result.data)
                {
                    AppLogger.Info($"Repay id: {r.repayId}, time: {r.repayTime}, currency: {r.currency}, amount: {r.repaidAmount}");
                }
            }
            else
            {
                AppLogger.Error($"Get repayment error, code: {result.code}, message: {result.message}");
            }
        }
예제 #4
0
        private static void TransferIn()
        {
            var marginClient = new CrossMarginClient(Config.AccessKey, Config.SecretKey);


            var response = marginClient.TransferIn("eos", "0.000001").Result;


            if (response != null)
            {
                switch (response.status)
                {
                case "ok":
                {
                    Console.WriteLine($"Transfer successfully, transfer id: {response.data}");
                    break;
                }

                case "error":
                {
                    Console.WriteLine($"Transfer fail, error code: {response.errorCode}, error message: {response.errorMessage}");
                    break;
                }
                }
            }
        }
예제 #5
0
        private static void GetLoanOrders()
        {
            var marginClient = new CrossMarginClient(Config.AccessKey, Config.SecretKey);


            GetRequest request = new GetRequest()
                                 .AddParam("sub-uid", Config.SubUserId);
            var response = marginClient.GetLoanOrders(request).Result;


            if (response != null)
            {
                switch (response.status)
                {
                case "ok":
                {
                    if (response.data != null)
                    {
                        foreach (var o in response.data)
                        {
                            Console.WriteLine($"Loan order id: {o.id}, currency: {o.currency}, amount: {o.loanAmount}, state: {o.state}");
                        }
                        Console.WriteLine($"There are total {response.data.Length} loan orders");
                    }
                    break;
                }

                case "error":
                {
                    Console.WriteLine($"Get loan order fail, error code: {response.errorCode}, error message: {response.errorMessage}");
                    break;
                }
                }
            }
        }
예제 #6
0
        private static void RepayLoan()
        {
            var marginClient = new CrossMarginClient(Config.AccessKey, Config.SecretKey);


            var response = marginClient.Repay("123", "0.001").Result;


            if (response != null)
            {
                switch (response.status)
                {
                case "ok":
                {
                    Console.WriteLine($"Repay successfully, margin order id: {response.data}");
                    break;
                }

                case "error":
                {
                    Console.WriteLine($"Repay fail, error code: {response.errorCode}, error message: {response.errorMessage}");
                    break;
                }
                }
            }
        }
예제 #7
0
        private static void GetMarginAccount()
        {
            var marginClient = new CrossMarginClient(Config.AccessKey, Config.SecretKey);

            _logger.Start();
            var response = marginClient.GetMarginAccount(Config.SubUserId).Result;

            _logger.StopAndLog();

            if (response != null)
            {
                switch (response.status)
                {
                case "ok":
                {
                    if (response.data != null)
                    {
                        foreach (var a in response.data)
                        {
                            AppLogger.Info($"Account Id: {a.id}");
                            if (a.list != null)
                            {
                                foreach (var c in a.list)
                                {
                                    AppLogger.Info($"Currency: {c.currency}, balance: {c.balance}");
                                }
                            }
                        }
                    }
                    break;
                }

                case "error":
                {
                    AppLogger.Info($"Get margin account fail, error code: {response.errorCode}, error message: {response.errorMessage}");
                    break;
                }
                }
            }
        }