/// <summary>cancel /// <para>Cancel a buy or sell order.</para> /// <para>Required : uuid - uuid of buy or sell order</para> /// <para>Optional : none</para> /// </summary> public static CCEXBuySellMessage setCancel(string uuid) { try { string requestUrl = "https://c-cex.com/t/api.html?a=cancel&apikey=" + Api.key + "&uuid=" + uuid + "&nonce=" + ExchangeManager.GetNonce(); var jsonObject = JObject.Parse(GetApiRequest(requestUrl)); string success = jsonObject["success"].ToString().ToLower(); if (success == "true") { return(jsonObject["result"].ToObject <CCEXBuySellMessage>()); } else { LogManager.AddLogMessage(Name, "setSell", "sucess IS FALSE : message=" + jsonObject["message"], LogManager.LogMessageType.DEBUG); return(null); } } catch (Exception ex) { LogManager.AddLogMessage(Name, "setSell", ex.Message, LogManager.LogMessageType.EXCEPTION); return(null); } }
/// <summary>mytrades /// <para>Retrieve detailed trading history.</para> /// <para>Required : marketid - name (ex: SYM-MKT)</para> /// <para>Optional : limit</para> /// </summary> public static List <CCEXTrade> getTradeList(string symbol, string market) { List <CCEXTrade> list = new List <CCEXTrade>(); try { string requestUrl = Api_privateUrl + "mytrades" + "&apikey=" + Api.key + "&marketid=" + symbol.ToLower() + "-" + market.ToLower() + "&nonce=" + ExchangeManager.GetNonce(); var jsonObject = JObject.Parse(GetApiRequest(requestUrl)); string success = jsonObject["success"].ToString().ToLower(); if (success == "true") { list = jsonObject["result"].ToObject <List <CCEXTrade> >(); } else { LogManager.AddLogMessage(Name, "getTradeList", "sucess IS FALSE : message=" + jsonObject["message"], LogManager.LogMessageType.DEBUG); } } catch (Exception ex) { LogManager.AddLogMessage(Name, "getTradeList", ex.Message, LogManager.LogMessageType.EXCEPTION); } return(list); }
/// <summary>selllimit /// <para>Place a sell limit order in a specific market.</para> /// <para>Required : market - Market name (ex: SYM-MKT)</para> /// <para>Required : quantity - Amount to purchase</para> /// <para>Required : rate - Rate at which to place the order</para> /// <para>Optional : none</para> /// </summary> public static CCEXBuySellMessage setSell(string symbol, string market, Decimal quantity, Decimal rate) { try { string requestUrl = "https://c-cex.com/t/api.html?a=selllimit&apikey=" + Api.key + "&market=" + symbol + "-" + market + "&quantity=" + quantity + "&rate=" + rate + "&nonce=" + ExchangeManager.GetNonce(); var jsonObject = JObject.Parse(GetApiRequest(requestUrl)); string success = jsonObject["success"].ToString().ToLower(); if (success == "true") { return(jsonObject["result"].ToObject <CCEXBuySellMessage>()); } else { LogManager.AddLogMessage(Name, "setSell", "sucess IS FALSE : message=" + jsonObject["message"], LogManager.LogMessageType.DEBUG); return(null); } } catch (Exception ex) { LogManager.AddLogMessage(Name, "setSell", ex.Message, LogManager.LogMessageType.EXCEPTION); return(null); } }
/// <summary>getorder /// <para>Retrieve a single order by uuid.</para> /// <para>Required : uuid - uuid of the buy or sell order</para> /// <para>Optional : none</para> /// </summary> public static CCEXOrder getOrder(string uuid) { try { string requestUrl = Api_privateUrl + "getorder" + "&apikey=" + Api.key + "&uuid=" + uuid + "&nonce=" + ExchangeManager.GetNonce(); var jsonObject = JObject.Parse(GetApiRequest(requestUrl)); string success = jsonObject["success"].ToString().ToLower(); if (success == "true") { return(jsonObject["result"].ToObject <CCEXOrder>()); } else { LogManager.AddLogMessage(Name, "getOrder", "successs IS FALSE : message=" + jsonObject["message"], LogManager.LogMessageType.DEBUG); return(null); } } catch (Exception ex) { LogManager.AddLogMessage(Name, "getOrder", ex.Message, LogManager.LogMessageType.EXCEPTION); return(null); } }
private void LeaveExchange(string data) { if (_client.Character.State != Character.CharacterState.OnExchange) { return; } var receiverCharacter = _client.Character.ExchangeWithCharacter; if (receiverCharacter != null) { _client.Character.LeaveExchangeWithPlayer(); } var receiverClient = GameServer.Clients.Find(x => x.Character == receiverCharacter); var exchangeSession = ExchangeManager.Exchanges.Find( x => x.FirstTrader == _client.Character && x.SecondTrader == receiverClient.Character || x.FirstTrader == receiverClient.Character && x.SecondTrader == _client.Character); if (exchangeSession != null) { ExchangeManager.CloseExchangeSession(exchangeSession); } receiverClient.SendPackets(Packet.ExchangeLeave); _client.SendPackets(Packet.ExchangeLeave); }
protected void btnGenerateFolio_Click(object sender, EventArgs e) { try { util.GetActionMenu(mpMenu.SelectedItem.Value); var ect = new ExchangeCompositeType(); var em = new ExchangeManager(); var tem = new TaskExchangeManager(); //Add ect = em.getExchangeById(int.Parse(lblIdExchange.Text)); int iMax = tem.getMaxTimingByIdExchange(ect); //Add DateTime dAplication = calAplicationDate.SelectedDate.Value; dAplication.AddDays(iMax * 7); //Add tem.UpdateTime_byGenerate(int.Parse(lblIdExchange.Text), calAplicationDate.SelectedDate.Value, ((RadButton)sender).ID); //Add DateTime dAplication = DateTime.Parse(txtAplicationDate.Text); ect.dAplicationDate = dAplication; ect.iStatus = 12; //Add em.UpdateExchange(ect); em.UpdateExchangeDate(ect); lblFolioGen.Text = ((DateTime)ect.dAplicationDate).ToShortDateString().ToString(); pnGenerateFolio.Visible = false; pnFolio.Visible = true; } catch (AccessViolationException ave) { Alert.Permisos(this.Page); } catch (Exception ex) { util.ErroDisplay(1, ex.Message, ref lblMessage); } }
private void LoginOnClosing(object sender, CancelEventArgs cancelEventArgs) { var dialog = sender as Login; if (dialog != null) { var vm = dialog.DataContext as LoginViewModel; if (vm != null) { if (vm.DialogResult == DialogResult.OK) { try { ExchangeManager.LoadSettings(vm.Password); OnSettingsLoaded(); } catch { vm.PasswordWrongVisibility = Visibility.Visible; cancelEventArgs.Cancel = true; vm.DialogResult = DialogResult.None; } } if (vm.DialogResult == DialogResult.Cancel) { dialog.Closing -= LoginOnClosing; } } } }
private void ExchangeAccepted(string data) { if (_client.Character.State != Character.CharacterState.OnExchange) { return; } var receiverCharacter = _client.Character.ExchangeWithCharacter; // TODO : other type of exchange here, maybe do a switch later... if (receiverCharacter == null) { return; } var receiverClient = GameServer.Clients.Find(x => x.Character == receiverCharacter); if (receiverClient == null) { return; } ExchangeManager.CreateExchangeSession(_client.Character, receiverClient.Character); receiverClient.SendPackets(string.Format("{0}{1}", Packet.ExchangeCreated, "1")); _client.SendPackets(string.Format("{0}{1}", Packet.ExchangeCreated, "1")); }
void Start() { _wallet = Wallet.Instance; _touchManager = TouchManager.Instance; _exchangeManager = ExchangeManager.Instance; _exchangeRate = ExchangeRate.Instance; }
public RequestViewModel(MainViewModel mainViewModel, ExchangeManager exchangeManager) : base(exchangeManager) { MainViewModel = mainViewModel; this.Header = "Requests"; RequestMonitor.RequestEvent += RequestMonitorOnRequestEvent; }
public async Task <JsonResult> ExchangeCurrency([FromBody] ExchangeRequest request) { ExchangeManager manager; ExchangeInfo info; string strInfo = HttpContext.Session.GetString("currencyInfo"); string url = @"http://data.fixer.io/api/latest?access_key=d0def2e2f997f931537d524b82434b2d&symbols=EUR,USD"; if (!string.IsNullOrEmpty(strInfo)) { info = JsonConvert.DeserializeObject <ExchangeInfo>(strInfo); if (DateTime.UtcNow.Date.Subtract(new DateTime(1970, 1, 1, 0, 0, 0).AddSeconds(Convert.ToDouble(info.Timestamp))).TotalMinutes < 10) { manager = new ExchangeManager(url, info); } else { manager = new ExchangeManager(url); } } else { manager = new ExchangeManager(url); } decimal result = await manager.ExchangeCurrencies(request.value, request.fromCurrency, request.targetCurrency); if (manager.exchangeInfo != null) { HttpContext.Session.SetString("currencyInfo", JsonConvert.SerializeObject(manager.exchangeInfo)); } return(Json(result)); }
public void XmlDownload() { string xml = new ExchangeManager().DownloadXml(); Console.WriteLine(xml); Assert.True(xml.Length > 0); }
public DownloadManager(string configPath, ExchangeManager networkManager, CacheManager cacheManager, BufferPool bufferPool) { _networkManager = networkManager; _cacheManager = cacheManager; _bufferPool = bufferPool; _settings = new Settings(configPath); _downloadTaskManager = new TaskManager(this.DownloadingThread); for (int i = 0; i < _threadCount; i++) { _decodeTaskManagers.Add(new TaskManager(this.DecodingThread)); } _volatileDownloadItemInfoManager = new VolatileDownloadItemInfoManager(); _volatileDownloadItemInfoManager.AddEvent += (info) => this.Event_AddInfo(info); _volatileDownloadItemInfoManager.RemoveEvent += (info) => this.Event_RemoveInfo(info); _downloadItemInfoManager = new DownloadItemInfoManager(); _downloadItemInfoManager.AddEvents += (info) => this.Event_AddInfo(info); _downloadItemInfoManager.RemoveEvents += (info) => this.Event_RemoveInfo(info); _watchTimer = new EventScheduler(this.WatchThread); _watchTimer.Start(new TimeSpan(0, 1, 0)); _cacheManager.AddedBlockEvents += (hashes) => this.Update_DownloadBlockStates(true, hashes); _cacheManager.RemovedBlockEvents += (hashes) => this.Update_DownloadBlockStates(false, hashes); }
/// <summary>getopenorders /// <para>Get all orders that you currently have opened. A specific market can be requested.</para> /// <para>Required : none</para> /// <para>Optional : market - Market name (ex: MKT-SYM)</para> /// </summary> public static List <CCEXOrder> getOpenOrdersList(string market = "", string symbol = "") { List <CCEXOrder> list = new List <CCEXOrder>(); try { string requestUrl = Api_privateUrl + "getopenorders" + "&apikey=" + Api.key + "&nonce=" + ExchangeManager.GetNonce(); if (market.Length > 0 && symbol.Length > 0) { requestUrl += "&market=" + market + "-" + symbol; } string result = GetApiRequest(requestUrl); //LogManager.AddLogMessage(Name, "getOpenOrdersList", result, LogManager.LogMessageType.DEBUG); var jsonObject = JObject.Parse(result); string success = jsonObject["success"].ToString().ToLower(); if (success == "true") { list = jsonObject["result"].ToObject <List <CCEXOrder> >(); } else { LogManager.AddLogMessage(Name, "getOpenOrdersList", "successs IS FALSE : message=" + jsonObject["message"], LogManager.LogMessageType.DEBUG); } } catch (Exception ex) { LogManager.AddLogMessage(Name, "getOpenOrdersList", ex.Message, LogManager.LogMessageType.EXCEPTION); } return(list); }
private void button5_Click(object sender, EventArgs e) { var type = this.comboBox1.SelectedItem as Type; dynamic exchange = ExchangeManager.GetExchange(type); this.ShowLog(exchange.Account.ToString()); }
/// <summary>getbalances /// <para>Retrieve all balances from your account.</para> /// <para>Required : none</para> /// <para>Optional : none</para> /// </summary> public static List <CCEXBalance> getBalanceList() { List <CCEXBalance> list = new List <CCEXBalance>(); string responseString = string.Empty; try { string requestUrl = Api_privateUrl + "getbalances" + "&apikey=" + Api.key + "&nonce=" + ExchangeManager.GetNonce(); responseString = GetApiRequest(requestUrl); var jsonObject = JObject.Parse(responseString); string success = jsonObject["success"].ToString().ToLower(); if (success == "true") { list = jsonObject["result"].ToObject <List <CCEXBalance> >(); UpdateStatus(true, "Updated Balances"); } else { LogManager.AddLogMessage(Name, "getBalanceList", "sucess IS FALSE : message=" + jsonObject["message"], LogManager.LogMessageType.DEBUG); UpdateStatus(true, jsonObject["message"].ToString()); } } catch (Exception ex) { LogManager.AddLogMessage(Name, "getBalances", ex.Message, LogManager.LogMessageType.EXCEPTION); UpdateStatus(false, responseString); } return(list); }
private void ExportAction_Execute(object sender, SimpleActionExecuteEventArgs e) { var winApplication = (WinApplication)Application; var form = ((WinWindow)winApplication.MainWindow).Form; string filePath; using (var dialog = new SaveFileDialog { Title = "Экспорт каталога", Filter = ExcelFilesFilter }) { if (dialog.ShowDialog(form) != DialogResult.OK) { return; } filePath = dialog.FileName; } Run(form, () => { using (var manager = new ExchangeManager()) { manager.Export(filePath); } }, "Экспорт каталога"); }
private void Quote() { if (ddlNoPartCot.Items.Count > 0) { pnQuote.Visible = true; pnQuoteNon.Visible = false; var plct = new PartListCompositeType(); var plm = new PartListManager(); var ect = new ExchangeCompositeType(); var em = new ExchangeManager(); plct = plm.getPartListById(int.Parse(ddlNoPartCot.SelectedValue.ToString())); ect = em.getExchangeById(int.Parse(lblIdExchange.Text)); lblNoPartC.Text = plct.iNumber.ToString(); lblNoPartClientC.Text = plct.iNumberClient.ToString(); lblProyectc.Text = ect.sProyect.ToString(); lblPartList.Text = plct.iIdPart.ToString(); lblDescriptionC.Text = "Descripcion del Cambio: " + ect.sDescription.ToString(); ddlAfectationCot.DataBind(); calculate(); } else { pnQuote.Visible = false; pnQuoteNon.Visible = true; } }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, CurrencyConverterDbContext context) { if (env.IsDevelopment()) { app.UseBrowserLink(); app.UseDeveloperExceptionPage(); } else { app.UseExceptionHandler("/Home/Error"); } app.UseStaticFiles(); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); }); var rates = new ExchangeManager().GetExchangeRates(); var timePoints = rates.Select(x => x.Time).Distinct(); context.AddRange(rates); context.AddRange(timePoints.Select(x => new ExchangeRate() { Time = x.Date, Currency = "EUR", Rate = 1 })); context.SaveChanges(); }
private void ImportAction_Execute(object sender, SimpleActionExecuteEventArgs e) { var winApplication = (WinApplication)Application; var form = ((WinWindow)winApplication.MainWindow).Form; var filePath = string.Empty; using (var dialog = new OpenFileDialog { Multiselect = false, Title = "Импорт каталога", Filter = ExcelFilesFilter }) { if (dialog.ShowDialog(form) != DialogResult.OK) { return; } filePath = dialog.FileName; } Run(form, () => { using (var manager = new ExchangeManager()) { manager.Import(filePath); } }, "Импорт каталога"); }
static void Main(string[] args) { if (LogManager.InitializeLogManager()) { Console.Title = "TwEX Console"; LogManager.ConsoleLogging = true; Console.BufferWidth = Console.WindowWidth = 150; Console.BufferHeight = Console.WindowHeight = 50; Console.CursorVisible = false; /* * IntPtr handle = GetConsoleWindow(); * IntPtr sysMenu = GetSystemMenu(handle, false); * * if (handle != IntPtr.Zero) * { * //DeleteMenu(sysMenu, SC_CLOSE, MF_BYCOMMAND); * DeleteMenu(sysMenu, SC_MINIMIZE, MF_BYCOMMAND); * DeleteMenu(sysMenu, SC_MAXIMIZE, MF_BYCOMMAND); * DeleteMenu(sysMenu, SC_SIZE, MF_BYCOMMAND); * } */ } if (PreferenceManager.InitializePreferences()) { if (ExchangeManager.InitializeExchanges()) { ExchangeManager.InitializeTimer(); Run(); } } }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { while (!stoppingToken.IsCancellationRequested) { Task task = Task.Run(async() => { while (true) { try { await ExchangeManager.RunTrades(); } catch (System.Exception e) { Console.WriteLine("FATAL EXCHANGE ERROR:"); Console.WriteLine(e.Message); } } }); while (!task.IsCompleted) { _logger.LogInformation("Exchange running at: {time}", DateTimeOffset.Now); await Task.Delay(60000, stoppingToken); } _logger.LogInformation("Exchange task stopped at: {time}", DateTimeOffset.Now); _logger.LogInformation("Restarting.", DateTimeOffset.Now); } }
public static async Task <TradeSatoshiBalance> GetBalance(string Currency) { TradeSatoshiBalance balance = new TradeSatoshiBalance(); using (HttpClient client = new HttpClient()) { try { string uri = "https://tradesatoshi.com/api/private/getbalance"; //string nonce = Guid.NewGuid().ToString(); string nonce = ExchangeManager.GetNonce(); JObject post_params = new JObject(); post_params.Add("Currency", Currency); string signature = GetSignature(uri, nonce, JsonConvert.SerializeObject(post_params)).Result; //string authenticationString = "Basic " + GlobalSettings.API_Key + ":" + signature + ":" + nonce; string authenticationString = Api.key + ":" + signature + ":" + nonce; //string authenticationString = "Basic " + Api.key + ":" + signature + ":" + nonce; client.DefaultRequestHeaders.Add("Authentication", authenticationString); string result = await client.PostAsync(uri, new StringContent(JsonConvert.SerializeObject(post_params), Encoding.UTF8, "application/json")).Result.Content.ReadAsStringAsync(); LogManager.AddLogMessage(Name, "GetBalance", "result=" + result, LogManager.LogMessageType.CONSOLE); //return JsonConvert.DeserializeObject<GetBalanceReturn>(await client.PostAsync(uri, new StringContent(JsonConvert.SerializeObject(post_params), Encoding.UTF8, "application/json")).Result.Content.ReadAsStringAsync()); } catch (Exception ex) { LogManager.AddLogMessage(Name, "GetBalance", ex.Message, LogManager.LogMessageType.EXCEPTION); //throw e; }; } return(balance); }
public void Save() { if (ExchangeManager.SettingsUnlocked()) { ExchangeManager.SaveSettings(); } }
public CommandToolBarViewModel(MainViewModel mainViewModel, ExchangeManager exchangeManager, ExchangeSettingsViewModel settings) : base(exchangeManager) { MainViewModel = mainViewModel; this.Settings = settings; Settings.SettingsService.SettingsLoaded += SettingsServiceOnSettingsLoaded; Settings.SettingsService.SettingsUnloaded += SettingsServiceOnSettingsUnloaded; }
private void toolStripButton_timer_Click(object sender, EventArgs e) { ToolStripButton button = sender as ToolStripButton; ExchangeManager.ExchangeTimerType type = ExchangeManager.getExchangeTimerType(button.Tag.ToString()); PreferenceManager.toggleTimerPreference(type); UpdateUI(); }
public DashboardViewModel(ExchangeManager exchangeManager, MainViewModel mainViewModel) : base(exchangeManager) { //Foreground = Brushes.OrangeRed; MainViewModel = mainViewModel; Header = "Dashboard"; LoadDashboardItems(); }
// Start is called before the first frame update void Start() { _wallet = Wallet.Instance; _touchManager = TouchManager.Instance; _exchangeManager = ExchangeManager.Instance; AmountOfCurrency = StartCurrency; }
public ExchangeSettingsViewModel(ExchangeManager exchangeManager) : base(exchangeManager) { Header = "API Keys"; SettingsService = new ExchangeSettingsService(exchangeManager); SettingsService.SettingsLoaded += SettingsServiceOnSettingsLoaded; SettingsService.SettingsUnloaded += SettingsServiceOnSettingsUnloaded; }
public AddressViewModel(ExchangeManager exchangeManager, MainViewModel mainViewModel) : base(exchangeManager) { MainViewModel = mainViewModel; //Foreground = Brushes.Gold; Header = "Addresses"; UpdateAddressesFromSettings(); Update(); }