Come analizzare qualsiasi azienda con l'IA come un esperto

@gemchange_ltd
INGLESE2 mesi fa · 30 mag 2026
383K
268
27
8
764

TL;DR

Una guida completa per automatizzare l'analisi finanziaria utilizzando i dati SEC EDGAR, i punteggi di contabilità forense e gli agenti IA per identificare i rischi sia nelle azioni tradizionali che nei protocolli crypto.

Primavera 1998, sei studenti MBA alla Cornell hanno applicato un'unica equazione ai bilanci di Enron e hanno ottenuto -1,89.

La soglia per "questa società probabilmente sta falsificando i conti" è -2,22. Enron l'aveva superata. E, di nuovo, erano studenti, non una società di revisione forense.

gemchanger - inline image

Hanno pubblicato il rapporto sul sito web della scuola. Tutta la finanza aveva ancora Enron come "acquistare" in quel periodo, e la maggior parte lo ha mantenuto fino a poche settimane prima che andasse a zero.

Era un documento pubblico che chiunque poteva scaricare e una formula che richiede circa 20 minuti a mano. È tutto ciò che sto per spiegarti, tranne che tu la eseguirai in pochi secondi e potrai puntarla a qualsiasi azienda o token sulla terra.

Non è una consulenza finanziaria, fai le tue ricerche. I punteggi forensi sono indicatori di probabilità, non prove, e ogni prezzo qui cambia, quindi verifica prima di impegnarti. Creo strumenti per trader professionisti di mercati predittivi @coldvisionXYZ

L0: Data House

Ogni azienda pubblica negli USA deposita documenti presso la SEC, e la SEC li rende tutti disponibili tramite un'API chiamata EDGAR. Inserisci un URL e ottieni ogni numero mai riportato da un'azienda, già strutturato.

2 cose rendono EDGAR un'arma:

  1. Ricerca full-text. Indicizza il testo effettivo di ogni deposito mai presentato, quindi puoi cercare una frase come "debolezza materiale" in tutto il mercato e ottenere ogni azienda che ha appena ammesso silenziosamente che i suoi controlli contabili sono compromessi. Questa è una watchlist di vendita in circa un secondo.
  2. Dati finanziari strutturati. Ogni voce, ogni trimestre, leggibile dalla macchina, che risale a anni fa.

edgartools è quello che fa per te.

gemchanger - inline image

Pip install, nessuna chiave, e analizza 10-K, 8-K, Form 4 degli insider, partecipazioni dei fondi 13F, tutto in oggetti Python puliti.

Fornisce anche un server MCP, quindi puoi puntare Claude direttamente e dire "confronta la crescita dei ricavi di Apple e Microsoft in 3 anni" e lui va effettivamente a prendere i veri documenti invece di inventare numeri che sembrano giusti.

sec-edgar-downloader è quello che tutti trovano per primo. Scarica semplicemente il deposito grezzo e ti lascia in un mucchio di HTML da analizzare da solo. Era la soluzione qualche anno fa, ora è solo una seccatura. Usa edgartools.

BamSEC se vuoi solo leggere i documenti senza l'interfaccia di EDGAR del 1998. Lettore pulito, confronto affiancato, gratuito per la maggior parte delle tue esigenze. Buono per una rapida occhiata.

gemchanger - inline image

Ora hai accesso strutturato gratuito ai libri contabili di ogni azienda pubblica.

L1 - Cogli i Bugiardi

Hai i numeri. Prima di leggere una singola frase del management che parla del loro "anno di trasformazione", esegui alcune formule sui dati grezzi.

Gli accademici le hanno costruite basandosi su decenni di casi di frode reali. Devi solo sapere cosa ognuna sta cercando di fiutare.

Beneish M-Score è quella di Enron.

Otto input trasformati in un unico numero. L'input più pesante di gran lunga è il totale degli accantonamenti sul totale delle attività, perché il modo più veloce per falsificare gli utili è registrare redditi che non si sono mai manifestati come contanti. Il prossimo indicatore è una crescita delle vendite troppo pulita per essere onesta, ed è quello che si è acceso su Enron. Sopra -2,22 vai a indagare. Enron ha stampato -1,89.

gemchanger - inline image

Altman Z-Score è la tua lettura del fallimento.

Mescola redditività, leva finanziaria e quanto stanno lavorando le attività in un unico punteggio di difficoltà. Sotto 1,81 è la zona di pericolo.

gemchanger - inline image

Rapporto di accantonamento di Sloan è la qualità degli utili.

Gli utili fatti di contanti sono reali, gli utili fatti di accantonamenti si invertono. Supera circa il 25% in entrambe le direzioni e gli utili sono essenzialmente un miraggio contabile che sta per svanire.

gemchanger - inline image

Piotroski F-Score, 9 punti sì/no sul fatto che un'azienda stia effettivamente diventando finanziariamente più forte. 6 o superiore è sano.

gemchanger - inline image

La cosa che trasforma questo da compito a casa a flusso di lavoro è eseguirli tutti e 4 contemporaneamente sull'intera watchlist e leggere solo i nomi che segnalano. Che è esattamente ciò che fa lo script qui sotto.

E per favore non reimplementarli da qualche blog a caso, metà del codice M-Score su GitHub è sottilmente sbagliato.

FinanceToolkit repo ha oltre 150 rapporti - Beneish, Altman, Piotroski, Sloan, tutti - con le formule scritte in chiaro in modo da poter verificare un numero quando non ti fidi.

Abbinalo a una chiave FMP per i dati e sei a posto. Onestamente uno dei repo finanziari più sottovalutati in circolazione, trasparente e effettivamente mantenuto.

https://github.com/JerBouma/FinanceToolkit

gemchanger - inline image

Beneish funziona sui dati dell'anno scorso, quindi la manipolazione potrebbe già essere in fase di inversione quando la vedi. Manca alcune frodi reali e segnala falsi positivi su alcune pulite. Un punteggio negativo significa aprire il deposito. Non è mai da solo un motivo per vendere allo scoperto.

L2: L'IA Legge le Parole per Te

Hai fatto lo screening, qualcosa ha segnalato, ora apri il 10-K, che è 100+ pagine di linguaggio legale costruito specificamente per essere illeggibile.

Lascia quel lavoro all'IA

il modo sbagliato è:

incollare l'intero deposito in una chat box e dire "questa è una buona azienda". Lui annega e ti dice qualunque cosa tu voglia sentire.

il modo giusto è:

Chiedigli di confrontare quest'anno con l'anno scorso.

Estrai la sezione Risk Factors del 10-K di quest'anno e dell'anno scorso, dai entrambi al modello e dagli un solo compito.

Dimmi solo cosa c'è di nuovo quest'anno o cosa è stato tagliato, cita il nuovo linguaggio, ignora il boilerplate che è presente in entrambi.

Un'azienda che inserisce silenziosamente un paragrafo sulla concentrazione dei clienti ti ha appena detto che un grande cliente sta vacillando. Una che cancella una riga su un fornitore chiave ti ha appena detto che una relazione è finita. Niente di tutto ciò arriva mai al comunicato stampa. Gli avvocati scrivono quelle frasi perché hanno paura di essere citati in giudizio, e la paura è informazione seduta in testo semplice che nessuno legge due volte.

Lo stesso confronto funziona su MD&A (la storia dell'anno raccontata dal management) e le note a piè di pagina. L'intera frode di Enron viveva nelle note a piè di pagina sulle entità fuori bilancio. La storia era una bugia, le note a piè di pagina no.

Il edgar-crawler repo esiste fondamentalmente solo per estrarre quelle sezioni di voci, Risk Factors e MD&A, in JSON pulito in modo da non dover usare regex sull'HTML per ottenerle. Questo è il suo unico lavoro e lo fa bene, dai l'output al tuo confronto.

Se preferisci pagare piuttosto che costruire, ecco la mappa onesta di chi lo fa per te.

Hudson Labs (ex Bedrock AI)

È la scelta sotto il radar e quella per cui pagherei davvero. Fa l'estrazione automatica delle bandiere rosse tra anni, evidenzia il linguaggio di continuità aziendale, le debolezze materiali, il rischio di parti correlate senza che tu glielo chieda. Parte da circa $100/mese. Se leggi seriamente i documenti, questo è il miglior rapporto qualità-prezzo della lista.

gemchanger - inline image

AlphaSense

Impostazione predefinita istituzionale, circa 15-20k a posto, quindi realisticamente solo se la tua azienda paga. Possiede Tegus, una libreria di migliaia di interviste a pagamento con ex dirigenti e clienti. È quanto di più vicino a informazioni privilegiate legali si possa ottenere, e non puoi ricrearlo gratuitamente.

gemchanger - inline image

Daloopa

Estrae dati finanziari pronti per il modello con ogni singolo numero collegato tramite hyperlink al suo punto esatto nel deposito. Quella traccia di audit è il motivo per cui le persone che costruiscono DCF seri lo usano. Prezzi aziendali, eccessivo a meno che la modellazione non sia il tuo vero lavoro.

gemchanger - inline image

Fintool è AI-first, costruito per azioni USA, citazioni su tutto, più avvisi permanenti come "avvisami quando qualsiasi azienda menziona nuovi problemi nella catena di approvvigionamento".

Un buon compromesso se Hudson sembra troppo forense e AlphaSense troppo costoso.

gemchanger - inline image

L3: Crypto

Passa ai token. Stessa identica idea.

Nelle azioni, la frode si nasconde negli accantonamenti e nelle note a piè di pagina.

Nel crypto, si nasconde nei programmi di emissione e nella concentrazione dei detentori, ed entrambi sono su una blockchain pubblica che puoi leggere gratuitamente.

Il tuo equivalente EDGAR qui è DefiLlama.

gemchanger - inline image

API gratuita, nessuna chiave, copre praticamente TVL, commissioni, ricavi e programma di sblocco di ogni protocollo.

Un protocollo ha 3 numeri che corrispondono direttamente a un'azienda normale.

  • Commissioni = tutto ciò che gli utenti pagano. Questo è il ricavo lordo.
  • Ricavi = la parte che il protocollo trattiene effettivamente. Questo è il netto.
  • Utili = ricavi meno i token stampati per corrompere gli utenti affinché si presentino in primo luogo.

Token Terminal standardizza esattamente questi, commissioni, ricavi, utili, gli equivalenti crypto del P/E, su ogni grande blockchain.

È genuinamente il Bloomberg-del-crypto e la standardizzazione è un lavoro reale che odieresti fare a mano. Ma costa circa $350/mese, che è molto per una persona, e il livello gratuito più DefiLlama ti porta gran parte della strada.

gemchanger - inline image

Poi i 2 killer, la versione crypto dello screening forense.

Prima i programmi di sblocco.

I token non esistono tutti al lancio, le allocazioni del team e dei VC maturano in anni, e quando si sbloccano, le persone che sono entrate vicino allo zero finalmente possono scaricarli su di te. Regola pratica, qualsiasi singolo sblocco superiore al 5% dell'offerta circolante è una bandiera rossa. Per renderlo reale, la prima grande scogliera di Arbitrum ha sbloccato, in un giorno, una quantità di ARB approssimativamente uguale all'intera offerta circolante all'epoca. Le balene che detenevano dall'inizio hanno potuto uscire al dettaglio e la data era su un calendario con mesi di anticipo.

Conosci le 3 forme.

  1. Cliff scarica un blocco in un giorno (violento).
  2. Vesting lineare gocciola quotidianamente (emorragia lenta che a volte puoi sopportare).
  3. Emissioni rilasciate in base all'attività. Una scogliera in un wallet VC è quella che distrugge i portafogli.

Secondo, la concentrazione dei detentori. Chi possiede effettivamente la cosa. Se una manciata di wallet detiene la maggior parte dell'offerta e sono etichettati come team o qualche fondo VC iniziale, congratulazioni, sei la liquidità di uscita per progettazione.

Qui è dove gli strumenti di etichettatura dei wallet guadagnano il loro valore, perché i dati grezzi della catena sono solo 0xxxxxxx... finché qualcuno non ti dice che è Jump Trading o un contratto di vesting del team.

Arkham

Inizia qui perché è gratuito per i privati, cosa che nessun'altra piattaforma seria è. Il motore di de-anonimizzazione è il vero affare, è l'azienda che ha tracciato pubblicamente miliardi di bitcoin rubati fino a un hack. Puoi eseguire quella stessa tracciatura delle entità su qualsiasi token tu stia guardando. Gratuito è la caratteristica killer, usalo e basta.

Nansen

Tiene traccia del "denaro intelligente", wallet con una comprovata esperienza di essere in anticipo e nel giusto, su un sacco di blockchain. Ha recentemente tagliato drasticamente il prezzo Pro a circa $49/mese. Le etichette sono l'intero prodotto e sono buone, ma la traccia si raffredda non appena i fondi raggiungono uno scambio centralizzato. Ne vale la pena se fai trading onchain seriamente.

Dune

Oltre 100.000 dashboard SQL della community che puoi biforcare senza scrivere una riga di SQL tu stesso. Il livello gratuito è sufficiente per quasi tutti, e qualcuno ha già costruito la dashboard che desideri, quindi cercala prima di crearne una tua.

Messari ha ricerche qualitative e valutazioni solide. I prezzi sono opachi e orientati alle imprese, la ricerca gratuita vale la pena di essere letta ma non aspettarti la roba buona senza una chiamata di vendita.

Tokenomist (ex Token Unlocks) è il calendario di sblocco dedicato. Anche DefiLlama copre gli sblocchi, ma se il trading di sblocchi è la tua specialità, questo è lo specialista.

L4: Un Sistema Unico

Ora hai i pezzi, dati gratuiti da entrambi i lati, matematica forense, confronto dei documenti, screening onchain. L'ultimo livello è far funzionare il tutto come una macchina unica invece di copiare e incollare tra 15 schede.

virattt/ai-hedge-fund è un team di agenti IA, ciascuno modellato sulla filosofia di un famoso investitore, che discutono su un'azione e producono una raccomandazione. La cosa della persona-investitore è onestamente un po' un espediente e non dovresti assolutamente farci trading dal vivo con soldi veri.

https://github.com/virattt/ai-hedge-fund

Ma come lezione gratuita su come orchestrare agenti di analisi, come concatenare un recuperatore di dati in uno screener in un ragionatore, è il miglior insegnante su GitHub in questo momento.

gemchanger - inline image

OpenBB è il terminale Bloomberg open source. Collega i tuoi fornitori di dati una volta, usali ovunque, con un server MCP in modo che un agente possa guidare l'intera cosa. Potente ma pesante, la configurazione è un lavoro reale e la qualità dei dati dipende interamente da quale fornitore gratuito colleghi. Ne vale la pena se vuoi un'unica plancia di comando per tutto, eccessivo se vuoi solo fare screening su pochi nomi.

https://github.com/OpenBB-finance/OpenBB

gemchanger - inline image

FinGPT / FinRobot sono LLM finanziari open source che puoi mettere a punto a basso costo. Accademicamente impressionante e sì, la messa a punto è più economica di quanto si pensi.

https://github.com/ai4finance-foundation/finrobot

Ma per praticamente tutti, non hai bisogno di mettere a punto nulla, un modello all'avanguardia con i prompt sopra fa il lavoro.

gemchanger - inline image

In ordine

Prima il livello degli strumenti, chiamate di funzione o server MCP che avvolgono EDGAR, FMP, DefiLlama, in modo che il modello recuperi numeri reali e non li inventi mai. Non negoziabile, un'IA che cita una cifra finanziaria senza fonte è una responsabilità, non un analista.

Livello di screening, i punteggi forensi e i controlli onchain vengono eseguiti automaticamente su qualsiasi cosa entri nel tuo universo.

Livello di lettura, il confronto anno su anno su tutto ciò che sopravvive allo screening.

Sintesi, il modello scrive il promemoria con una citazione per ogni affermazione e tu leggi il promemoria invece delle 200 pagine.

Sui modelli, Claude o GPT funzionano entrambi. Se hai a che fare con dati sensibili e non vuoi che i documenti lascino la tua macchina, esegui un modello open source localmente tramite Ollama. Il modello non è mai stato il fossato. Il fossato è collegarlo a dati puliti, verificati e collegati alla fonte e puntare una matematica disciplinata su di essi.

L5: Costruisci L1

Dagli un ticker, recupera i veri documenti da EDGAR, calcola Beneish, Altman, Piotroski e il rapporto di accantonamento, e se gli dai una chiave esegue il confronto anno su anno dei Risk Factors e ti scrive un verdetto di un paragrafo.

python
1#!/usr/bin/env python3
2"""
3forensic_screener.py - leggi qualsiasi azienda come un analista, con un comando.
4
5setup:
6 pip install edgartools anthropic
7 export SEC_IDENTITY="Your Name [email protected]" # La SEC richiede questa intestazione
8 export ANTHROPIC_API_KEY="sk-..." # opzionale, solo per il diff
9
10run:
11 python forensic_screener.py AAPL
12 python forensic_screener.py TSLA NVDA SMCI # screena più aziende contemporaneamente
13 python forensic_screener.py SMCI --diff # aggiungi il diff dei risk factor
14"""
15
16import os, sys, argparse
17from dataclasses import dataclass
18
19# SOGLIE - le linee che cambiano la tua posizione. regola a piacere.
20M_FLAG = -1.78 # Beneish sopra questo -> rischio manipolazione (soglia classica -2.22)
21Z_DISTRESS = 1.81 # Altman sotto questo -> zona di difficoltà
22Z_SAFE = 2.99 # Altman sopra questo -> zona sicura
23ACCRUAL_BAD = 0.25 # |accantonamenti/attività| sopra questo -> bandiera rossa qualità utili
24F_STRONG = 6 # Piotroski a o sopra questo -> rafforzamento
25
26@dataclass
27class YearData:
28 sales: float; cogs: float; sga: float; net_income: float; cfo: float
29 receivables: float; current_assets: float; current_liabilities: float
30 ppe_net: float; depreciation: float; total_assets: float
31 total_liabilities: float; long_term_debt: float; retained_earnings: float
32 ebit: float; market_cap: float; shares: float
33
34def load_two_years(ticker: str):
35 """restituisce (questo_anno, anno_scorso). chiama SEC EDGAR tramite rete."""
36 from edgar import Company, set_identity
37 identity = os.environ.get("SEC_IDENTITY")
38 if not identity:
39 sys.exit("imposta SEC_IDENTITY='Your Name [email protected]' - la SEC lo richiede.")
40 set_identity(identity)
41
42 company = Company(ticker)
43 fin = company.get_financials()
44 inc, bal, cfs = fin.income_statement(periods=2), fin.balance_sheet(periods=2), fin.cash_flow(periods=2)
45
46 def g(stmt, col, *aliases):
47 # ricerca riga best-effort; le aziende etichettano la stessa idea in modo diverso
48 for a in aliases:
49 try:
50 row = stmt.loc[stmt.index.str.contains(a, case=False, na=False)]
51 if not row.empty:
52 return float(row.iloc[0, col])
53 except Exception:
54 continue
55 return 0.0
56
57 def build(col):
58 return YearData(
59 sales=g(inc, col, "RevenueFromContractWithCustomerExcludingAssessedTax", "Revenues", "SalesRevenueNet"),
60 cogs=g(inc, col, "CostOfGoodsAndServicesSold", "CostOfRevenue"),
61 sga=g(inc, col, "SellingGeneralAndAdministrativeExpense"),
62 net_income=g(inc, col, "NetIncomeLoss"),
63 cfo=g(cfs, col, "NetCashProvidedByUsedInOperatingActivities"),
64 receivables=g(bal, col, "AccountsReceivableNetCurrent", "ReceivablesNetCurrent"),
65 current_assets=g(bal, col, "AssetsCurrent"),
66 current_liabilities=g(bal, col, "LiabilitiesCurrent"),
67 ppe_net=g(bal, col, "PropertyPlantAndEquipmentNet"),
68 depreciation=g(cfs, col, "DepreciationDepletionAndAmortization", "DepreciationAmortizationAndAccretionNet"),
69 total_assets=g(bal, col, "Assets"),
70 total_liabilities=g(bal, col, "Liabilities"),
71 long_term_debt=g(bal, col, "LongTermDebtNoncurrent", "LongTermDebt"),
72 retained_earnings=g(bal, col, "RetainedEarningsAccumulatedDeficit"),
73 ebit=g(inc, col, "OperatingIncomeLoss"),
74 market_cap=getattr(company, "market_cap", 0.0) or 0.0,
75 shares=g(bal, col, "CommonStockSharesOutstanding"),
76 )
77
78 # col 0 = anno più recente, col 1 = anno precedente (edgartools ordina il più recente per primo)
79 return build(0), build(1)
80
81def d(a, b): return a / b if b else 0.0 # divisione sicura
82
83def beneish_m_score(t, p):
84 DSRI = d(d(t.receivables, t.sales), d(p.receivables, p.sales))
85 GMI = d((p.sales - p.cogs)/p.sales if p.sales else 0, (t.sales - t.cogs)/t.sales if t.sales else 0)
86 AQI = d(1 - d(t.current_assets + t.ppe_net, t.total_assets), 1 - d(p.current_assets + p.ppe_net, p.total_assets))
87 SGI = d(t.sales, p.sales)
88 DEPI = d(d(p.depreciation, p.depreciation + p.ppe_net), d(t.depreciation, t.depreciation + t.ppe_net))
89 SGAI = d(d(t.sga, t.sales), d(p.sga, p.sales))
90 TATA = d(t.net_income - t.cfo, t.total_assets)
91 LVGI = d(d(t.total_liabilities, t.total_assets), d(p.total_liabilities, p.total_assets))
92 return (-4.84 + 0.92*DSRI + 0.528*GMI + 0.404*AQI + 0.892*SGI
93 + 0.115*DEPI - 0.172*SGAI + 4.679*TATA - 0.327*LVGI)
94
95def altman_z_score(t):
96 wc = t.current_assets - t.current_liabilities
97 return (1.2*d(wc, t.total_assets) + 1.4*d(t.retained_earnings, t.total_assets)
98 + 3.3*d(t.ebit, t.total_assets) + 0.6*d(t.market_cap, t.total_liabilities)
99 + 1.0*d(t.sales, t.total_assets))
100
101def piotroski_f_score(t, p):
102 s = 0
103 s += t.net_income > 0
104 s += t.cfo > 0
105 s += d(t.net_income, t.total_assets) > d(p.net_income, p.total_assets)
106 s += t.cfo > t.net_income # il contante batte gli accantonamenti
107 s += t.long_term_debt < p.long_term_debt
108 s += d(t.current_assets, t.current_liabilities) > d(p.current_assets, p.current_liabilities)
109 s += t.shares <= p.shares # nessuna diluizione
110 s += d(t.sales - t.cogs, t.sales) > d(p.sales - p.cogs, p.sales)
111 s += d(t.sales, t.total_assets) > d(p.sales, p.total_assets)
112 return int(s)
113
114def sloan_accruals(t): return d(t.net_income - t.cfo, t.total_assets)
115
116def risk_factor_diff(ticker):
117 """confronta i Risk Factors di quest'anno con quelli dell'anno scorso. la singola lettura migliore nello stack."""
118 key = os.environ.get("ANTHROPIC_API_KEY")
119 if not key:
120 return "(saltato - imposta ANTHROPIC_API_KEY per abilitare il diff)"
121 from edgar import Company
122 import anthropic
123 f = Company(ticker).get_filings(form="10-K").latest(2)
124 this_rf = getattr(f[0].obj(), "risk_factors", str(f[0]))
125 last_rf = getattr(f[1].obj(), "risk_factors", str(f[1]))
126 client = anthropic.Anthropic(api_key=key)
127 msg = client.messages.create(
128 model="claude-opus-4-8", max_tokens=1024,
129 messages=[{"role": "user", "content": (
130 "confronta queste due sezioni Risk Factors di depositi annuali consecutivi. "
131 "riporta SOLO ciò che è NUOVO quest'anno o ciò che è stato RIMOSSO. cita il nuovo linguaggio. "
132 "ignora il boilerplate presente in entrambi. concludi con una frase: qualcosa qui cambia il rischio?\n\n"
133 f"ANNO SCORSO:\n{last_rf[:40000]}\n\nQUEST'ANNO:\n{this_rf[:40000]}")}],
134 )
135 return msg.content[0].text
136
137def screen(ticker, do_diff=False):
138 print(f"\n{'='*60}\n {ticker.upper()}\n{'='*60}")
139 try:
140 t, p = load_two_years(ticker)
141 except Exception as e:
142 print(f" impossibile caricare i documenti: {e}"); return
143
144 m, z, f, a = beneish_m_score(t, p), altman_z_score(t), piotroski_f_score(t, p), sloan_accruals(t)
145 flags = []
146 if m > M_FLAG: flags.append(f"M-Score {m:+.2f} - rischio manipolazione utili")
147 if z < Z_DISTRESS: flags.append(f"Z-Score {z:.2f} - zona di difficoltà finanziaria")
148 if abs(a) > ACCRUAL_BAD: flags.append(f"Accantonamenti {a:+.1%} - bandiera rossa qualità utili")
149 if f < F_STRONG: flags.append(f"F-Score {f}/9 - non in rafforzamento")
150
151 print(f" Beneish M : {m:+.2f} (> {M_FLAG} = indaga)")
152 print(f" Altman Z : {z:.2f} (< {Z_DISTRESS} difficoltà, > {Z_SAFE} sicuro)")
153 print(f" Piotroski F: {f}/9 (>= {F_STRONG} forte)")
154 print(f" Sloan Accr : {a:+.1%} (|x| > {ACCRUAL_BAD:.0%} bandiera rossa)")
155 print(f"\n VERDETTO: {'INDAGA' if flags else 'PULITO'}")
156 for fl in flags: print(f" - {fl}")
157 if do_diff:
158 print("\n DIFF RISK-FACTOR (anno su anno):")
159 print(" " + risk_factor_diff(ticker).replace("\n", "\n "))
160
161def main():
162 ap = argparse.ArgumentParser(description="screener forense per qualsiasi azienda pubblica USA")
163 ap.add_argument("tickers", nargs="+")
164 ap.add_argument("--diff", action="store_true", help="esegue anche il diff dei risk factor")
165 args = ap.parse_args()
166 for tk in args.tickers:
167 screen(tk, do_diff=args.diff)
168 print("\npromemoria: indicatori di probabilità, non prove. Beneish funziona sui dati dell'anno scorso, quindi "
169 "la manipolazione potrebbe già essere in fase di inversione. un punteggio negativo significa aprire il deposito, mai "
170 "vendere allo scoperto solo sul numero.\n")
171
172if __name__ == "__main__":
173 main()

Ho controllato la matematica prima di pubblicare, inserisci una serie di numeri sani e stampa un M pulito intorno a -2.24, Z nella zona sicura, F a 9/9, accantonamenti vicino allo zero, esattamente quello che vuoi.

L'unica cosa che richiede la tua macchina è la connessione live alla SEC e una chiave per il diff. Gli alias dei tag coprono i depositanti standard, uno esotico potrebbe aver bisogno di una riga aggiunta e ho segnato dove.

Salva con un clic

Leggi in profondità gli articoli virali con l’AI di YouMind

Salva la fonte, fai domande mirate, riassumi l’argomentazione e trasforma un articolo virale in note riutilizzabili in un unico spazio di lavoro AI.

Scopri YouMind
Per i creator

Trasforma il tuo Markdown in un articolo 𝕏 pulito

Quando pubblichi i tuoi testi lunghi, formattare immagini, tabelle e blocchi di codice per 𝕏 è una seccatura. YouMind trasforma un'intera bozza Markdown in un articolo 𝕏 pulito e pronto da pubblicare.

Prova Markdown verso 𝕏

Altri pattern da decodificare

Articoli virali recenti

Esplora altri articoli virali