Is there a way to speed up this update query using joins or any other method
Look for 

UPDATE pcln, (  SELECT pcln.srno, MIN(hst.`date`) mindate
                FROM pcln, hst
                WHERE hst.sym=pcln.ins 
                  AND hst.`date` &gt;=  pcln.`date` 
                  AND hst.hp &gt;= pcln.t1
                  AND pcln.bs = 'B'
                GROUP BY pcln.srno  ) tmp
SET pcln.t1a = tmp.mindate
WHERE pcln.srno = tmp.srno;


To optimize the subquery create index pcln(bs,ins). Or the index which is covering for the subquery.