{analystName ?? "n/a"}

Stock Analyst at {companyName ?? "n/a"}

{#each Array.from({ length: 5 }) as _, i} {#if i < Math?.floor(analystScore)} {:else} {/if} {/each}
({analystScore ?? "n/a"})
# {rank ?? "n/a"}
Out of {numOfAnalysts ?? "n/a"} analysts
{totalRatings ?? "n/a"}
Total ratings
= 0 && successRate !== undefined ? "before:content-['+'] text-green-800 dark:text-[#36D984]" : successRate < 0 && successRate !== undefined ? "text-red-800 dark:text-[#EF4444]" : ""} >{successRate !== undefined ? successRate?.toFixed(2) + "%" : "n/a"}
Success rate
= 0 && avgReturn !== undefined ? "before:content-['+'] text-green-800 dark:text-[#36D984]" : avgReturn < 0 && avgReturn !== undefined ? "text-red-800 dark:text-[#EF4444]" : ""} >{avgReturn !== undefined ? avgReturn?.toFixed(2) + "%" : "n/a"}
Average return
{#if data?.getAnalystStats?.mainSectors?.length > 0} {/if} {#if rawData?.length > 0} {numOfStocks} Stocks
{#each stockList as item, index} {#if checkedSymbol === item?.ticker} {/if} {/each}
{#if index >= 5 && !["Pro", "Plus"]?.includes(data?.user?.tier)} XXXX
XXXXXXXXXXXXXXXX
Upgrade
{:else}
{item?.name?.length > charNumber ? item?.name?.slice(0, charNumber) + "..." : item?.name}
{/if}
{item?.action_company}: {item?.rating_current}
{#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}
{item?.price !== null ? item?.price : "n/a"} {item?.upside !== null ? item?.upside + "%" : "n/a"} {item?.ratings !== null ? item?.ratings : "n/a"} {new Date(item?.date).toLocaleString("en-US", { month: "short", day: "numeric", year: "numeric", daySuffix: "2-digit", })}
({ ...item, type: item?.rating_current, }), )} symbol={item?.ticker} numOfRatings={item?.ratings} {data} />
{:else}
{/if}