//private int _lastIndex = -1; //private float _lastValue; #region protected Function(IFunction data) /// <summary> /// Функция индикатора может иметь исходные данные двух типов /// iBars - данные Open, High, Low и Close, в данном случае функция не может /// быть расчитана от другого индикатора. /// iBars.RateData - данные Open, High, Low или Close, в данном случае функция /// может быть рассчитана от этих цен /// Function - данные другой функции, в данном случае функция может быть рассчитана /// от этих цен, либо от другой функции /// </summary> /// <param name="data"></param> protected Function(IFunction inData) { if (inData == null) { throw (new ArgumentNullException("inData")); } _inData = inData; _items = new ItemCollection(this); /* Поик основателя, установка сессии с ним */ if (inData is iBars.RateData) { _sessionSource = (inData as iBars.RateData).Session; } else if (inData is iBars) { _sessionSource = (inData as iBars).Session; } else if (inData is Function) { _sessionSource = (inData as Function)._sessionSource; } if (_sessionSource == null) { throw (new NullReferenceException("InitializeSession error. Session not found")); } _sessionDest = new SessionDest(_sessionSource); }
public BarManager(BarsManager owner, TimeFrame timeFrame) { _session = owner.Session; _savedSession = new SessionDest(_session); _owner = owner; _timeFrame = timeFrame; }
public TicksManager() { _sessionSource = new SessionSource(); _sessionDest = new SessionDest(_sessionSource); _sessionSource.IncrementsLevel1(); _barsManager = new BarsManager(this); _map = new TicksMapManager(this); }
private TicksFileData(FileInfo file, bool loadInfo) { _file = file; _sessionSource = new SessionSource(); _sessionDest = new SessionDest(_sessionSource); _sessionSource.IncrementsLevel1(); if (loadInfo) { this.LoadFileInfo(); } }