{$numberOfUnreadNotification > 0 ? `(${$numberOfUnreadNotification})` : ''} Stock Screener · stocknear

Stock Screener

{ruleOfList?.length !== 0 ? filteredData?.length : 0} Matches Found
Popular Strategies popularStrategy('dividendGrowth')} class="cursor-pointer hover:bg-[#27272A]"> Dividend Growth popularStrategy('topGainers1Y')} class="cursor-pointer hover:bg-[#27272A]"> Top Gainers 1Y popularStrategy('topShortedStocks')} class="cursor-pointer hover:bg-[#27272A]"> Top Shorted Stocks popularStrategy('topAIStocks')} class="cursor-pointer hover:bg-[#27272A]"> Best AI Forecast popularStrategy('momentumTAStocks')} class="cursor-pointer hover:bg-[#27272A]"> Momentum TA Stocks popularStrategy('underValuedStocks')} class="cursor-pointer hover:bg-[#27272A]"> Undervalued Stocks popularStrategy('strongCashFlow')} class="cursor-pointer hover:bg-[#27272A]"> Strong Cash Flow
{#if ruleOfList?.length !== 0} {/if}
{#each displayRules as row (row?.rule)}
{row?.label?.replace('[%]','')}
ruleName = row?.rule}> {#if !['analystRating','sector','country']?.includes(row?.rule)}
{:else} {/if} {#if !['analystRating','sector','country']?.includes(row?.rule)} {#each row?.step as newValue} {/each} {:else} {#each (testList.length > 0 && searchQuery?.length > 0 ? testList : searchQuery?.length > 0 && testList?.length === 0 ? [] : (row?.rule === 'country' ? listOfRelevantCountries : row?.rule === 'sector' ? sectorList : ['Buy','Hold','Sell'])) as item}
event.preventDefault()}>
{/each} {/if}
{/each}

{filteredData?.length} Stocks

{#if isLoaded} {#if filteredData?.length !== 0} {#if displayTableTab === 'general'}
{#each displayResults as item} {handleSave(false); goto("/stocks/"+item?.symbol)}} class="sm:hover:bg-[#245073] sm:hover:bg-opacity-[0.2] bg-[#09090B] border-b-[#09090B] odd:bg-[#27272A] cursor-pointer"> {/each}
Symbol { sortBy = 'marketCap'; changeOrder(order); }} class="whitespace-nowrap cursor-pointer text-white font-semibold text-sm sm:text-[1rem] font-semibold text-end"> Market Cap { sortBy = 'change'; changeOrder(order); }} class="whitespace-nowrap cursor-pointer text-white font-semibold text-sm sm:text-[1rem] font-semibold text-end"> % Change Price { sortBy = 'volume'; changeOrder(order); }} class="whitespace-nowrap cursor-pointer text-white font-semibold text-sm sm:text-[1rem] font-semibold text-end"> Volume { sortBy = 'pe'; changeOrder(order); }} class="whitespace-nowrap cursor-pointer text-white font-semibold text-sm sm:text-[1rem] font-semibold text-end"> PE Ratio
{item?.symbol} {item?.name?.length > charNumber ? item?.name?.slice(0,charNumber) + "..." : item?.name}
{#if item?.symbol?.includes('.DE') || item?.symbol?.includes('.F')} €{item?.marketCap < 100 ? '< $100' : abbreviateNumber(item?.marketCap)} {:else} {item?.marketCap < 100 ? '< $100' : abbreviateNumber(item?.marketCap,true)} {/if} {#if item?.changesPercentage >=0} +{item?.changesPercentage >= 1000 ? abbreviateNumber(item?.changesPercentage) : item?.changesPercentage?.toFixed(2)}% {:else} {item?.changesPercentage <= -1000 ? abbreviateNumber(item?.changesPercentage) : item?.changesPercentage?.toFixed(2)}% {/if} {item?.price < 0.01 ? '< $0.01' : item?.price?.toFixed(2)} {item?.volume === 0 ? '-' : abbreviateNumber(item?.volume)} {item?.pe?.toFixed(2)}
{:else if displayTableTab === 'filters'}
{#each displayRules as row (row?.rule)} {#if row?.rule !== 'marketCap'} {/if} {/each} {#each displayResults as item (item?.symbol)} {handleSave(false); goto("/stocks/"+item?.symbol)}} class="sm:hover:bg-[#245073] sm:hover:bg-opacity-[0.2] bg-[#09090B] border-b-[#09090B] odd:bg-[#27272A] cursor-pointer"> {#each displayRules as row (row?.rule)} {#if row?.rule !== 'marketCap'} {/if} {/each} {/each}
Symbol Market Cap{row?.label}
{item?.symbol} {item?.name?.length > charNumber ? item?.name?.slice(0, charNumber) + "..." : item?.name}
{abbreviateNumber(item?.marketCap, true)} {#if row?.rule === 'analystRating'} {item?.analystRating} {:else if row?.rule === 'sector'} {item?.sector} {:else if row?.rule === 'country'} {item?.country} {:else if ['fundamentalAnalysis','trendAnalysis']?.includes(row?.rule)} {item[row?.rule]?.accuracy}% {:else} {abbreviateNumber(item[row?.rule])} {/if}
{/if} {:else}
Looks like your taste is one-of-a-kind! No matches found... yet!
{/if} {:else}
{/if}
{#if $screenWidth >= 640} {:else}
{/if} {#if LoginPopup} {/if}