{$numberOfUnreadNotification > 0 ? `(${$numberOfUnreadNotification})` : ""} {$displayCompanyName} ({$stockTicker}) Analyst Ratings · Stocknear

{$displayCompanyName} Analyst Ratings

{#each tabs as item, i} {#if data?.user?.tier !== "Pro" && i > 0} {:else} {/if} {/each}
Total Analysts
{numOfAnalyst}
Consensus Rating
{consensusRating}
Price Target
{priceTarget !== null && priceTarget !== undefined ? priceTarget : "n/a"}
Upside
{changesPercentage}
{#if rawData?.length !== 0} {#if activeIdx === 1} {/if}

Ratings History

{#each data?.user?.tier === "Pro" ? historyList : historyList?.slice(0, 3) as item, index} {/each}
Analyst Firm Rating Action Price Target Date
{item?.analyst_name}
{#each Array.from({ length: 5 }) as _, i} {#if i < Math.floor(item?.analystScore)} {:else} {/if} {/each} ({item?.analystScore !== null ? item?.analystScore : 0})
{item?.analyst?.length > charNumber ? item?.analyst?.slice(0, charNumber) + "..." : item?.analyst} {item?.rating_current} {item?.action_company?.replace( "Initiates Coverage On", "Initiates", )}
{#if Math?.ceil(item?.adjusted_pt_prior) !== 0} {Math?.ceil(item?.adjusted_pt_prior)} {Math?.ceil(item?.adjusted_pt_current)} {:else if Math?.ceil(item?.adjusted_pt_current) !== 0} {Math?.ceil(item?.adjusted_pt_current)} {:else} n/a {/if}
{#if latestInfoDate(item?.date)} {/if} {new Date(item?.date).toLocaleString("en-US", { month: "short", day: "numeric", year: "numeric", daySuffix: "2-digit", })}
{:else if activeIdx === 1}
There are no top analyst ratings available for the past 12 months for {$displayCompanyName}
{/if} {#if rawData?.length !== 0} {/if} {#if data?.user?.tier !== "Pro"}

Analyst Star Rankings

Our analyst star rankings are based on these four factors

Success Rate
The percentage of ratings that are profitable.
Average Return
The average percentage return within one year of the rating.
Rating Count
The more ratings the analyst has provided, the higher the score.
Recency
Ratings provided within the past year contribute to a higher score.
{/if}