async Task GetPositionsAsync() { if (IsBusy) { return; } try { IsBusy = true; var positions = await App.PositionsSightsDB.GetPositionsAsync(); positions.Sort(); Positions.Clear(); foreach (var position in positions) { Positions.Add(position); } } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error!", ex.Message, "OK"); } finally { IsBusy = false; } }
/// <summary> /// The add position. /// </summary> /// <param name="input"> /// The input. /// </param> public bool AddPosition(string input) { if (Positions == null) { Positions = new List <Position>(); } try { string pattern = "^[a-hA-H][1-9]$"; Match m = Regex.Match(input, pattern, RegexOptions.IgnoreCase); if (m.Success) { var letter = (Letters)Enum.Parse(typeof(Letters), input.ToUpper().Substring(0, 1)); var number = int.Parse(input.Substring(1, 1)); Positions.Add(new Position { Column = letter, Row = number }); return(true); } else { Console.WriteLine(Battleship.GameController.GameController.MensajeDeError()); return(false); } } catch { return(false); } }
public void Update(Vector2 position, Vector2 velocity) { Positions.Add(position); ActualPosition = position; Velocities.Add(velocity); ActualVelocity = velocity; }
public void AddOrUpdatePosition(decimal averagePrice, int quanity, TradeType tradeType) { quanity = tradeType == TradeType.Long ? quanity : (quanity * -1); if (Positions.Count == 0) { Positions.Add(new Position() { Average = averagePrice, Quantity = quanity, TradeType = tradeType, LTP = averagePrice }); } else { var position = Positions.First(); if (position.TradeType == tradeType) { position.Quantity += quanity; } else { int remainingQuantity = position.Quantity + quanity; if (remainingQuantity == 0) { LastTradePnL = position.PnL < -0.05m ? -0.05m : position.PnL; PnL += LastTradePnL; Positions.Remove(position); } else { position.Quantity = remainingQuantity; LastTradePnL = position.PnL < -0.05m ? -0.05m : position.PnL; PnL += LastTradePnL; } } } }
public bool AddPosition(ref IContractModel instrument, PositionEnum type, int amount, decimal price) { if (instrument.IsValidContractAmount(amount) && CalculateBTCMarginRequirement(instrument, type, amount, price) < BTCBalance) { var localInstrument = instrument; var existingPosition = Positions.FirstOrDefault(x => x.Instrument.Name == localInstrument.Name); if (existingPosition == null) { Positions.Add(new Position(amount, price, type, ref instrument)); BTCBalance -= instrument.MarketFee(amount / price); OnBalanceChangeMessage(new BalanceChangeEventArgs(BTCBalance)); } else { if (existingPosition.Type == type) { existingPosition.Amount += amount; existingPosition.Price = decimal.Round((existingPosition.Amount + amount) / ((existingPosition.Amount / existingPosition.Price) + (amount / price)), 2); } else { existingPosition.Amount -= amount; var realisedPnl = existingPosition.UnrealisedPnl; var positionType = existingPosition.Type; if (existingPosition.Amount < 0) { existingPosition.Type = existingPosition.Type == PositionEnum.Buy ? PositionEnum.Sell : PositionEnum.Buy; existingPosition.Amount *= -1; existingPosition.Price = price; existingPosition.UnrealisedPnl = 0M; } else if (existingPosition.Amount == 0) { Positions.Remove(existingPosition); } else { if (existingPosition.Type == PositionEnum.Buy) { existingPosition.UnrealisedPnl = (existingPosition.Amount / existingPosition.Price) - (existingPosition.Amount / price); } else { existingPosition.UnrealisedPnl = (existingPosition.Amount / price) - (existingPosition.Amount / existingPosition.Price); } realisedPnl -= existingPosition.UnrealisedPnl; } BTCBalance += realisedPnl - instrument.MarketFee(amount / price); OnBalanceChangeMessage(new BalanceChangeEventArgs(BTCBalance)); OnHistoricalPositionAddedMessage(new HistoricalPositionAddedEventArgs(new HistoricalPosition(DateTime.Now, realisedPnl, positionType, ref instrument))); } } CalculateLiquidationPrice(); return(true); } return(false); }
private void CreatePositions() { string tickerLast = "noTicker"; List <Trade> trade_iList = new List <Trade>(); foreach (Trade trade_i in Trades) { if (trade_i.Ticker != tickerLast) { if (trade_iList.Count > 0) { Position position = new Position(trade_iList, AppData); position.PropertyChanged += Position_PropertyChanged; Positions.Add(position); } trade_iList = new List <Trade>(); } trade_iList.Add(trade_i); tickerLast = trade_i.Ticker; if (trade_i == Trades[Trades.Count - 1]) { Position position = new Position(trade_iList, AppData); position.PropertyChanged += Position_PropertyChanged; Positions.Add(position); } } //AccountValues.Add(new AccountValue { time = new DateTime(2018,6,10), value = 50000 }); //AccountValues.Add(new AccountValue { time = new DateTime(2019, 6, 10), value = 300000 }); //AccountValues.Add(new AccountValue { time = new DateTime(2020, 6, 10), value = 400000 }); }
public MovementRandomDropoff(RandomDropOff dropoff) { _dropoff = dropoff; Positions.Add(new Position(0, new RealPoint(_dropoff.Position.X + 300 + 40, _dropoff.Position.Y))); Positions.Add(new Position(180, new RealPoint(_dropoff.Position.X - 300 - 40, _dropoff.Position.Y))); }
/// <summary> /// /// </summary> /// <param name="o"></param> /// <returns>Capital usage by this order.</returns> public decimal AddOrder(Order o) { Open = true; if (!Positions.ContainsKey(o.Instrument.ID)) { Positions.Add(o.Instrument.ID, new Position(o.Instrument)); } decimal orderCapUsage = Positions[o.Instrument.ID].AddOrder(o); _ordersRemaining--; if (o.CurrencyID > 1) { decimal quantity = -o.Quantity * o.Multiplier * o.Price; var ft = new FXTransaction { FXCurrency = o.Currency, FXCurrencyID = o.CurrencyID, Quantity = quantity, Proceeds = quantity * o.FXRateToBase, Cost = -quantity * o.FXRateToBase, DateTime = o.TradeDate }; AddFXTransaction(ft); } return(orderCapUsage); }
public MenuExercisesWithFiltering() { Positions.Add("Dostępne zajęcia na silowni, filtrowane po dacie i godzinie"); Positions.Add("Dostępne zajęcia na silowni, filtrowane po typie zajęć"); Positions.Add("Dostępne zajęcia na silowni, filtrowane wg prowadzącego"); Positions.Add("Wyjście do menu głównego"); }
private void FillPositions() { SelectedPosition = null; Positions.Clear(); if (!IsConnected || SelectedVehicule == null) { return; } var positions = Enumerable.Empty <IPosition>(); using (var service = ServiceFactories.CreateETLService()) { service.ErrorOccured += OnErrorOccured; positions = service.GetPositions(Token, SelectedVehicule.Data); } if (positions == null) { return; } foreach (var position in positions) { Positions.Add(new PositionViewModel(position)); } }
public MovementRandomPickup(GameElementZone zone) { _zone = zone; Positions.Add(new Position(-45, new RealPoint(1050, 400))); Positions.Add(new Position(-45 + 180, new RealPoint(1950, 400))); }
private void Save(SideButton sideButton) { if (!Position.HasErrors) { switch (sideButton) { case SideButton.Add: Position.Insert(); Positions.Add(Position); break; case SideButton.Edit: Position.Update(); OldPosition.Copy(Position); break; } ReturnState(sideButton); } else { RadWindow.Alert(new DialogParameters { Content = "Ada data yg masih kosong", Owner = Application.Current.MainWindow }); } }
//Set current culture and update UI fields public void SetLanguage() { Properties.Settings.Default.Language = Language; Properties.Settings.Default.Save(); switch (Language) { default: Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-US"); break; case 1: Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("ru-RU"); break; } Title = ResourceHandler.GetResource("Title"); NameString = ResourceHandler.GetResource("NameString"); Retrieve = ResourceHandler.GetResource("Retrieve"); Clear = ResourceHandler.GetResource("Clear"); LanguageLabel = ResourceHandler.GetResource("LanguageLabel"); FrequencyLabel = ResourceHandler.GetResource("FrequencyLabel"); LambdaLabel = ResourceHandler.GetResource("LambdaLabel"); SignalTypeLabel = ResourceHandler.GetResource("SignalTypeLabel"); CommentLabel = ResourceHandler.GetResource("CommentLabel"); Positions.Clear(); Positions.Add(ResourceHandler.GetResource("JuniorResearcher")); Positions.Add(ResourceHandler.GetResource("Researcher")); Positions.Add(ResourceHandler.GetResource("SeniorResearcher")); }
public void AddPosition(string positionCode) { var coordinate = new Coordinate(positionCode); var position = new Position(coordinate, this); Positions.Add(position); }
public override void ReadXml(XmlReader reader) { if (!reader.IsEmptyElement) { Positions.Clear(); reader.ReadStartElement("Positions"); int i = 1; while (reader.NodeType != XmlNodeType.EndElement) { Positions.Add(new KneeBoardPosition(this, i++, reader.GetAttribute("ImageFilename"))); reader.Read(); } reader.ReadEndElement(); } else { reader.Read(); } if (reader.Name.Equals("Alignment")) { Alignment = (ImageAlignmentPlus)Enum.Parse(typeof(ImageAlignmentPlus), reader.ReadElementString("Alignment")); } // Load base after image so size is properly persisted. base.ReadXml(reader); BeginTriggerBypass(true); CurrentPosition = DefaultPosition; // EndTriggerBypass(true); }
public AnalyticsViewModel() { Factory = new SourceInstrumentDataFactory(); Mediator.Instance.PortfolioChanged += (s, e) => { UpdateCurrentPortfolio(e.Portfolio); Positions = RepositoryReader.LoadPositions(e.Portfolio); UpdateCurrentPortfolioPrices(e.Portfolio); PortfolioProfit = PortfolioAnalytics.CalculatePortFolioProfit(Positions); PortfolioReturn = PortfolioAnalytics.CalculatePortfolioReturn(Positions); s = this; e.AnalyticList = HistoricalReturnSeries; }; Mediator.Instance.AddPosition += (s, e) => { Positions.Add(e.Position); PortfolioProfit = PortfolioAnalytics.CalculatePortFolioProfit(Positions); PortfolioReturn = PortfolioAnalytics.CalculatePortfolioReturn(Positions); s = this; e.AnalyticList = HistoricalReturnSeries; }; }
public void CloneMarker() { var position = (uint)Writer.BaseStream.Position; Positions.Add(position); Allocate(); }
private void PositionAddedMessageReceived(PositionAddedMessage position) { DispatcherHelper.CheckBeginInvokeOnUI(() => { Positions.Add(position.Position); }); }
private void SearchForMidway(FilterEditModel filters) { GeoCoordinate searchCoordinate; // get itinerary from Google Directions GoogleItinerary itineraryComputer = new GoogleItinerary(); GoogleItineraryBase response = itineraryComputer.GetItinerary(filters.PositionA, filters.PositionB); // push polylines to view for rendering Steps = new Dictionary <double, double>(); foreach (var step in response.routes[0].legs[0].steps) { Steps.Add(step.end_location["lat"], step.end_location["lng"]); } // compute mid point ? // TODO // if google response is not relevant, use As The Crow Flies method searchCoordinate = MidPoint(filters.PositionA, filters.PositionB); Positions.Add(filters.PositionA.Latitude, filters.PositionA.Longitude); Positions.Add(filters.PositionB.Latitude, filters.PositionB.Longitude); InitLocationsByCoordinate(searchCoordinate, filters.OnlyOpenBars); }
public void ProcessItemsAt(DateTime date) { //select the orders from today var todaysOrders = _allOrders.Where(x => x.TradeDate.Date == date).ToList(); foreach (Order o in todaysOrders) { //Add orders to their respective trades if (o.TradeID.HasValue) { TradeTrackers[o.TradeID.Value].AddOrder(o); } //add orders to positions if (!Positions.ContainsKey(o.InstrumentID)) { Positions.Add(o.InstrumentID, new Position(o.Instrument)); } Positions[o.InstrumentID].AddOrder(o); } AddTodaysCashTransactions(date); AddTodaysFxTransactions(date); }
/// <summary> /// Add the CTs to the trade trackers /// </summary> private void AddTodaysCashTransactions(DateTime date) { if (!_cashTransactionsByDate.ContainsKey(date.Date)) { return; } foreach (CashTransaction ct in _cashTransactionsByDate[date.Date].Where(x => x.TradeID.HasValue)) { //add to trade TradeTrackers[ct.TradeID.Value].AddCashTransaction(ct); //add to position if (ct.InstrumentID.HasValue) { if (!Positions.ContainsKey(ct.InstrumentID.Value)) { Positions.Add(ct.InstrumentID.Value, new Position(ct.Instrument)); } Positions[ct.InstrumentID.Value].AddCashTransaction(ct); } else { Positions[NullInstrumentId].AddCashTransaction(ct); } } }
private void SetDefault() { if (RentValues.Count() == 0 && Positions.Count() == 0 && Users.Count() == 0) { Positions.Add(new Position() { Name = "јдминистратор" }); Positions.Add(new Position() { Name = "ѕользователь" }); Users.Add(new User() { FirstName = "јдмин", LastName = "јдмин", Login = "******", Password = "******", PositionId = 1 }); RentValues.Add(new RentValue { Name = "—уточный", Price = 10 }); RentValues.Add(new RentValue { Name = "ћес¤чный", Price = 100, }); this.SaveChanges(); } }
private List <Edge> ResetGraphData(AI_TYPE InType, Vector3[] InPositions) { // Lazy Dictionary <int, Vector3> Positions; if (!Map_Positions.TryGetValue(InType, out Positions)) { Positions = new Dictionary <int, Vector3>(); Map_Positions.Add(InType, Positions); } ; Positions.Clear(); foreach (var pos in InPositions) { Positions.Add(Positions.Count, pos); } // Reset Graph, Restore edges of Prim to graph G = new Graph(Positions); List <Edge> edges = G.Prim(); G.ResetAdj(edges); return(edges); }
private void DrawCharacter(string text, Vector3 origin, float w, float h, TextInfo info) { Positions.Clear(); Colors.Clear(); TextureCoordinates.Clear(); info.Offsets.Clear(); // CCW from top left var a = new Vector2(-w / 2, -h / 2); var b = new Vector2(-w / 2, h / 2); var c = new Vector2(w / 2, -h / 2); var d = new Vector2(w / 2, h / 2); var uv_a = new Vector2(0, 0); var uv_b = new Vector2(0, 1); var uv_c = new Vector2(1, 0); var uv_d = new Vector2(1, 1); // Create foreground data Positions.Add(info.Origin); Positions.Add(info.Origin); Positions.Add(info.Origin); Positions.Add(info.Origin); Colors.Add(FontColor); Colors.Add(FontColor); Colors.Add(FontColor); Colors.Add(FontColor); TextureCoordinates.Add(uv_b); TextureCoordinates.Add(uv_d); TextureCoordinates.Add(uv_a); TextureCoordinates.Add(uv_c); info.Offsets.Add(a); info.Offsets.Add(c); info.Offsets.Add(b); info.Offsets.Add(d); // Create background data Positions.Add(info.Origin); Positions.Add(info.Origin); Positions.Add(info.Origin); Positions.Add(info.Origin); Colors.Add(BackgroundColor); Colors.Add(BackgroundColor); Colors.Add(BackgroundColor); Colors.Add(BackgroundColor); TextureCoordinates.Add(uv_a); TextureCoordinates.Add(uv_a); TextureCoordinates.Add(uv_a); TextureCoordinates.Add(uv_a); info.Offsets.Add(a); info.Offsets.Add(c); info.Offsets.Add(b); info.Offsets.Add(d); }
public MenuLogin() { Positions.Add("Podaj dane logowania"); Positions.Add("Zapomniałem loginu"); Positions.Add("Zapomniałem Hasła"); Positions.Add("Cofnij"); Positions.Add("Wyjdź"); }
public void Update(Vector2 position, string typeId, int speedTurnsLeft, int abilityCooldown) { base.Update(position); Positions.Add(position); this.TypeId = typeId; this.SpeedTurnsLeft = speedTurnsLeft; this.AbilityCooldown = abilityCooldown; }
private void AddPosition(PositionModel position) { Positions.Add(position); position.PropertyChanged += PositionPropertyChanged; UpdatePnl(); }
public Position CreatePosition(string id) { var position = new Position(id); Positions.Add(position.Id, position); return(position); }
public MenuStartAdmin() { Positions.Add("Dostępne zajęcia na silowni"); Positions.Add("Wyświetl zajęcia filtrowane wg kryteriów"); Positions.Add("Zarządzaj użytkownikami"); Positions.Add("Wyloguj"); Positions.Add("Wyjście z programu"); }
public MovementGroundedZone(GroundedZone zone) : base() { _zone = zone; Positions.Add(new Position(180, new RealPoint(_zone.Position.X - 70 - 225, zone.Position.Y))); Positions.Add(new Position(0, new RealPoint(_zone.Position.X + 70 + 225, zone.Position.Y))); Positions.Add(new Position(90, new RealPoint(_zone.Position.X, zone.Position.Y + 70 + 225))); }
public override void SetEnablePositions(ISituation situation, out Positions enableMovein, out Positions enableCapture) { enableMovein = new Positions(); enableCapture = new Positions(); if (this.GameSide == Enums.GameSide.White) { #region 白兵 if (this.Position.Y < 1) return;//白兵怎么也不可能在第一行上 Position tmpPos = Position.Empty; //向北 tmpPos = this.Position.ShiftNorth(); if (tmpPos == Position.Empty) return; if (!situation.ContainsPiece(tmpPos.Dot)) { enableMovein.Add(tmpPos); } //再向北(仅当在兵从未动过时) if (this.Position.Y == 1) { tmpPos = tmpPos.ShiftNorth(); if (!situation.ContainsPiece(tmpPos.Dot)) { enableMovein.Add(tmpPos); } } //吃过路兵的判断 if (this.Position.Y == 4) { #region 过路兵 //西北 tmpPos = this.Position.ShiftWest(); if (tmpPos != null) { Piece pawn; Game game = (Game)situation; if (game.TryGetPiece(tmpPos.Dot, out pawn)) { if (pawn is PiecePawn) { if (((PiecePawn)pawn).EnableEnPassanted) { enableMovein.Add(this.Position.ShiftWestNorth()); enableCapture.Add(tmpPos); } } } } //东北 tmpPos = this.Position.ShiftEast(); if (tmpPos != null) { Piece pawn; Game game = (Game)situation; if (game.TryGetPiece(tmpPos.Dot, out pawn)) { if (pawn is PiecePawn) { if (((PiecePawn)pawn).EnableEnPassanted) { enableMovein.Add(this.Position.ShiftEastNorth()); enableCapture.Add(tmpPos); } } } } #endregion } //剑指西北 Position.Shift(this.GameSide, situation, this.Position.ShiftWestNorth(), enableMovein, enableCapture, false); //剑指东北 Position.Shift(this.GameSide, situation, this.Position.ShiftEastNorth(), enableMovein, enableCapture, false); #endregion } else { #region 黑兵 if (this.Position.Y > 6) return; Position tmpPos = Position.Empty; //向南 tmpPos = this.Position.ShiftSouth(); if (tmpPos == Position.Empty) return; if (!situation.ContainsPiece(tmpPos.Dot)) { enableMovein.Add(tmpPos); } //再向南(仅当在兵从未动过时) if (this.Position.Y == 6) { tmpPos = tmpPos.ShiftSouth(); if (!situation.ContainsPiece(tmpPos.Dot)) { enableMovein.Add(tmpPos); } } //吃过路兵的判断 if (this.Position.Y == 3) { #region 过路兵 //西南 tmpPos = this.Position.ShiftWest(); if (tmpPos != null) { Piece pawn; Game game = (Game)situation; if (game.TryGetPiece(tmpPos.Dot, out pawn)) { if (pawn is PiecePawn) { if (((PiecePawn)pawn).EnableEnPassanted) { enableMovein.Add(this.Position.ShiftWestSouth()); enableCapture.Add(tmpPos); } } } } //东南 tmpPos = this.Position.ShiftEast(); if (tmpPos != null) { Piece pawn; Game game = (Game)situation; if (game.TryGetPiece(tmpPos.Dot, out pawn)) { if (pawn is PiecePawn) { if (((PiecePawn)pawn).EnableEnPassanted) { enableMovein.Add(this.Position.ShiftEastSouth()); enableCapture.Add(tmpPos); } } } } #endregion } //剑指西南 Position.Shift(this.GameSide, situation, this.Position.ShiftWestSouth(), enableMovein, enableCapture, false); //剑指东南 Position.Shift(this.GameSide, situation, this.Position.ShiftEastSouth(), enableMovein, enableCapture, false); #endregion } }
/// <summary> /// 从当前的位置移动到新位置。 /// 而后,判断该位置中是否有棋子,并根据判断结果更新两个Position集合(可移动"位置"集合,可杀棋"位置"集合)。 /// 并返回是否可以继续移动的判断。 /// </summary> /// <param name="situation">当前局面</param> /// <param name="tgtPos">目标位置</param> /// <param name="moveInPs">可移动"位置"集合</param> /// <param name="capturePs">可杀棋"位置"集合</param> /// <param name="enableToMoved">该棋格为空时,是否可以移入,一般是指“兵”,“兵”的斜向的两个棋格对于“兵”来讲能吃子不能移入。</param> /// <returns>移动到新位置后是否可以继续移动(当目标棋格中无棋子)</returns> public static bool Shift( Enums.GameSide side, ISituation situation, Position tgtPos, Positions moveInPs, Positions capturePs, bool enableToMoved) { if (tgtPos == Position.Empty) return false; char pieceChar; if (situation.TryGetPiece(tgtPos.Dot, out pieceChar)) { if (char.IsLower(pieceChar) && side == Enums.GameSide.White) capturePs.Add(tgtPos); if (char.IsUpper(pieceChar) && side == Enums.GameSide.Black) capturePs.Add(tgtPos); return false; } else { if (enableToMoved) { moveInPs.Add(tgtPos); return true; } else return false; } }