← Zurück

S#.API

обнаружена ошибка в файле CandleBulder.cs в выделенной строчке:

protected virtual void UpdateCandle(CandleSeries series, TCandle candle, ICandleBuilderSourceValue value) { if (candle == null) throw new ArgumentNullException("candle");

  	if (value == null)
  		throw new ArgumentNullException("value");

  	if (value.Price < candle.LowPrice)
  	{
  		candle.LowPrice = value.Price;
  		candle.LowTime = value.Time;
  	}

  	if (value.Price > candle.HighPrice)
  	{
  		candle.HighPrice = value.Price;
  		candle.HighTime = value.Time;
  	}

  	candle.ClosePrice = value.Price;
  	candle.TotalPrice += value.Price * value.Volume;

  	candle.LowVolume = (candle.LowVolume ?? 0m).Min(value.Volume);
  	candle.HighVolume = (candle.HighVolume ?? 0m).Max(value.Volume);
  	candle.CloseVolume = value.Volume;
  	candle.TotalVolume += value.Volume;

        if (value.OrderDirection != null)
        {
           <u>***candle.RelativeVolume += value.OrderDirection == Sides.Buy ? value.Volume : -value.Volume;***</u>
        }


  	candle.CloseTime = value.Time;

  	if (series.IsCalcVolumeProfile)
  		candle.VolumeProfileInfo.Update(value);
  }

candle.RelativeVolume всегда будет null у себя переделал код:

if (value.OrderDirection != null) { var volumeDirect = value.OrderDirection == Sides.Buy ? value.Volume : -value.Volume; candle.RelativeVolume = candle.RelativeVolume != null ? candle.RelativeVolume.Value + volumeDirect : volumeDirect; } Теперь candle.RelativeVolume заполняется корректно

War dieses Thema hilfreich?

Thema teilen

Kommentare (1)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Mikhail Sukhov
Mikhail Sukhov

В след раз делайте Пул Реквесты. Это не долго, но нагляднее.