Beispiel #1
0
        /// <summary>
        /// Make 2 data the same lenght and DateTime Index
        /// </summary>
        /// <param name="ds"> Changed data that will be the same lenght and date tme index) with this data</param>
        /// <returns></returns>
        public void Sync(BaseAnalysisData checkData)
        {
            int tmpIdx;

            double[] newClose    = new double[this.DateTime.Count];
            double[] newOpen     = new double[this.DateTime.Count];
            double[] newHigh     = new double[this.DateTime.Count];
            double[] newLow      = new double[this.DateTime.Count];
            double[] newVolume   = new double[this.DateTime.Count];
            double[] newDateTime = new double[this.DateTime.Count];
            for (int idx = 0; idx < this.DateTime.Count; idx++)
            {
                tmpIdx = checkData.FindDate(this.DateTime[idx], idx);
                if (tmpIdx < 0)
                {
                    newClose[idx]    = 0;
                    newOpen[idx]     = 0;
                    newHigh[idx]     = 0;
                    newLow[idx]      = 0;
                    newVolume[idx]   = 0;
                    newDateTime[idx] = this.DateTime[idx];
                }
                else
                {
                    newClose[idx]    = checkData.Close[tmpIdx];
                    newOpen[idx]     = checkData.Open[tmpIdx];
                    newHigh[idx]     = checkData.High[tmpIdx];
                    newLow[idx]      = checkData.Low[tmpIdx];
                    newVolume[idx]   = checkData.Volume[tmpIdx];
                    newDateTime[idx] = checkData.DateTime[tmpIdx];
                }
            }
            checkData.Close.Values    = newClose;
            checkData.Open.Values     = newOpen;
            checkData.High.Values     = newHigh;
            checkData.Low.Values      = newLow;
            checkData.Volume.Values   = newVolume;
            checkData.DateTime.Values = newDateTime;

            checkData.Bars.Close.Values  = newClose;
            checkData.Bars.Open.Values   = newOpen;
            checkData.Bars.High.Values   = newHigh;
            checkData.Bars.Low.Values    = newLow;
            checkData.Bars.Volume.Values = newVolume;
        }
        /// <summary>
        /// Make 2 data the same lenght and DateTime Index
        /// </summary>
        /// <param name="ds"> Changed data that will be the same lenght and date tme index) with this data</param>
        /// <returns></returns>
        public void Sync(BaseAnalysisData checkData)
        {
            int tmpIdx;
            double[] newClose = new double[this.DateTime.Count];
            double[] newOpen = new double[this.DateTime.Count];
            double[] newHigh = new double[this.DateTime.Count];
            double[] newLow = new double[this.DateTime.Count];
            double[] newVolume = new double[this.DateTime.Count];
            double[] newDateTime = new double[this.DateTime.Count];
            for (int idx = 0; idx < this.DateTime.Count; idx++)
            {
                tmpIdx = checkData.FindDate(this.DateTime[idx], idx);
                if (tmpIdx < 0)
                {
                    newClose[idx] = 0;
                    newOpen[idx] = 0;
                    newHigh[idx] = 0;
                    newLow[idx] = 0;
                    newVolume[idx] = 0;
                    newDateTime[idx] = this.DateTime[idx];
                }
                else
                {
                    newClose[idx] = checkData.Close[tmpIdx];
                    newOpen[idx] = checkData.Open[tmpIdx];
                    newHigh[idx] = checkData.High[tmpIdx];
                    newLow[idx] = checkData.Low[tmpIdx];
                    newVolume[idx] = checkData.Volume[tmpIdx];
                    newDateTime[idx] = checkData.DateTime[tmpIdx];
                }
            }
            checkData.Close.Values = newClose;
            checkData.Open.Values = newOpen;
            checkData.High.Values = newHigh;
            checkData.Low.Values = newLow;
            checkData.Volume.Values = newVolume;
            checkData.DateTime.Values = newDateTime;

            checkData.Bars.Close.Values = newClose;
            checkData.Bars.Open.Values = newOpen;
            checkData.Bars.High.Values = newHigh;
            checkData.Bars.Low.Values = newLow;
            checkData.Bars.Volume.Values = newVolume;
        }