Как найти повторения в последовательности?
1. Берём нужный нам временной диапазон.
2. На нём находим экстремумы max и min для пиковых значений показателей (по вертикальной оси).
3. Делим пополам ((max-min)/2) и получаем горизонтальное осевое значение конкретно для этого показателя/графика.
4. Затем берём отрезок пересечения этой оси: из положительной зоны в отрицательную (и наоборот) и внутри этой зоны ищем max и min значения по вертикальной оси, в зависимости от направления пересечения.
5. Найденные значения укажут разделение через временной показатель.
Каждый 2-й - и будет искомой серой линией.
Не усложняйте задачу без необходимости. Где X переходит через 50 вниз - там и граница. Если очень надо совпасть именно с серой линий - сдвинуть на константу.