Exemplo n.º 1
0
		private void RaiseNewMyTrade(MyTrade trade)
		{
			NewMyTrade.SafeInvoke(trade);

			var multiEvt = NewMyTrades;

			if (multiEvt == null)
				return;

			multiEvt.SafeInvoke(new[] { trade });
		}
Exemplo n.º 2
0
 public StopLossCandleStrategy(CandleSeries series, MyTrade trade, Unit stopLossUnit)
 {
     this.CandleSeries = series;
     this.Trade = trade;
     this.StopLossUnit = stopLossUnit;
 }
Exemplo n.º 3
0
        // возвращает строку своей сделки
        private static string MyTradeToString(MyTrade trade)
        {
            //securityId;tradeId;time;volume;price;orderdirection;orderId 
            return "{0};{1};{2};{3};{4};{5};{6}".Put(
                                   trade.Trade.Security.Id,
                                   trade.Trade.Id,
                                   trade.Trade.Time,
                                   trade.Trade.Volume,
                                   trade.Trade.Price,
                                   trade.Trade.OrderDirection,
                                   trade.Order.Id);

        }
Exemplo n.º 4
0
		/// <summary>
		/// Рассчитать позицию по сделке.
		/// </summary>
		/// <param name="trade">Сделка.</param>
		/// <returns>Позиция по сделке.</returns>
		public virtual decimal ProcessMyTrade(MyTrade trade)
		{
			if (ByOrders)
				return 0;

			var position = trade.GetPosition();

			lock (_syncRoot)
				Position += position;

			ChangePosition(trade.Order.Security, trade.Order.Portfolio, position);

			return position;
		}
Exemplo n.º 5
0
 private void DrawTrade(MyTrade trade)
 {
     _chart.ProcessValues(trade.Trade.Time, new Dictionary<IChartElement, object>
     {
         {_tradeElem, trade}
     });
 }