MARKET CLOSE: NZ shares join global rally; Pushpay, Scales, Heartland recover

By Paul McBeth
Dec. 27 (BusinessDesk) - New Zealand shares joined the post-Christmas global rally, with beat-up stocks including Pushpay, Scales Corp and Heartland Group among those leading the gains.
The S&P/ NZX 50 index rose 60.01 points, or 0.7 percent, to 8,774.52, its highest close in two weeks. Within the index, 28 stocks gained, 16 fell, and six were unchanged. Turnover was a quiet $58.3 million.
Stock markets across Asia followed Wall Street's cue, with Australia's S&P/ASX 200 index up 1.8 percent in afternoon trading, Hong...
Subscribe to BusinessDesk
Stay informed on business, government and financial developments across New Zealand.
- Deeply researched, twice-edited and fact-checked news
- Annual subscribers also receive a complimentary subscription to The Wall Street Journal
- Personalised email news alerts, plus gift up to 5 stories a month to non-subscribers
You can cancel anytime with two clicks, an email or a phone call.
Find out more.
We are serious about journalism.
Already a Subscriber ? Sign in here.
{{ registerForm.errors.get('form') }}
We had trouble validating your card. It's possible your card provider is preventing us from charging the card. Please contact your card provider or customer support.
{{ cardForm.errors.get('card') }}
{{ registerForm.errors.get('plan') }}
{{ __(plans[index].name) | capitalize }}
{{ plans[index].attributes.old_price | currency }}
{{ plans[index].price | currency }}
All subscriptions auto renew but are easy to cancel.
Tax: {{ taxAmount(selectedPlan) | currency }}
Total Price Including Tax: {{ priceWithTax(selectedPlan) | currency }} {{ selectedPlan.type == 'user' && spark.chargesUsersPerSeat ? '/ '+ spark.seatName : '' }} {{ selectedPlan.type == 'user' && spark.chargesUsersPerTeam ? '/ '+ __('teams.team') : '' }} / {{ __(selectedPlan.interval) | capitalize }}
Total Price Including Tax: {{ priceWithTax(selectedPlan) | currency }} {{ selectedPlan.type == 'user' && spark.chargesUsersPerSeat ? '/ '+ spark.seatName : '' }} {{ selectedPlan.type == 'user' && spark.chargesUsersPerTeam ? '/ '+ __('teams.team') : '' }} / {{ __(selectedPlan.interval) | capitalize }}
{{ registerForm.errors.get('email') }}
Not convinced yet?
Subscribe to our free 7am Headlines newsletter.
A quick summary of everything BusinessDesk has published in the previous 24 hours. No BusinessDesk
subscription needed.