コード例 #1
0
ファイル: Program.cs プロジェクト: tantock/QuestradeAPI
 private static void QTrade_OnAccountBalancesRecieved(object sender, APIAccountBalancesReturnArgs e)
 {
     Console.WriteLine("Combined balances:");
     for (int i = 0; i < e.details.combinedBalances.Length; i++)
     {
         var c = e.details.combinedBalances;
         Console.WriteLine(string.Format("{0} - Buying power: {1}, Cash: {2}, MaintExcess: {3}, Market Value: {4}, Total Equity: {5}", c[i].currency, c[i].buyingPower, c[i].cash, c[i].maintenanceExcess, c[i].marketValue, c[i].totalEquity));
     }
 }
コード例 #2
0
ファイル: Questrade.cs プロジェクト: tantock/QuestradeAPI
        /// <summary>
        /// Retrives an account balance given an account number
        /// </summary>
        /// <param name="id">Account number</param>
        /// <param name="cancellationTokenSource">Cancellation token source</param>
        public void GetAccountBalanceAsync(string id, CancellationTokenSource cancellationTokenSource)
        {
            CancellationToken ct = cancellationTokenSource.Token;

            Task.Run(() =>
            {
                ct.ThrowIfCancellationRequested();
                var obj = ApiGet <AccountBalances>(apiClient, string.Format("v1/accounts/{0}/balances", id), ct);

                //obj.Wait(ct);

                if (obj.isSuccess && !ct.IsCancellationRequested)
                {
                    var arg          = new APIAccountBalancesReturnArgs();
                    arg.details      = obj.q_obj;
                    arg.NumCallsLeft = obj.NumCallsLeft;
                    arg.RateReset    = obj.RateReset;
                    OnAccountBalancesRecieved(this, arg);
                }
            }, ct);
        }