Corporate Results Monitor

FNArena's All-Year Round Australian Corporate Results Monitor.

Currently monitoring September 2020-January 2021.

Figures shown as at 18 January 2021

FNArena subscribers receive the most current information. Please login with your account details.

TOTAL STOCKS:

49

Beats

24

In Line

11

Misses

14

Total Rating Upgrades:

10

Total Rating Downgrades:

10

Total target price movement in aggregate:

7.68%

Average individual target price change:

5.01%

Beat/Miss Ratio:

1.71

Previous Corporate Results Updates

Company Result Upgrades Downgrades Buy/Hold/Sell Prev Target New Target Brokers Commentary
ALQ - ALS Ltd IN LINE 0 0 4/1/1 9.54 10.10 6

ALS Ltd reported slightly below some estimates but largely in line with consensus. The first quarter was understandably weak but the second quarter showed positive signs of recovery. Life sciences recovered faster than brokers expected and minerals testing is picking up as mining comes back on line. Investment in additional laboratory capacity provides upside for life sciences and M&A opportunity provides another catalyst. The only issue is as to whether hard lockdowns are reintroduced across critical geographies which would upset the recovery, and this keeps Ord Minnett on Lighten.

AMC - Amcor BEAT 0 1 3/3/0 16.87 17.23 7

Amcor posted September quarter earnings ahead of consensus and FY21 earnings growth guidance has been upgraded to 7-12% from 5-10%. Strength in North America and emerging markets offset weakness in Europe in the quarter. Increased scale and product offerings following the Bemis acquisition appear to be bearing fruit. Dividend guidance slightly disappointed but this is offset by an announced buyback. For the Buy-raters, Amcor offers attractive defensiveness, particularly as the virus continues to run out of control.

ALD - AMPOL MISS 0 0 2/2/0 28.63 27.40 4

Ampol's quarterly earnings were below expectation on lower fuels & infrastructure income. The Lytton refinery was shuttered during the period but that was known. On the positive side, strong convenience store income offset to a degree and is expected to continue at least until travel restrictions ease, while fuel volumes will increase as Victoria returns from lockdown.

ANZ - ANZ Banking Group BEAT 0 0 6/0/0 21.49 23.25 7

ANZ Bank's result beat most forecasts on the earnings line. Much of the tail risk associated with bad debts is diminishing, given higher provisions for coverage against lower than expected actual bad debts, less risk-weighted asset inflation and prior deferred loan repayments recommencing at a rate better than feared. Solid market earnings may not repeat but the bank is in a strong capital position. The outlook for revenue growth ahead is not too flash, but seven brokers went into the result with Buy ratings and there is no change.

ALL - Aristocrat Leisure BEAT 0 0 5/1/0 33.68 37.48 6

Aristocrat Leisure's FY20 profit was down almost -50% but brokers saw a solid result, slightly better than most forecasts. The company is carrying substantial liquidity that could be used for M&A and/or capital management. Citi suggests the extent of provisions on the balance sheet imply earnings were understated. Going forward, earnings growth will be underpinned by the monetisation of RAID and a US gaming operations recovery, although US re-lockdowns are not beyond possibility. Brokers are clearly prepared to gamble with only Macquarie on Hold due to perceived fair value.

API - Aus Pharmaceutical Ind MISS 1 0 1/1/0 1.15 1.23 2

While Australian Pharmaceutical Industries beat on the profit line, both brokers have downgraded earnings forecasts. The key disappointment for Credit Suisse (Hold) was weakness in retail sales. The company's exposure to Victoria, CBDs, shopping centres, and its beauty offering have all been virus-impacted. The company has closed 14 Priceline company stores (non-pharmacy) to lower its exposure to standalone retail stores, without the defensive element of pharmacy. While the trend is expected to continue through FY21, and no guidance was offered, Citi upgrades to Buy on valuation.

AST - Ausnet Services BEAT 0 1 0/4/2 1.85 1.90 6

AusNet Services' underlying earnings performance blew brokers away due to an underestimation of the boost to electricity distribution with Victoria locked down. Clearly this won't continue, but the business continues to be reshaped, being four months into a transformation program. This includes redirecting capex to put downward pressure on costs, and reinvesting some cost savings into customer-focused initiatives. Regulatory resets will nevertheless create a headwind from the second half through to FY23, with electricity distribution and transmission resetting to lower weighted average costs of capital, leaving earnings flat over three years.

BOQ - Bank Of Queensland BEAT 2 1 3/3/1 5.91 6.85 7

Bank of Queensland's full-year earnings beat forecasts, as improved revenues and good cost controls led to a surprise increase in margins. The 12c dividend (mostly) surprised as well. While the bank's bad loan provision is seen as conservative and management is delivering on its strategy, most brokers agree revenue growth guidance for FY21 looks ambitious in the current climate. Given a previously weak valuation, the "beat" prompted Credit Suisse and Morgans to upgrade to Buy. Citing unrealistic volume growth guidance and the share price pop, taking the stock to a 25% premium over 5-year relative value to peers, Macquarie downgrades to Sell.

BKW - Brickworks BEAT 0 0 4/0/0 18.23 21.09 4

A -31% decline in earnings for Brickworks in FY20 was not as bad as feared given Building Products Australia put in a strong second half and Property also beat forecasts. Solid cost management also contributed. While risks remain to activity in NSW and Victoria, outlook comments in regard to BPA were cautiously optimistic. Property is expected to remain resilient and Building Products North America should benefit from rationalisation efforts and recent acquisitions. Morgans believes Industrial Property Trust tailwinds, an asset heavy balance sheet and attractive dividend yield will provide investors ongoing valuation support until a cyclical recovery in the operational business occurs, and upgrades to Buy.

CIA - Champion Iron BEAT 0 0 1/1/0 3.58 4.23 2

Champion Iron beat on shipments and prices in the September quarter. Bloom Lake returned to full capacity, increasing throughput and iron recoveries as costs improved. Capex for Bloom Lake phase 2 has increased and an update on the expansion is expected by the end of the year. Macquarie (Buy) considers the company's upgrade momentum significant.

CIM - Cimic Group MISS 0 0 0/1/0 26.73 23.00 2

Four brokers cover Cimic but only two have elected to update on the company's Q3 earnings result, and one of those is on research restriction. While Cimic's profit was in line, UBS (Hold) found cash conversion weak, impacted by a slowdown of revenues and new work due to covid and reduced debtor factoring. Ord Minnett (No Rating) has reduced near-term revenue assumptions as project awards are delayed by the pandemic. All up we'll call it a miss, while noting Macquarie has a Hold rating from July and Credit Suisse a Buy.

CLV - Clover Corp IN LINE 0 0 1/1/0 2.79 2.65 2

Clover Corp's result beat UBS (Hold) but was in line with Ord Minnett (Buy), who was disappointed by guidance. We'll net that all out to in-line. Both brokers are nevertheless impressed with European sales following a regulatory change. While cognisant the first half of FY21 will remain challenging, both brokers highlight structural tailwinds in the form of demand for the company's market-leading DHA (omega-3 from tuna oil) products and new product potential. Ord Minnett is increasingly confident in the opportunity for DHA to be included in infant formula brands in China. With more than 50% of the world's infant formula consumed in China, the regulation could set a minimum level for DHA in formula globally.

CKF - Collins Foods BEAT 0 0 2/0/0 10.73 11.52 2

Brokers underestimated the strength of Collins Foods' KFC Australia franchise in the company's virus-impacted first half. Local sales grew by 12.4% compared to UBS's forecast of 5.4%. This outperformance more than offset weaker than expected results for KFC Europe, Sizzler and Taco Bell. UBS believes the business continues to be driven by multiple tailwinds including a continued uptake in delivery, rising market share via drive-through and continued store roll-outs. Morgans suggests KFC Australia earnings can incrementally grow into FY22, while Sizzler and Taco Bell profitability should improve.

CSR - CSR BEAT 0 0 4/1/0 4.75 5.08 5

CSR's result substantially beat forecasts on the profit line. The highlight was a flat year on year result for building products -- much better than feared -- with cost controls improving margins. It also appears the Gyprock business has taken market share. Aluminium nonetheless disappointed and there is a lack of visibility associated with coal-related cost exposures, but the dividend and surprise special dividend pleased all. Four Buys retained, but uncertainty remains given virus trajectory.

ECX - Eclipx Group BEAT 0 0 4/0/0 1.68 1.95 4

EclipX Group posted a result that beat all forecasts, with brokers noting a combination of a lower interest burden through debt reduction and increased end-of-lease income, and specifically a virus-related boost in used car prices. The company has repaired its balance sheet through non-core divestments and gross debt is below target. Brokers are at odds as to whether higher used car prices are sustainable, but opportunities are being pursued in the SME part of the market that should support growth and margins.

ELD - Elders BEAT 0 0 1/1/0 11.52 12.83 2

Elders delivered a solid result ahead of forecasts, featuring margin growth across all states and products, cost controls and capital discipline. The company benefited from improved seasonal conditions from the second quarter, subsequent strong demand for farm inputs and materially higher livestock prices. The result was supported by better than expected performances from acquisitions. Macquarie (Buy) notes the stock is trading at a discount to global peers when a premium should be the case on performance and further M&A opportunities. Morgans (Hold) believes the stock is fairly valued.

FPH - Fisher & Paykel Healthcare IN LINE 0 0 1/0/3 0.00 0.00 4

It was of no great surprise Fisher & Paykel Healthcare was able to post a stellar performance on global demand for ventilators. The question is as to whether a vaccine renders this a one-off. UBS (Sell) believes so, but others disagree. Citi believes the hospital division will grow revenue at double-digit rates over the next decade because of the large potential market size and benign competitive environment. Credit Suisse does not believe the run is over yet. Both brokers retain Sell simply on valuation. Macquarie (Buy) suggests the virus has shown doctors what F&P's ventilators are capable of, and covid is not the only disease requiring such treatment.

FSF - Fonterra MISS 0 0 0/2/1 0.00 0.00 3

Fonterra Shareholders Fund reported at the top end of guidance but the "beat" was of low quality as far as UBS (Hold) is concerned. Credit Suisse (Hold) suggests the company still needs to make allowance for the pandemic-related uncertainty that is affecting the food services business, while the result simply missed Macquarie's (Sell) forecast. Food services volumes are expected to recover in FY21 with covid restrictions easing. The company has guided to better outcomes over the next five years, but the pace of recovery is expected by brokers to be slower than hoped. A review of capital structure is ongoing and a priority, while the significant range in earnings guidance continues to highlight the volatility and lack of visibility in the business, upon which all brokers agree.

GMA - Genworth Mortgage Insur BEAT 0 0 1/0/0 2.70 2.75 1

The underlying third quarter result for Genworth Mortgage Insurance Australia was considered strong by Macquarie, as reserves continue to be built for the troubled outlook, including an expanded risk margin from 14% to 18% and allowing for claims delays. The insurer's National Australia Bank contract expires from 20 November with no delay expected.

GNC - Graincorp BEAT 1 0 4/0/0 4.59 5.00 4

GrainCorp's FY20 result was a big improvement on FY19 but it still missed forecasts. Brokers are not concerned, given the country was still drought-bound for half the period. It's not anymore, and indeed forecasts for a bumper crop in FY21, similar to the last bumper crop in FY17, lead to an FY21 outlook statement well ahead of broker assumptions, hence we'll call it a "beat". The outlook was backed up by a dividend, the first since FY18, which also surprised. FY20 was a year of transition and the company is now building momentum. Four from four Buys tell the tale.

IPL - Incitec Pivot MISS 0 1 4/2/0 2.56 2.51 6

Incitec Pivot's earnings rebounded in FY21 year on year but fell short of broker expectations. Only one downgrade from Buy has nonetheless resulted. The miss was due to an explosives result which showed structural declines in US coal, temporary covid restrictions impacting some customers, lower earnings in Indonesia and the re-contracting of Moranbah customers. While FY21 will start slowly due to necessary plant maintenance, brokers are looking ahead to FY22. Mining activity should rebound, fertiliser prices are expected to rise and technology should both support market share and improve the profit mix in contract renewals.

IAP - IRONGATE GROUP LIMITED IN LINE 0 0 0/0/0 1.45 1.45 2

Investec Australia Property posted one beat and one miss to net out to in-line. The reason there are no ratings on the stock is that the REIT is looking to internalise management, so we assume both Macquarie and Ord Minnett are advising and thus restricted. Portfolio performance was nevertheless resilient in the September quarter despite a subdued office market, featuring strong leasing volumes and a reversal of property devaluations recognised in March. Industrial remains Ord Minnett's preferred property asset class, but the broker sees some risk to metropolitan office valuations given the potential structural shift to work-from-home. Macquarie likes the relative income certainty, and notes the REIT continues to look for opportunities to deploy capital.

JHX - James Hardie BEAT 0 1 4/2/0 39.56 40.26 6

Macquarie (Buy) describes James Hardie's September quarter as "exemplary" and "quality" with cash flow the highlight, reflecting structural changes in the business model and industry strength. The broker believes the structural demand story remains intact, even with a vaccine. Revenue numbers had been pre-released but other brokers were equally blown away with cash flow, which will allow for reduced debt and a reinstated dividend. No disagreement this was a strong result, with no reason to expect otherwise going forward. Credit Suisse downgrades to Hold on share price performance.

JHG - Janus Henderson Group BEAT 0 0 2/2/0 37.08 40.86 4

Janus Henderson beat all expectations on higher performance and management fees in the September quarter. Better performance fees are expected to continue into the December quarter but the jury is out on ongoing outflows. The quarter saw the rate of outflows decrease materially but not all are convinced this trend is sustainable. Credit Suisse (Hold) suggests there are a number of levers the fund manager could pull if activist investor Trian gets its way, which could unlock value. Citi (Buy) includes a valuation premium for takeover interest.

KMD - Kathmandu BEAT 0 0 2/1/0 1.15 1.30 3

Kathmandu Holdings' operating earnings and net profit were ahead of expectations in FY20 and also beat guidance. No dividend was declared, but the company expects dividends will resume in FY21. Based on current forward orders, management anticipates second half wholesale orders will be in line with pre-pandemic levels. Gross margins are also expected to improve by the second half. Credit Suisse (Buy) now expects Kathmandu will be net cash in FY21. Wholesale order books for Rip Curl and Oboz are improving for the second half and the Kathmandu brand will resume offshore expansion post the pandemic. Macquarie (Hold) is wary because of industry feedback regarding the highly competitive and brand-centric outdoor consumer segment offshore.

LVT - Livetiles MISS 0 0 0/1/0 0.30 0.25 1

LiveTiles’ FY20 result points to a slowdown in organic revenue growth in the second half, Citi notes. The decline, driven by the lower subscription revenue, was offset by an increase in services revenue driven by the Wizdom and CYCL acquisitions. The June quarter was adversely impacted by enterprise customers. Citi expects trading conditions to improve with economies opening up. With IT budgets under pressure in the near term, the broker prefers to be cautious and has lowered its FY21-22 revenue forecasts to reflect a slower conversion of annual recurring revenue to revenue.

MQG - Macquarie Group IN LINE 0 0 3/3/0 128.32 136.87 6

Macquarie Group's result slightly beat guidance, but on a mix of pros and cons among earnings drivers and a circumspect response from brokers we'll call it in line. The result was affected by higher impairments and delays in asset realisations because of the pandemic. Loan growth was strong but offset by a lower net interest margin and cost pressures. Capital is continuing to build but creating a drag on returns, as assets are sold and dividends are constrained amid a lack of deployment opportunities. Brokers suggest the group may have seen a trough in earnings, but improvement is likely to be gradual.

MTS - Metcash BEAT 0 1 4/2/0 3.52 3.88 6

Metcash posted a result that substantially beat consensus expectations. Cash flow was extremely strong, leading to a beat on the dividend and the assumption of more to come. While food sales were strong, thanks to the "buy local" necessity of 2020, hardware was the standout as has been the case for the competition. Both divisions should benefit with everyone either home or within the country for Christmas, but while brokers see a continuation of strength for hardware thanks to government incentives, food sales should eventually decelerate. This keeps Macquarie on Hold, while UBS downgrades to Hold on valuation.

MYR - Myer MISS 0 0 1/1/0 0.29 0.25 2

Myer's reported loss was weaker than expected, indeed Ord Minnett (Hold) had forecast a profit. The difference was mainly due to a worse than expected second-half gross margin contraction due to falling sales and rising costs. Key positives for Citi (Buy) were online growth, a clean inventory position and a net cash balance sheet featuring a recently refinanced bank facility. Citi believes the current share price incorporates the risk of a dilutive equity raising which the broker does not see as inevitable. But even with a turnaround underway and accelerating online growth, both brokers consider the external environment challenging and the shape of the recovery uncertain.

NAB - National Australia Bank IN LINE 0 1 4/2/1 20.24 20.40 7

At face value, National Bank's result was a miss at the profit line, but only because the bank chose to top up loan loss provisions by more than expected, which is not a "loss" until proven otherwise. While bad loan charges were a little worse than feared, brokers applaud the bank's conservatism. A highlight was an improved net interest margin, unlike peers, but offset by declining loan growth and a weak outlook. Market trading income was solid but not necessarily repeatable. On the mix of all above, we call it "in-line". Morgans downgrades to Hold following share price strength.

NHC - New Hope Corp MISS 0 0 0/2/1 1.41 1.35 3

New Hope Corp's profit came in well below all expectations on higher than expected costs and write-downs related to the New Acland project. A lack of any dividend surprised no one. While Bengalla remains key in the short term, and recent moves in the thermal coal price should help return the company to a free cash flow position, approval of New Acland stage 3 is required to drive any re-rating. That approval remains in limbo and stage 2 is ramping down. No new news was offered. Valuation is undemanding for Hold raters but Macquarie (Sell) still sees downside risk to thermal coal prices.

NWS - News Corp BEAT 0 0 3/0/1 24.72 27.22 4

Cost-cutting drove News Corp to a much better than expected result in the September quarter. Revenues continue to be impacted by the virus but the digital businesses of REA Group, Move, books and Dow Jones are providing an offset. The performance of Move was a significant turnaround from recent trends and was the driver behind the better outcome in digital real estate. The virus is accelerating the structural decline of old media, but brokers suggests shareholder value could be unlocked via the crystallisation of core assets, specifically REA and Dow Jones.

NVX - Novonix IN LINE 0 0 0/1/0 1.09 1.33 1

The FY20 result for Novonix was in line with Morgans' expectations. The company has stated it has enough funding to expand its anode material production to 2,000tpa (the Phase 1 target) by the end of 2021. Morgans believes additional funding will be required to pursue Phase 2 and 3 production plans. Some were disappointed by the lack of a collaboration announcement between Tesla and the company on battery day, but technologies highlighted on the day could play to the company’s strengths. Morgans acknowledges recent share price strength, but sees potential for volatility until earnings grow and a baseline is established for margins.

NUF - Nufarm IN LINE 0 0 5/2/0 4.77 4.96 7

Nufarm had pre-released its number earlier in the month and while they were below broker forecasts, no one was much surprised. FY20 was a very difficult year for a company totally reliant on the weather, and in the wash-up a drought in Europe proved even more of a drag than the drought in Australia that was still entrenched at the beginning of the financial year. The official result met guidance. Brokers agree FY20 will likely mark an earnings trough, with performances in A&NZ, North America and Asia already on the improve, and weather conditions more assumed to be normal in FY21 in both Australia and Europe. Add in lower input costs and the stock draws five Buys.

ORI - Orica MISS 1 0 4/3/0 18.21 18.17 7

Orica's result goes down as a miss on disappointing FY21 guidance despite the FY20 result being in line. The first half is now expected to show further decline before recovery in the second half, leading brokers to still find FY guidance to be ambitious. Credit Suisse (Hold) notes the NSW market is short ammonium nitrate so this is likely to provide strength for Orica's position even in a declining thermal coal market. Brokers are pleased Burrup is on track. Ratings reflect share price valuation, with Morgans upgrading to Buy and Macquarie retaining Buy on leverage to a post-covid recovery and investor shift towards value and cyclical stocks.

PDL - Pendal Group MISS 0 0 3/3/0 6.81 6.80 6

Pendal Group's quarterly earnings came in lower than most expected as better than expected performance fees were offset by higher costs. While higher performance fees are expected by management to continue, higher compensation expenses appear permanent. Overshadowing the result was management's announcement of a goal to increase funds under management by 50% over the next five years. The general response is "ambitious", but not beyond the realms, and certainly a driver of re-rating if indeed Pendal can pull it off.

PMV - Premier Investments IN LINE 0 1 1/4/0 19.25 23.80 5

Premier Investments' result was pre-guided so no surprises. No outlook commentary was provided. Smiggle disappointed due to reduced retail footfall, school closures and slower wholesale door growth, offset by a strong performance from Peter Alexander and solid momentum in apparel brands. Online penetration is expected to increase in FY21, driven by store closures, investment in online and a soft outlook for shopping centres. While uncertainty is high, UBS (Buy) believes the company is well placed given its net-cash balance and asset backing. In the medium-term, opportunities include the rollout of Smiggle globally, consolidation in apparel and improving online margins. Caution keeps others on Hold.

REA - REA Group BEAT 0 0 1/4/0 111.97 125.66 5

REA Group's first quarter results were better than expected, albeit supported by deferred revenue from FY20 and the timing of costs, which brings "beat" into question. Yet listing volumes outperformed forecasts that were based on weakness in locked-down Melbourne and management noted ongoing strength in October. Brokers agree taking a majority stake in Indian-based Elara Technologies as a sensible risk, noting large upside potential. Hold ratings reflect valuation.

RMD - Resmed BEAT 3 0 3/2/1 25.21 27.95 6

Three upgrades underscore a beat from ResMed in the quarter. While ventilator sales eased off from the prior quarter, the surprise was the speed of recovery in the company's core sleep devices. The good news going forward is the risk from competitive bidding in the US is now removed and the current reimbursement rates are expected to remain for at least three years. Despite rising cases in the northern hemisphere and re-lockdowns, management remains confident of a sequential quarterly improvement in device sales. Ventilator sales should continue to trend lower from their peak but ResMed is considered well-placed to benefit from a shift to home health care post the pandemic.

SHV - Select Harvests BEAT 0 0 1/0/0 7.90 7.65 1

Led by strong cost management across the almond division and corporate overheads, Select Harvests' FY20 result was 7% ahead of UBS's operating income and net profit estimates. The broker notes the current pricing environment remains depressed due to covid-related market access issues and a large US crop, hence a downgrade in target price, and a consistently weakening share price.

SKO - Serko IN LINE 0 0 3/0/0 6.42 6.55 3

It was no shock online travel agent Serko's revenues were down -66% in the first half on bookings down -77%. There is some comfort in management reaffirming cash-burn guidance of -NZ$2-4 per month on booking guidance of 40-70% of pre-covid levels. Melbourne's reopening will provide a boost but the medium term depends on a vaccine reopening Europe. Brokers are nevertheless looking ahead to execution on the Bookings.com joint venture which all agree could lead to a significant valuation increase.

SIG - Sigma Healthcare IN LINE 2 0 2/3/0 0.68 0.67 5

Sigma Healthcare posted a reduction in FY20 earnings, as brokers had expected. It was a solid result under the circumstances, Credit Suisse suggests. No dividend was declared and no formal guidance offered, although management stated the second half should be much stronger than the first half. Retail pharmacy wholesale revenue growth was materially above expectations, UBS (Hold) notes. Credit Suisse forecasts 21% compound earnings growth over FY20-23 driven by cost-outs, the full ramp-up of the Chemist Warehouse contract and continued above-market growth in retail, aided by diminished regulatory headwinds, and upgrades to Buy. The end of the company's capex investment cycle leaves sufficient balance sheet capacity for growth.

SM1 - Synlait Milk MISS 0 1 2/2/0 4.90 5.53 4

Synlait Milk's FY20 result was in line with guidance albeit slightly below some broker forecasts, but more notably FY21 guidance is materially below expectation, suggesting flat infant formula sales and no contribution from recent major capacity expansion until FY22. UBS (Buy) believes the investment case for Synlait Milk has become a lot less straight forward due to reduced infant formula demand from a2 Milk. Credit Suisse points to a reported new global customer for packaged products, which should have a positive contribution from FY23 onwards and provide some offset to the tail risk from a2 Milk, but downgrades to Hold. There is disagreement over whether the balance sheet remains a risk or not.

TNE - Technologyone BEAT 0 0 1/1/1 8.12 9.20 3

TechnologyOne's result beat expectations thanks to lower than expected costs. The cost base is not expected to much grow from here, but this is offset by management pushing out its $500m revenue target to FY26 from FY24 due to virus impact. SaaS fees slowed slightly, reflecting scale, but higher quality annual recurring revenue accelerated, led by Education. With the outlook for tenders solid, contract wins offer a key catalyst. Valuation is clearly an issue, with three brokers split three ways. Target prices are similarly wide.

URW - Unibail-Rodamco-Westfield MISS 0 0 0/1/1 3.88 2.74 2

UR Westfield has the brokers covering but only Macquarie has updated on the quarterly result. Macquarie found full-year guidance disappointing having assumed a flat second half on the first. Forecasts are downgraded on elevated rental relief provided as larger agreements are executed. The ongoing virus situation in Europe will impact on the December quarter.

UMG - United Malt Group BEAT 0 1 2/1/1 4.46 4.81 4

United Malt Group's maiden result smashed three of four broker forecasts, but not Morgans (Hold). The company's fortunes lie squarely with craft beer consumption and at-home demand failed to overcome lockdown losses in the period, but volumes are now back to 90% of pre-covid levels. Credit Suisse has downgraded to Sell on the sharp share price response leaving a split of ratings that largely reflects the risk of extended lockdowns in the northern winter, and the wind-down of government support. UBS (Buy) notes the company is in a strong market position with hard-to-replicate assets.

SOL - Washington H Soul Patt MISS 0 0 0/1/0 20.04 23.32 1

Washington H Soul Pattinson released its FY20 result with the headline numbers impacted by several moving parts, including investments in the cyclical New Hope Corp and TPG Telecom. The latter merged with Vodafone during the period. The company’s investment portfolio remained resilient, on Morgans observation, outperforming the All Ordinaries index by around 7% in the 12 months to July 31, 2020. Morgans lowers FY21 and FY22 profit forecasts by over -35%, mainly due to the cyclical nature of earnings for New Hope and cross-shareholding Brickworks. The broker continues to like the story and the company’s long history of dividend distributions.

WBC - Westpac Banking MISS 0 0 5/2/0 20.20 19.89 7

Westpac's result generally disappointed, indicating the bank is behind peers in cost control while revenues fell short of forecast. The dividend was pleasing to most, but not all, and while tier one capital is strong, ongoing capital build will weigh on future dividends. Credit quality is improving, with provisions not as extensive as feared, yet still required. Brokers agree Westpac needs to get its act together on productivity and to that end a cost review is pending. As disappointed as brokers were, five Buy ratings are unchanged.

XRO - Xero BEAT 0 0 1/3/2 91.55 104.49 6

Xero's result beat expectations mainly due to a big drop in marketing spend during the pandemic. Strength in A&NZ subscriptions exceeded forecasts, offsetting weakness internationally. The question from here is as to whether subscriptions will continue to grow in FY21. Disagreement among brokers, or at least uncertainty, is reflected in a split of ratings. There is also concern over potential business failures impacting the company when government stimulus measures are either eased or ended. More evidence is required.

Total: 49

ASX50 TOTAL STOCKS:

10

Beats

5

 50.0% 

In Line

2

 20.0% 

Misses

3

 30.0% 

Total Rating Upgrades:

1

Total Rating Downgrades:

3

Total target price movement in aggregate:

6.37%

Average individual target price change:

3.89%

Beat/Miss Ratio:

1.67

ASX200 TOTAL STOCKS:

33

Beats

19

 57.6% 

In Line

6

 18.2% 

Misses

8

 24.2% 

Total Rating Upgrades:

7

Total Rating Downgrades:

9

Total target price movement in aggregate:

7.84%

Average individual target price change:

5.84%

Beat/Miss Ratio:

2.38

Yet to Report

Indicates that the company is also found on your portfolio

SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/18'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/18'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Monday
18 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/19'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/19'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Tuesday
19 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/20'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/20'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Wednesday
20 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/21'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/21'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Thursday
21 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/22'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/22'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Friday
22 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/25'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/25'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Monday
25 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/26'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/26'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Tuesday
26 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/27'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/27'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Wednesday
27 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/28'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/28'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Thursday
28 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/29'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/01/29'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Friday
29 January
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/01'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/01'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Monday
1 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/02'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/02'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Tuesday
2 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/03'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/03'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Wednesday
3 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/04'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/04'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Thursday
4 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/05'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/05'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Friday
5 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/08'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/08'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Monday
8 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/09'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/09'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Tuesday
9 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/10'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/10'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Wednesday
10 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/11'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/11'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Thursday
11 February
SELECT calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone, max(p.portfolioID) as portfolioID,
					sec.sector,CASE WHEN (sec.sectorurl IS NULL OR sec.sectorurl = '')
                        THEN 'sector'
                        ELSE sec.sectorurl
                    END as SectorURL   
					FROM (
					select seasonReport,calendarID, source, externalID, title, symbol, itemdate, isDisplayed, 1 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/12'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol != '')
					
					UNION
					
					select seasonReport,calendarID, source, externalID, title, type AS symbol, itemdate, isDisplayed, 0 as display, timezone
					from calendar c left join countrycode cc on c.type = cc.code
					where convert(varchar(10),itemDate,111) = '2021/02/12'
					AND isDisplayed = 1
					AND seasonReport = 1
					AND (symbol = '') 
				) AS calendar
				left join (select p.* from portfolio p inner join customerportfolio cp on p.CustomerPortfolioID = cp.CustomerPortfolioID where cp.customerid = '' and cp.archived is NULL) 
				p on calendar.symbol = p.symbol
				LEFT JOIN (SELECT sr.symbol, s.sector,s.sectorID,dbo.RemoveNonAlphaCharacters(s.sector) as sectorurl FROM sector s 
                    INNER JOIN SectorRelationship sr on s.sectorID = sr.sectorID 
                    WHERE isPriority = 1) AS sec on calendar.symbol = sec.symbol
				GROUP BY calendar.calendarID,calendar.source,calendar.externalID,
					calendar.title,calendar.symbol,calendar.itemdate,calendar.isDisplayed,
					calendar.display,calendar.timezone,sec.Sector,sec.sectorurl
				ORDER BY calendar.display, calendar.timezone desc, calendar.symbol, calendar.title 
Friday
12 February