@JohnHoward the example in the Knowledge Base is what you should refer to. If you want to calculate an indicator using various inputs from the symbol (SPY in your example) then use SetForeign. The Plus Directional indicator needs the various values of Open/Hi/Low/Close from the SPY (it helps if you are familiar with how to construct the indicators you choose such as the underlying calculations and the required inputs for the PDI).

SetForeign( "SPY" );
//
// now we can calculate any indicator based on SPY symbol data
//
SPY_PDI_rising = PDI( 3 ) > Ref(PDI(3), -1);
//
// now go back to original data (current symbol)
//
RestorePriceArrays();

Now you can use the condition SPY_PDI_rising while running your exploration on other symbols.

You mention have other conditions for the rest of the Exploration symbols, so code your other condition and then you may do something like this,