First we detect if any of the possible candidate signals were born or died in the interesting time period. We use these time points to reduce the window we'll use to pass to the correlation functions. We can also detect any changepoints in the time series and apply similar logic. Once we've determined the best window bounds for each candidate signal, we use pearson and spearman correlation functions to get a score for the pair of signals -- the initial signal that started the inquiry and the candidate signal using the determined time window.
The code is about 98% data preparation, signal analysis, and window determination and about 2% correlation work.
(I've tried to summarize quite a bit, let me know if you'd like clarifications or have other questions.)