Example #1
0
        static void Main(string[] args)
        {
            if (args.Length < 2)
            {
                Console.WriteLine("Usage: WildbunnyAuthTest.exe <api key> <api secret>");
                Console.ReadLine();
            }
            else
            {
                string apiKey    = args[0];
                string apiSecret = args[1];

                ApiClient     client = new ApiClient(kBasePath);
                Configuration config = new Configuration(client, null, null, null, null, new Dictionary <string, string> {
                    { apiKey, apiSecret }
                });

                UserApi     userApi = new UserApi(config);
                PositionApi posApi  = new PositionApi(config);

                client.Configuration = config;

                string          depositAddress = userApi.UserGetDepositAddress();
                List <Position> positions      = posApi.PositionGet();

                Console.WriteLine("depositAddress = " + depositAddress);
                Console.Write("open positions = ");
                foreach (Position p in positions)
                {
                    Console.WriteLine(p.Currency + " " + p.CurrentQty);
                }
            }
        }
Example #2
0
        async Task <List <Position> > GetPositionsAsync(string accountNumber, AccessToken accessToken)
        {
            var positions = new List <Position>();

            foreach (var p in (await PositionApi.FindPositionsAsync(accountNumber, accessToken)).Positions.Where(p => p.CurrentMarketValue.HasValue))
            {
                positions.Add(await GetPositionAsync(p, accessToken));
            }

            return(positions);
        }
Example #3
0
        /// <summary>
        /// OandaApiConnection constuctor
        /// Sets up the configuration and the datetime format
        /// </summary>
        /// <param name="connectionType">Type of the connection</param>
        /// <param name="accessToken">Access token for the connection</param>
        /// <param name="dateTimeFormat">Date time format to use for the connection</param>
        public OandaApiConnection(OandaConnectionType connectionType, string accessToken, DateTimeFormat dateTimeFormat = DateTimeFormat.RFC3339)
        {
            // Init configuration
            Configuration = new Configuration()
            {
                UserAgent   = $"OandaDotnetSdk/{Assembly.GetExecutingAssembly().GetName().Version}",
                BasePath    = connectionType.ToBasePath(),
                AccessToken = accessToken
            };

            // Init date time format
            DateTimeFormat = dateTimeFormat;

            // Init actual Oanda API connections from the GeriRemenyi.Oanda.V20.Client
            AccountApi     = new AccountApi(Configuration);
            InstrumentApi  = new InstrumentApi(Configuration);
            OrderApi       = new OrderApi(Configuration);
            TradeApi       = new TradeApi(Configuration);
            PositionApi    = new PositionApi(Configuration);
            TransactionApi = new TransactionApi(Configuration);
            PricingApi     = new PricingApi(Configuration);

            // Init object caches
            _accountsCache   = new Dictionary <string, IAccount>();
            _instrumentCache = new Dictionary <InstrumentName, IInstrument>();

            // Fire a really small request synchronously to check that the inited connection is OK
            // Also fill the available accounts based on this
            try
            {
                Accounts = AccountApi.GetAccounts().Accounts;
            }
            catch
            {
                throw new ConnectionInitializationException($"Unable to connect to {Configuration.BasePath} with the given token");
            }
        }
 public void Init()
 {
     instance = new PositionApi();
 }
 public PositionRequests()
 {
     _api = new PositionApi(this.Client);
 }
 public PositionApiTests()
 {
     instance = new PositionApi();
 }