public static void UpdateVolumes(ResizeableArray <CandleStickData> candles, TradeInfoItem trade, int period)
        {
            if (candles.Count == 0)
            {
                return;
            }
            CandleStickData saved = candles.Last();

            if (saved.Time > trade.Time || saved.Time.AddMinutes(period) <= saved.Time)
            {
                UpdateCandle(saved, trade);
                return;
            }
            saved = null;
            for (int ci = 0; ci < candles.Count; ci++)
            {
                CandleStickData c = candles[ci];
                if (c.Time <= trade.Time & c.Time.AddMinutes(period) > trade.Time)
                {
                    saved = c;
                    break;
                }
            }
            UpdateCandle(saved, trade);
        }
 public static void UpdateCandle(CandleStickData candle, TradeInfoItem trade)
 {
     if (candle == null)
     {
         return;
     }
     if (trade.Type == TradeType.Buy)
     {
         candle.BuyVolume += trade.Amount;
     }
     else
     {
         candle.SellVolume += trade.Amount;
     }
     candle.BuySellVolume = candle.BuyVolume - candle.SellVolume;
 }
Ejemplo n.º 3
0
 protected internal virtual void InsertTradeHistoryItem(TradeInfoItem item)
 {
     if (TradeHistory.Count > 0)
     {
         TradeInfoItem first = TradeHistory.First();
         if (first.Time > item.Time)
         {
             throw new Exception("Invalid Trade History Items Order By Time");
         }
         if (first.Id != 0 && first.Id != item.Id - 1)
         {
             throw new Exception("Invalid Trade History Items Order By Id");
         }
     }
     TradeHistory.AddFirst(item);
     ShortTradeHistory.AddFirst(item);
 }
Ejemplo n.º 4
0
 public void AddAccountTradeHistoryItem(TradeInfoItem item)
 {
     AccountTradeHistory.AddLast(item);
     AccountShortTradeHistory.Add(item);
 }
Ejemplo n.º 5
0
 protected internal void UpdateSimulationTradeData(TradeInfoItem tradeInfoItem)
 {
     TradeHistory.AddLast(tradeInfoItem);
 }
Ejemplo n.º 6
0
 protected internal virtual void AddTradeHistoryItem(TradeInfoItem item)
 {
     TradeHistory.AddLast(item);
     ShortTradeHistory.Add(item);
 }