Esempio n. 1
0
        static async Task ShowAssetInfo()
        {
            Console.WriteLine("");
            Console.WriteLine("========================================");
            Console.WriteLine("asset");
            Console.WriteLine("========================================");

            // 資産情報を取得・表示
            var assetList = await client.GetMyAssetList();

            Console.WriteLine(assetList);
            Console.WriteLine("JPY = " + assetList.Jpy.Amount);
            Console.WriteLine("JPY(Available) = " + assetList.Jpy.Available);
            Console.WriteLine("BTC = " + assetList.Btc.Amount);

            // 証拠金情報
            var collateral = await client.GetMyCollateral();

            Console.WriteLine(collateral);

            // 建玉情報
            Console.WriteLine("----positions----");
            var positions = await client.GetMyPositions();

            foreach (var p in positions)
            {
                Console.WriteLine(p);
            }
            Console.WriteLine("----/positions----");


            Console.WriteLine("");
        }
Esempio n. 2
0
        async Task getPosition()
        {
            Collateral col = null;

            try
            {
                col = await client.GetMyCollateral();
            }
            catch (Exception ex)
            {
                label2.Text = "Failed to get collateral info.";
                label3.Text = "";
                label6.Text = ex.ToString();

                return;
            }

            label2.Text = "Equity: " + Math.Round(col.CollateralAmount, 1).ToString() + " JPY,  Margin: " + Math.Round(col.KeepRate * 100, 2).ToString() + " %";

            List <Position> pos = null;

            try
            {
                pos = await client.GetMyPositions();
            }
            catch (Exception ex)
            {
                label3.Text = "Failed to get position info.";
                label6.Text = ex.ToString();

                return;
            }

            double average = 0;

            positions = 0;

            foreach (Position ps in pos)
            {
                average   += (ps.Size * ps.Price);
                positions += ps.Size;
            }

            if (pos.Count == 0)
            {
                label8.Text      = "Ave: ";
                label3.Text      = "No Open Position.";
                label3.ForeColor = Color.Black;
            }
            else
            {
                label8.Text = "Ave: " + Math.Round(average / positions, 1).ToString();
                label3.Text = pos[0].Side + ss[1] + positions.ToString() + " BTC,  PL: " + (0 < col.OpenPositionProfitAndLoss ? "+" : "") + Math.Round(col.OpenPositionProfitAndLoss, 1).ToString() + " JPY";

                if (0 <= col.OpenPositionProfitAndLoss)
                {
                    label3.ForeColor = Color.Blue;
                }
                else
                {
                    label3.ForeColor = Color.Red;
                }
            }
        }