Comment ça marche

On analyse.
Vous décidez.

FINALTYP analyse chaque jour des dizaines de sources pour chaque action du SBF120, et les combine en un score de conviction. Transparent, vérifiable, sans boîte noire.

Résultats vérifiés

Chargement...
Notre stratégie
CAC40
Surperformance
Direction correcte
1

L'action vaut-elle son prix ?

On estime la "vraie valeur" de chaque entreprise avec trois méthodes de valorisation utilisées par les professionnels. Si le prix actuel est en dessous, c'est un signal positif.

Méthodes : flux de trésorerie futurs (DCF), création de valeur (EVA), comparaison aux concurrents (multiples).
2

Que disent les experts et le marché ?

On collecte les recommandations des analystes (Goldman Sachs, BNP Paribas…), le sentiment des articles de presse, et ce que disent les investisseurs sur les réseaux sociaux.

Sources : recommandations analystes, news financières, discussions Reddit.
3

L'intelligence artificielle prédit le rendement

Un modèle IA entraîné sur des milliers d'observations analyse 31 indicateurs et prédit le rendement à 30 jours — en comparaison avec le CAC40. Quand il n'est pas sûr de lui, son poids est réduit automatiquement.

Ensemble de 3 modèles XGBoost diversifiés, calibration probabiliste, intervalles de confiance.
4

Un Score de Conviction unique

Tout est combiné en un seul score. Plus il est élevé, plus les signaux convergent. Simple à lire, impossible à tricher.

Comment lire le score

Score > 0.08● Achat Fort
Entre 0.03 et 0.08● Achat
Entre -0.03 et 0.03● Neutre
Entre -0.08 et -0.03● Prudence
Score < -0.08● Défavorable

Protections automatiques

Même avec un bon score, le système limite sa confiance dans deux cas :

Tendance baissière

Si le cours est sous sa moyenne 200 jours, le score est plafonné. On ne rattrape pas un couteau qui tombe.

Résultats imminents

Si l'entreprise publie ses résultats dans les 30 prochains jours, le score est plafonné. Trop d'incertitude.

Ce qu'on ne peut pas faire

Aucun modèle ne prédit l'avenir avec certitude. On ne peut pas anticiper les événements imprévus. Nos scores reposent sur des données historiques qui ne se reproduisent pas à l'identique. Les erreurs font partie du jeu — c'est pour ça qu'on les mesure et les affiche publiquement.

Envie d'essayer ?

Accédez au screener gratuitement. Le Club Premium vous donne en plus des emails personnalisés avec le nombre exact d'actions à acheter.

Voir le screener →

À retenir

FINALTYP est un outil d'aide à la décision. Ce n'est pas un conseiller financier agréé par l'AMF. Les scores sont informatifs et ne constituent pas un conseil d'achat ou de vente. Tout investissement comporte un risque de perte en capital. Les performances passées ne préjugent pas des performances futures. Vous êtes seul responsable de vos décisions.

async function loadPerf() { try { const res = await fetch('/api/performance/detailed'); if (!res.ok) return; const d = await res.json(); function formatPct(v) { if (v == null) return '—'; return (v > 0 ? '+' : '') + v + '%'; } function cls(v) { if (v == null) return 'neutral'; return v >= 0 ? 'positive' : 'negative'; } // Stratégie const el = (id) => document.getElementById(id); el('pv-strat').textContent = formatPct(d.fintalyp_perf); el('pv-strat').className = 'm-perf-val ' + cls(d.fintalyp_perf); // CAC40 el('pv-cac').textContent = formatPct(d.cac40_perf); el('pv-cac').className = 'm-perf-val ' + cls(d.cac40_perf); // Alpha el('pv-alpha').textContent = formatPct(d.alpha); el('pv-alpha').className = 'm-perf-val ' + cls(d.alpha); if (d.alpha != null && d.alpha > 0) { el('pv-alpha-sub').textContent = 'vs le marché'; } // Direction if (d.direction_accuracy != null) { el('pv-direction').textContent = d.direction_accuracy + '%'; el('pv-direction').className = 'm-perf-val ' + (d.direction_accuracy >= 55 ? 'positive' : 'neutral'); if (d.n_predictions_evaluated) { el('pv-direction-sub').textContent = 'sur ' + d.n_predictions_evaluated + ' prédictions'; } } // Since date if (d.start_date) { el('perf-since').textContent = 'Depuis le ' + d.start_date; } // Footer enrichi let footer = 'Calculé automatiquement sur les prédictions passées.'; if (d.sharpe_ratio != null) footer += ' · Sharpe : ' + d.sharpe_ratio; if (d.win_rate != null) footer += ' · Win rate : ' + d.win_rate + '%'; if (d.profit_factor != null) footer += ' · Profit factor : ' + d.profit_factor; el('perf-footer').textContent = footer; } catch(e) { console.error(e); } } document.addEventListener('DOMContentLoaded', () => { if (typeof updateHeader === 'function') updateHeader(); loadPerf(); });