high PAGEIOLATCH_SH waits on server
This may not directly answer your question, however you have multiple potential issues in your query, that are immediately visible to me.

AND Convert(DateTime,Valor) BETWEEN '2015-03-01' AND '2015-03-31'
AND DateDiff(day,Valor,GetDate()) &gt; 15



Why are you doing CONVERT(DateTime, Valor) ?  Is Valor not a DateTime type in the table?  If not, you're doing that wrong.
Running a function on a column (DateDiff(day, Valor, GetDate())) and comparing that to a value makes it non-SARGable.  Try this, instead:

AND Valor &gt; DATEADD(DAY, -15, GETDATE())
BETWEEN (x and y) may not function the way you think it does.  You're better off to use the following construct since it explicitly defines the precise date range you desire.  

WHERE Valor &gt;= '2015-03-01T00:00:00' AND Valor &lt; '2015-04-01T00:00:00'
WITH (NOLOCK) is NOT a go-faster button!  See http://blogs.sqlsentry.com/aaronbertrand/bad-habits-nolock-everywhere/ and http://sqlperformance.com/2015/04/t-sql-queries/the-read-uncommitted-isolation-level for excellent details about why that is a non-starter most of the time.