The JSE pushed higher on Friday, on track for a 1% weekly loss, as the rand remained bolstered by a weaker dollar environment.

Brexit issues were also on the agenda, following the departure of six members of the British cabinet on Thursday, possibly pointing to a challenge to UK Prime Minister Theresa May's leadership.

Trade war issues were on the agenda, amid a written response to US demands from China, which analysts said was likely to bear fruit.

"It appears that both parties are looking to kick the can down the road until February to resolve some significant differences. While not too surprising, the fear here is that this long and winding road to compromise could be dotted with numerous pratfalls," Oanda analyst Stephen Innes said.

At 9.30am the all share was up 0.75% at 52,534.6 points and the top 40 0.96%. Banks were up 1.08%, general retailers 1.3% and industrials 0.57%.

Diversified miner Glencore had gained 1.78% to R55.45 and BHP 1.6% to R291.75.

Rand hedge British American Tobacco fell a further 2.42% to R505, bringing its weekly loss to almost 20%. The stock has been under strain amid reports US authorities were seeking a ban on menthol cigarettes.

Sibanye-Stillwater rebounded 5.14% to R9, having struck a three-year wage deal with its unions.

Lonmin, which is a target for takeover from Sibanye, fell 7.09% to R7.08.

Absa was up 1.97% to R158.65, Standard Bank 1.58% to R173.38 and FirstRand 1.14% to R69.28.

Mr Price gained 2.2% to R241.03.

Gold was up 0.17% to $1,215.16 an ounce and platinum 0.08% to $842.02. Brent crude had added 1.72% to $67.79 a barrel.