/// <summary> /// 调整规则: /// 1.如果该开始和结束 /// /// 逻辑: /// 1.是否有repeat,如果没有repeat直接移动时间 /// 2. /// </summary> /// <param name="data"></param> /// <param name="period"></param> private void Adjust(TickData data, TickInfo_Period period) { TickPeriodAdjustInfo adjustInfo = period.adjustInfo; if (!adjustInfo.StartRepeat && !adjustInfo.EndRepeat) { Adjust_NoRepeat(data, period, adjustInfo); Console.WriteLine("NoRepeat"); } else if (adjustInfo.StartRepeat && adjustInfo.EndRepeat) { Adjust_AllRepeat(data, period, adjustInfo); Console.WriteLine("AllRepeat"); } //有时间偏移,首先根据偏移位置移正,再处理repeat else if (adjustInfo.HasTimeOffset()) { Adjust_HasTimeOffsetAndRepeat(data, period, adjustInfo); Console.WriteLine("TimeOffset"); } //起始位置repeat,末尾offset,且正好合拍 else if (adjustInfo.HasRepeatOffset()) { Adjust_HasRepeatOffset(data, period, adjustInfo); } //该数据段没有偏移,只有repeat else { Adjust_NoOffsetOnlyRepeat(data, period, adjustInfo); } }