Analiza lo que pides... que el registro cumpla que 
  o precio uno este dentro de (...) 
o precio 2 este dentro de (...) 
o .... 
luego es 
lógico que te responda con los que cumplen con una de las "
o", esdecir que uno de los precios sea
 igual a uno de los numeros entre parentesis 
Tu quieres que :  
 Cita:  ...los registros que contengan al menos 3 de esos precios (mayor igual)...
    
La cosa será complicada seguro que no puedes buscar otro camino....  
Se me ocurre un condicional que de uno o cero si el precio esta dentro del parentesis y luego sumar el resultado y si da 3 o mayor que 3 listar el registro... 
...
WHERE (if(pre1 IN ($yt),1,0)+if(pre2 IN($yt),1,0)+if(pre3 IN($yt),1,0)+if(pre4 IN($yt),1,0)+if(preant IN($yt),1,0)+if(prenuevo IN($yt),1,0))>=3
... 
algo así ... no lo he probado pero por ahí irá... 
Quim