public Order SendSellStopOrder(Counterpart counterpart, string clOrdID, string account, Instrument instrument, decimal qty, decimal stopPrice) { Order order = this.SellStopOrder(counterpart, clOrdID, account, instrument, qty, stopPrice); order.Send(); return(order); }
public Order SendBuyOrder(Counterpart counterpart, string clOrdID, string account, Instrument instrument, decimal qty) { Order order = this.BuyOrder(counterpart, clOrdID, account, instrument, qty); order.Send(); return(order); }
public void EnumParameterMapping() { var counterpart = new Counterpart { Name = "test-counterpart-name", Inn = "0987654321", Kpp = "987654321" }; dynamic counterpartAccessObject = testObjectsManager.CreateCounterparty(counterpart); testObjectsManager.CreateBankAccount(counterpartAccessObject.Ссылка, new BankAccount { Bank = new Bank { Bik = Banks.AlfaBankBik }, Number = "40702810001111122222", CurrencyCode = "643" }); testObjectsManager.CreateCounterpartContract(counterpartAccessObject.Ссылка, new CounterpartyContract { CurrencyCode = "643", Name = "Валюта", Kind = CounterpartContractKind.OutgoingWithAgency }); var contracts = dataContext.Select <ДоговорыКонтрагентов>() .Where(x => x.ВидДоговора == ВидыДоговоровКонтрагентов.СКомиссионеромНаЗакупку) .ToArray(); Assert.That(contracts.Length, Is.EqualTo(1)); Assert.That(contracts[0].ВидДоговора, Is.EqualTo(ВидыДоговоровКонтрагентов.СКомиссионеромНаЗакупку)); }
public void QueryWithRefAccess() { var counterpart = new Counterpart { Name = "test-counterpart-name", Inn = "0987654321", Kpp = "987654321" }; dynamic counterpartAccessObject = testObjectsManager.CreateCounterparty(counterpart); dynamic bankAccountAccessObject = testObjectsManager.CreateBankAccount(counterpartAccessObject.Ссылка, new BankAccount { Bank = new Bank { Bik = Banks.AlfaBankBik }, Number = "40702810001111122222", CurrencyCode = "643" }); counterpartAccessObject.ОсновнойБанковскийСчет = bankAccountAccessObject.Ссылка; counterpartAccessObject.Write(); testObjectsManager.CreateCounterpartContract(counterpartAccessObject.Ссылка, new CounterpartyContract { CurrencyCode = "643", Name = "Валюта", Kind = CounterpartContractKind.OutgoingWithAgency }); var contractFromStore = dataContext.Select <ДоговорыКонтрагентов>() .Single(x => x.Владелец.ОсновнойБанковскийСчет.НомерСчета == "40702810001111122222"); Assert.That(contractFromStore.Наименование, Is.EqualTo("Валюта")); }
public void QueryWithObject() { var counterpart = new Counterpart { Name = "test-counterpart-name", Inn = "0987654321", Kpp = "987654321" }; dynamic counterpartAccessObject = testObjectsManager.CreateCounterparty(counterpart); testObjectsManager.CreateBankAccount(counterpartAccessObject.Ссылка, new BankAccount { Bank = new Bank { Bik = Banks.AlfaBankBik }, Number = "40702810001111122222", CurrencyCode = "643" }); var account = dataContext.Select <БанковскиеСчета>() .Single(x => x.Владелец is Контрагенты); Assert.That(account.ВалютаДенежныхСредств.Код, Is.EqualTo("643")); Assert.That(account.Владелец, Is.TypeOf <Контрагенты>()); Assert.That(((Контрагенты)account.Владелец).ИНН, Is.EqualTo("0987654321")); Assert.That(((Контрагенты)account.Владелец).КПП, Is.EqualTo("987654321")); }
public Credential(Counterpart source, string tradingSenderCompID, string tradingTargetCompID, string feedSenderCompID, string feedTargetCompID) { this.Source = source; this.TradingSenderCompID = tradingSenderCompID; this.TradingTargetCompID = tradingTargetCompID; this.FeedSenderCompID = feedSenderCompID; this.FeedTargetCompID = feedTargetCompID; }
public Order(uint internalUInt, Counterpart counterpart, string clOrdID, string account, Instrument instrument, decimal price, decimal qty, OrderSide orderSide, /*decimal stopPrice, */ OrderType orderType) { this.CreationTime = DateTime.UtcNow; this.InternalUInt = internalUInt; this.Counterpart = counterpart; this.ClOrdID = clOrdID; this.Account = account; this.Instrument = instrument; this.Price = price; this.Qty = qty; this.Side = orderSide; //this.StopPrice = stopPrice; this.Type = orderType; }
public void ModifyReference() { var counterpart = new Counterpart { Inn = "7711223344", Kpp = "771101001", FullName = "Test counterparty", Name = "Test counterparty" }; dynamic counterpartyAccessObject = testObjectsManager.CreateCounterparty(counterpart); var counterpartContractAccessObject = testObjectsManager.CreateCounterpartContract(counterpartyAccessObject.Ссылка, new CounterpartyContract { Name = "test-counterparty-contract", Kind = CounterpartContractKind.Incoming, CurrencyCode = "643" }); string initialCounterpartyContractVersion = counterpartContractAccessObject.DataVersion; string counterpartyContractCode = counterpartContractAccessObject.Code; var contract = dataContext.Select <ДоговорыКонтрагентов>() .Single(x => x.Код == counterpartyContractCode); contract.Владелец.ИНН = "7711223344"; contract.Владелец.Наименование = "Test counterparty 2"; contract.Владелец.НаименованиеПолное = "Test counterparty 2"; dataContext.Save(contract); var counterpartyTable = globalContext.Execute("ВЫБРАТЬ * ИЗ Справочник.Контрагенты ГДЕ ИНН=&Inn", new Dictionary <string, object> { { "Inn", "7711223344" } }).Unload(); Assert.That(counterpartyTable.Count, Is.EqualTo(1)); Assert.That(counterpartyTable[0].GetString("Наименование"), Is.EqualTo("Test counterparty 2")); var counterpartyContractTable = globalContext.Execute("ВЫБРАТЬ Ссылка ИЗ Справочник.ДоговорыКонтрагентов ГДЕ Код=&Code", new Dictionary <string, object> { { "Code", counterpartyContractCode } }).Unload(); Assert.That(counterpartyContractTable.Count, Is.EqualTo(1)); var comObj = counterpartyContractTable[0]["Ссылка"]; var dataVersion = ((dynamic)comObj).DataVersion; Assert.That(dataVersion, Is.EqualTo(initialCounterpartyContractVersion)); }
void host_OnQuote(Counterpart source, string ticker, decimal ask, decimal askSize, decimal bid, decimal bidSize, DateTime datetime) { this.Dispatcher.Invoke((Action)(() => { if (this.SelectedTickerLabel.Text == ticker) { // usado internamente para generar ordenes this.selectedAsk = ask; this.selectedBid = bid; this.selectedTicker = ticker; // solo para visualizacion this.SelectedAskAndBidLabel.Text = string.Format("{0}/{1}", ask, bid); } })); }
public void SelectWithRef() { var counterpart = new Counterpart { Name = "test-counterpart-name", Inn = "0987654321", Kpp = "987654321" }; dynamic counterpartAccessObject = testObjectsManager.CreateCounterparty(counterpart); var bankAccountAccessObject = testObjectsManager.CreateBankAccount(counterpartAccessObject.Ссылка, new BankAccount { Bank = new Bank { Bik = Banks.AlfaBankBik }, Number = "40702810001111122222", CurrencyCode = "643" }); counterpartAccessObject.ОсновнойБанковскийСчет = bankAccountAccessObject.Ссылка; counterpartAccessObject.Write(); var counterpartyContractAccessObject = testObjectsManager.CreateCounterpartContract(counterpartAccessObject.Ссылка, new CounterpartyContract { CurrencyCode = "643", Name = "Валюта", Kind = CounterpartContractKind.OutgoingWithAgency }); string counterpartContractCode = counterpartyContractAccessObject.Код; var contractFromStore = dataContext .Select <ДоговорыКонтрагентов>() .Single(x => x.Код == counterpartContractCode); Assert.That(contractFromStore.Владелец.ИНН, Is.EqualTo("0987654321")); Assert.That(contractFromStore.Владелец.КПП, Is.EqualTo("987654321")); Assert.That(contractFromStore.Владелец.Наименование, Is.EqualTo("test-counterpart-name")); Assert.That(contractFromStore.Владелец.ОсновнойБанковскийСчет.НомерСчета, Is.EqualTo("40702810001111122222")); Assert.That(contractFromStore.Владелец.ОсновнойБанковскийСчет.Владелец, Is.TypeOf <Контрагенты>()); Assert.That(((Контрагенты)contractFromStore.Владелец.ОсновнойБанковскийСчет.Владелец) .ИНН, Is.EqualTo("0987654321")); Assert.That(contractFromStore.ВидДоговора, Is.EqualTo(ВидыДоговоровКонтрагентов.СКомиссионеромНаЗакупку)); }
public static Credential GetCredential(Counterpart source) { switch (source) { case Counterpart.DBFX: throw new NotImplementedException(";)"); case Counterpart.Dukascopy: return(Credentials.FirstOrDefault(x => x.Source == source)); case Counterpart.HotSpotFX: throw new NotImplementedException(";)"); default: throw new NotSupportedException("?"); } }
private int?AddCounterpart(string name) { var newObj = new Counterpart() { Name = name }; string sql = $"INSERT INTO Counterpart (Name,IdSource) VALUES (@name,@_sourceClipper); SELECT CAST(SCOPE_IDENTITY() as int)"; using (var connection = ConnectionFactory.GetOpenConnection()) { newObj.Id = connection.Query <int>(sql, new { newObj.Name, _sourceClipper }).Single(); CounterpartsList.Add(newObj); } return(newObj.Id); }
public void ChangeMustBeStrongerThanTracking() { var counterpart = new Counterpart { Inn = "7711223344", Kpp = "771101001", FullName = "Test counterparty", Name = "Test counterparty" }; dynamic counterpartyAccessObject = testObjectsManager.CreateCounterparty(counterpart); var counterpartContractAccessObject = testObjectsManager.CreateCounterpartContract(counterpartyAccessObject.Ссылка, new CounterpartyContract { CurrencyCode = "643", Name = "test-contract", Kind = CounterpartContractKind.Incoming }); string counterpartyContractCode = counterpartContractAccessObject.Code; var contract = dataContext.Select <ДоговорыКонтрагентов>() .Single(x => x.Код == counterpartyContractCode); if (contract.Владелец.ИНН == "7711223344") { contract.Владелец.ИНН = "7711223345"; contract.Владелец = new Контрагенты { ИНН = "7711223355", Наименование = "Test counterparty 2", НаименованиеПолное = "Test counterparty 2" }; } dataContext.Save(contract); var valueTable = globalContext.Execute("ВЫБРАТЬ * ИЗ Справочник.ДоговорыКонтрагентов ГДЕ Код=&Code", new Dictionary <string, object> { { "Code", contract.Код } }).Unload(); Assert.That(valueTable.Count, Is.EqualTo(1)); Assert.That(ComHelpers.GetProperty(valueTable[0]["Владелец"], "Наименование"), Is.EqualTo("Test counterparty 2")); }
public void CanQueryWithSourceNameViaGenericInterface() { var counterpart = new Counterpart { Inn = "7711223344", Kpp = "771101001", FullName = "Test counterparty 1", Name = "Test counterparty 2" }; testObjectsManager.CreateCounterparty(counterpart); var catalogItem = dataContext.Select <IGenericCatalog>("Справочник.Контрагенты") .Where(x => x.Наименование == "Test counterparty 2") .Cast <object>() .Single(); Assert.That(catalogItem, Is.TypeOf <Контрагенты>()); }
public void TypeOfAndPresentation() { var counterpart = new Counterpart { Name = "test-counterpart-name", Inn = "0987654321", Kpp = "987654321" }; dynamic counterpartAccessObject = testObjectsManager.CreateCounterparty(counterpart); dynamic bankAccountAccessObject = testObjectsManager.CreateBankAccount(counterpartAccessObject.Ссылка, new BankAccount { Bank = new Bank { Bik = Banks.AlfaBankBik }, Number = "40702810001111122222", CurrencyCode = "643" }); counterpartAccessObject.ОсновнойБанковскийСчет = bankAccountAccessObject.Ссылка; counterpartAccessObject.Write(); testObjectsManager.CreateCounterpartContract(counterpartAccessObject.Ссылка, new CounterpartyContract { CurrencyCode = "643", Name = "Валюта", Kind = CounterpartContractKind.OutgoingWithAgency }); var contractFromStore = dataContext.Select <ДоговорыКонтрагентов>() .Where(x => x.Владелец.ОсновнойБанковскийСчет.НомерСчета == "40702810001111122222") .Select(x => new { OwnerType = x.Владелец.ОсновнойБанковскийСчет.Владелец.GetType(), OwnerTypePresentation = Функции.Представление(x.Владелец.ОсновнойБанковскийСчет.Владелец.GetType()) }) .ToList(); Assert.That(contractFromStore.Count, Is.EqualTo(1)); Assert.That(contractFromStore[0].OwnerType, Is.EqualTo(typeof(Контрагенты))); Assert.That(contractFromStore[0].OwnerTypePresentation, Is.EqualTo("Контрагент")); }
void Instance_OnExecutionInfo(Counterpart counterpart, ExecutionReportAdapted executionReportAdapted) { switch (counterpart) { case Counterpart.Dukascopy: Order order = this.OrdersBook.Values.ToList().FirstOrDefault(ord => ord.ClOrdID == executionReportAdapted.ClOrdID); if (order != null) { order.DeliverExecutionReport(executionReportAdapted); } else { throw new Exception("no se encontro la orden destino del mensaje"); } break; default: break; } }
public void RerefenceProjection() { var counterpart = new Counterpart { Name = "test-counterpart-name", Inn = "0987654321", Kpp = "987654321" }; dynamic counterpartAccessObject = testObjectsManager.CreateCounterparty(counterpart); string code = counterpartAccessObject.Код; var counterparties = dataContext.Select <Контрагенты>() .Where(x => x.Код == code) .Select(x => new { Ссылка = x }) .ToArray(); Assert.That(counterparties.Length, Is.EqualTo(1)); Assert.That(counterparties[0].Ссылка.Наименование, Is.EqualTo("test-counterpart-name")); }
protected object CreateTestCounterpart() { var counterpart = new Counterpart { Name = "test-counterpart-name", Inn = "0987654321", Kpp = "987654321" }; dynamic counterpartAccessObject = testObjectsManager.CreateCounterparty(counterpart); testObjectsManager.CreateBankAccount(counterpartAccessObject.Ссылка, new BankAccount { Bank = new Bank { Bik = Banks.AlfaBankBik }, Number = "40702810001111122222", CurrencyCode = "643" }); return(counterpartAccessObject); }
public void ComplexReferenceObjectProjection() { var counterpart = new Counterpart { Name = "test-counterpart-name", Inn = "0987654321", Kpp = "987654321" }; testObjectsManager.CreateCounterparty(counterpart); var counterparties = dataContext.Select <Контрагенты>() .Where(x => !x.ПометкаУдаления) .Where(x => !x.ЭтоГруппа) .Where(x => x.Наименование == "test-counterpart-name") .Select(x => new { Id = x.УникальныйИдентификатор, Reference = x }) .ToArray(); Assert.That(counterparties.Length, Is.EqualTo(1)); Assert.That(counterparties[0].Reference, Is.TypeOf <Контрагенты>()); }
public void AssignWith(Counterpart counterpart) { Emit(new ContractAssignedToCounterpart { CounterpartId = counterpart.Id }); }
private Order SellStopOrder(Counterpart counterpart, string clOrdID, string account, Instrument instrument, decimal qty, decimal stopPrice) { return(this.AddToOrdersBook(new Order(GetInternalUInt(), counterpart, clOrdID, account, instrument, stopPrice, qty, OrderSide.Sell, OrderType.Stop))); }
public Order SellLimitOrder(Counterpart counterpart, string clOrdID, string account, Instrument instrument, decimal qty, decimal limitPrice) { return(this.AddToOrdersBook(new Order(GetInternalUInt(), counterpart, clOrdID, account, instrument, limitPrice, qty, OrderSide.Sell, OrderType.StopLimit))); }
public Order SellOrder(Counterpart counterpart, string clOrdID, string account, Instrument instrument, decimal qty) { return(this.AddToOrdersBook(new Order(GetInternalUInt(), counterpart, clOrdID, account, instrument, 0m, qty, OrderSide.Sell, OrderType.Market))); }