Other
Subjects shared on this page :
- Finance
- Machine Learning (there are also lot’s Machine Learning articles in the other pages All articles or Featured Articles)
Page under construction. Il s'agit plus de notes personnelles
Finance
Last update about finance section: August 2023
I am really interested in DeFI (and blockchain more generally) and Machine Learning for Finance.
I am convinced insurance companies and banks are going to be transformed pretty soon thanks to all the enablers brought by the Blockchain technology. DeFi is booming and is already changing the world. Have a look at Google trends or the investments figures made by companies in crypto assets or investments in projects by capital ventures. This is enormous especially after the beginning of the Covid 19 crisis.
In this section I’m sharing notes of what I did around the fascinating DeFi world in French, and also value investing and algorithmic trading.
Quelques notes sur le value investing
Je me suis en effet construit un screener pour détecter des actions sous-évaluées à fort potentiel de croissance en suivant les bons conseils de Warren Buffet.
Indicateurs financiers
Voici ci-dessous les indicateurs financiers que j’utilise pour analyser la santé des entreprises avant d’investir. Je scrape toutes les data qui m’intéressent depuis plusieurs organismes financiers différents type Google Finance ou Yahoo finance ou Morningstar.
-
Marge brute > 40% du CA (et sur les 5 dernières années (gross margin 5 years))
-
Marge nette (marge bénéficiaire nette ou taux de rentabilité ou résultat net) > 20% du CA (et Marge nette > 20% sur 5 ans)
-
Passifs totaux / Capitaux propres < 0.8%
-
Gestion entreprise (CAPEX / résultat net) < 25%
-
Charge d’intérêt / revenu opérationnel < 15%
-
R&D / Résultat brut < 5%
-
VBA / résultat brut < 30% (avec VBA = OPEX + Dépréciation)
-
Gestion de la dette < 4
-
Revenu (~= CA) par an > 75M d’euros
-
Croissance revenu > 10% sur 10 ans (ou croissance revenu > 5% sur 5 ans si données absentes)
-
Croissance Résultat/Bénéfice net > 5% sur 5 ans (net income growth 5 years)
-
Actions ordinaires dans le bilan (dans capitaux propres) en décroissance = entreprise rachète ses propres actions. (= EQ Buyback)
-
Marge opérationnelle (operating margin) > 5% du CA (idéalement > 10% du CA)
-
Frais généraux, commerciaux et administratifs (SG&A) < 30% du CA
-
ROE (Return on Equity) > 10% (argent généré grâce aux capitaux propres = Rendement des capitaux propres)
-
Croissance ROE (Return on Equity) > 20% sur 5 ans
-
ROI (Return on Investment) > 10% par an
-
ROI (Return on Investment) > 15% sur 5 ans
-
Ratio du fond de roulement (Current ratio) > 1.0
-
Ratio d’acidité (Quick ratio) > 2.0
-
Dettes court terme < Dette long terme / 2
-
PER (Price Earning Ratio) < 15 (idéalement entre 7 et 15). PER = prix action / Bénéfice par action
-
Price to book ration <= 4
-
Price to cash flow <= 8
-
Taux de distribution > 50%
-
Rendement dividende > 2%
-
Couverture charges fiancières = Résultat Net / Charges financières > 3 voire 5
- Ignorer EBITDA et BÊTA
Détails
-
Marge brute -> Gross margin = Gross profit margin ->
- 1.a. Gross margin = gross profit / total revenue
- 1.b. Gross margin = (total revenue - cost of revenue ) / total revenue
-
Marge nette -> Net margin = Net profit margin ->
- Net margin = net income / revenue
- Ratio de la dette sur capitaux propres -> Debt-To-Equity Ratio ->
- Debt-To-Equity Ratio = Total liabilities / total shareholders’ equity = (Current Liabilities + Long Term Debt + Minority Interest + Stockholders’ Equity) / Stockholders’ Equity
- Ratio CAPEX / résultat net -> Capital expenditure net income ratio -> How much money company needs to run their operations -> Une société bénéficiant d’un avantage concurrentiel durable utilise une plus petite partie de ses bénéfices pour poursuivre son activité avec des investissements (CAPEX) que celles qui n’en ont pas.
- ratio = CAPEX / net income
- Ratio Charge d’intérêt / revenu opérationnel -> Dans n’importe quel secteur, l’entreprise ayant le plus faible ratio intérêt / bénéfice d’exploitation est généralement celle qui a l’avantage concurrentiel.
- Net Interest Income / Operating income
- R&D / Résultat brut -> Dépense d’innovation. Indique l’efficacité à apporter de l’innovation. Si un avantage concurrentiel est créé par un brevet ou un avantage technologique, il disparaîtra à un moment donné.
- Research & Development / gross profit
- VDA (Ventes et Dépenses Administratives) / Résultat brut -> Les entreprises sans avantage concurrentiel durable montrent une fortes variations des frais de vente, dépenses administratives et autres frais généraux en % du bénéfice brut.
- SGA (Sales Goods and Administration) / gross profit
- Buffett dit que les avantages concurrentiels durables entraînent peu ou pas de dette à LT parce que la société est si rentable que même les expansions ou les acquisitions sont autofinancées. Nous nous intéressons à l’endettement à long terme des dix dernières années. Si les dix ans d’exploitation montrent peu ou pas de dette à long terme, alors la société a une sorte d’avantage concurrentiel solide. Les entreprises disposant d’une capacité de gain suffisante pour payer une dette à long terme en moins de 3 ou 4 ans sont des entreprises disposants d’un avantage concurrentiel à long terme.
- Long term debt < 4 * net income
[…]
Data source (document source)
-
Gross Margin
- Gross profit -> income statement
- Total revenue -> income statement
- Cost of revenue -> income statement
-
Net Margin
- Net income -> income statement
- Total revenue -> income statement
-
Debt-To-Equity Ratio
- Current Liabilities -> balance sheet
- Long Term Debt -> balance sheet
- Minority Interest -> balance sheet
- Stockholders’ Equity -> balance sheet
-
CAPEX / Net income ratio
- CAPEX (Capital Expenditure) -> cash flow
- Net income -> income statement
-
Net Interest Income / Operating Revenue ratio
- Net Interest Income -> income statement
- Operating income -> income statement
-
R&D / gross profit
- R&D -> income statement
- gross profit -> income statement
-
SGA / gross profit
- SGA -> Selling General and Administrative -> income statement
- gross profit -> income statement
-
Long term debt > 4 * net income
- Long term debt -> balance sheet
- Net income -> income statement
[…]
Pays dans lesquels investir pour leur stabilité
- Hors PEA: USA, Canada, Nouvelle Zélande, Australie, Singapour Japon, Suisse, Royaume-Uni
- PEA: France, Italie, Norvège, Pays-Bas, Allemagne, Autriche, Suède, Portugal, Rép. Tchèque, Finlande, Espagne, Belgique, Danemark
Produits proposés par les entreprises
Produits (ou services) de qualité qui s’usent rapidement par leur usage fréquent. Idéalement produits vitaux
Acronymes
- 🇨🇵 BNA = Bénéfice Net Par Action <=> 🇺🇸 EPS
- 🇺🇸 EPS = Earning Per Share
- 🇺🇸 CAPEX = Capital Expenditure
- 🇺🇸 PER = Price Earning Ratio
- 🇺🇸 ROE = Return On Equity
- 🇨🇵 VDA = Ventes Dépenses Administratives ~= Marketing
- 🇺🇸 SGA ou SG&A = Selling General and Administrative
- 🇺🇸 TTM = Trailing Twelve Months
- 🇺🇸 OCO = One Cancels the Other
- 🇺🇸 TSL = Trailing Stop Loss
- 🇺🇸 CBDC = Central Bank Digital Currency
- 🇺🇸 SRRI = Synthetic Risk and Reward Indicator
- 🇨🇵 OPCVM = Organisme de Placements Collectif en Valeurs Mobilières
- 🇨🇵 SICAV = Société d’Investissement À Capital Variable
- 🇨🇵 FCP = Fonds Communs de Placement
- 🇺🇸 CME = Chicago Mercantile Exchange (marchés à terme)
- 🇺🇸 UTXOs = Unspent Transaction Outputs (BTC non dépensés)
Glossaire/FAQ bourse et trading
> Le BNA ne correspond pas aux dividendes versés aux actionnaires, car les sociétés conservent une partie de leurs bénéfices en vue d’investir...
L'information peut être retrouvée dans le flux de trésorerie.
> Donc par exemple, quand vous achetez une action avec un PER de 12 cela signifie que dans 12 ans vous aurez récupéré votre placement initial (mais évidement seulement si les bénéfices restent constants pendant ces 12 ans...)
Stop = déclencheur & Limit = niveau du stop loss.
Le Stop doit être >= à la Limit.
Exemple pour vendre du BTC à $4000:
-> Limit = 4000 et Stop = 4001.
La Limite c'est le prix auquel seront revendus les BTC
Dans le cas du pétrole par exemple, un acheteur s'engage à acheter les barils à une date fixée par le contrat. Donc il n'est pas nécessaire d'avoir l'argent au moment où la transaction est réalisée. Un acheteur pourra clore son contrat avant même d'avoir réellement acheté le pétrole.
Une stratégie simple de Trend Following consiste à acheter lorsque le cours dépasse la bande supérieure de Bollinger et à revendre lorsque le cours passe sous la bande inférieure de Bollinger.
Ne s’appuyant que sur des moyennes mobiles, ce type de stratégie est déconseillé lorsque la volatilité est grande. En effet, dans ce cas, il est préférable d’utiliser le Mean Reversing.
Une stratégie simple de mean reversing consiste à acheter lorsque le cours dépasse la bande inférieure de Bollinger et à revendre lorsque le cours revient vers la borne supérieure de Bollinger.
Contrairement à un stop loss, le trailing stop loss se déplace sur le graphique pour maximiser les profits du moment qu'on est dans la tendance du marché.
Sur Binance, cela ne fonctionne que sur les produits dérivés. Il faut donc sur Binance Future et sur place order choisir "Trailing Stop". https://www.youtube.com/watch?v=xzD0CauU0SU
Les divergences classiques annoncent un retournement alors que les divergences cachées montrent une continuation de tendance.
Les divergences fonctionnent sur toutes les unités de temps et bien sûr plus l'échelle de temps est élevée et plus le potentiel du signal est élevé.
Les divergences sont des signaux forts puisqu'ils permettent des entrées et des sorties en postions.
Une divergence se produit lorsqu'il y a une contradiction entre le prix et un indicateur.
Par exemple, si le prix monte mais que le RSI descend, on est sur une divergence baissière.
Pour valider la divergence, il ne faut pas que le point plus bas entre 2 pics soint inférieur à un seuil. Dans le cas du RSI, le point le plus bas ne doit pas atteindre le niveau 50 (ou 60, si on ne veut pas prendre trop de risque). Pour valider la divergence, il faut aussi que le niveau le plus bas par lequel est passé précédemment le RSI soit cassé par le bas. Dès que cela casse, on peut entrer en position baissière (dans notre example).
Autres manières d’investir (autres outils perso liés)
Arbitrage Web3 (à compléter)
- Outil que j’appelle “Sniper bot” (ou “mon petit Sniper bot” tellement j’ai passé de temps à le développer). Il passe des trades de manière chirugicale entre différents DEX et/ou CEX. Ici rien à voir avec de l’investissement moyen ou long terme. Il y a achat et revente instantanément.
- Ajouter Screenshot crypto trading bot live
- Combo gagnant Python/Rust/Devops/Web3/DeFi
Long term Crypto investments portfolio manager
Voici un screenshot, anonymisé bien sûr, des investissements crypto que j’ai réalisé sur les 2 derniers mois avec un suivi sur Google Sheet. C’est une solution maison très fiable et poussée techniquement. J’ai réutilisé une grande partie du code de mes robots d’arbitrage; donc cela a été rapide à construire. Pour faire simple, j’ai des connecteurs branchés aux Centralized Exchanges type Binance, Coinbase etc. et aux Decentralized Exchanges type Uniswap etc. et toutes les X minutes mon portfolio est mis à jour automatiquement sur Google Sheet. Pour les plus techniques d’entre vous, j’utilise une stack classique de data engineering (Python, ESB, Blockchain own nodes,…). Le petit plus de ce projet:
- Alerting qui m’indique lorsqu’il faut revendre des positions
- Gestion de plusieurs stratégies d’investissements
- Création automatique de trailing stop limit orders dans les exchanges avec un simple clic sur Google Sheet
- Tracking très précis
- DCA de mes assets…
Mon Google sheet ressemble à cela (partie visible de l’iceberg):
Scalping
- Bookmap
- VWAP
- Micro sctructures
- Order flow
- Ichimoku & points pivots
–> Conclusion de cette expérience: Le scalping (et le Day trading) sont des activités trop chronophages pour moi; car il ne s’agit pas de mon activité principale. Je vais donc me focaliser sur le Swing trading.
RPA Euronext (à compléter)
Lien vers un de mes articles (à titre indicatif)
Algo trading en Python avec Backtesting
Whale alert (with fency HTML5 whale animation - for fun very quick win (à compléter))
- 1e version en 3 ou 4 heures avec l’animation basé sur les threads Twitter
- 2nd version basé sur des flux Web3 directement
Ethereum Node sync issue alerting app (à compléter)
- OSX app
- Slack alerting
Ethereum Archive Node 100% resilient (à compléter)
- Always up scalable (in term of NVME disks) Archive node (with solar panels as backup) + Hardware Firewall + dual internal connections (4G + Starlink)
Machine Learning
Last update about finance section: May 2019
Notebooks et tips
Here is a list of useful notebooks to handle different use cases:
- Gérer les gros datasets qui ne passent pas en mémoire
- Modèle complexe ou modèle simple ?
- Chemin le plus court
- Exemple d’analyse de données sur dataset déséquilibré et rapport d’analyse associé - Crédit: Erdi Olmezogullari
- Régression linéaire avec Tensorflow
- Classification avec Tensorflow
- Underfitting and overfitting
Spark recommandation engine example:
Compétitions Kaggle et kernels associés
Here is a list of notebooks I studied and find interesting coming from Kaggle and having a MIT licence. I keep them here as inspirational sources or knowledge base.
Kaggle Winning solutions
Kernels sur le sujet “titanic”
- Good data exploration
- Framework to achieve 99% accuracy
- End to end Machine Learning pipeline
- Exploratory data analysis and feature extraction
Kernels sur le sujet “iris”
Kernels autour du customer churn
Kernels autour du jeu populaire battle royale
Kernels autour Google Analytics Customer Revenue Prediction
Kernels autour des sales forecast
Kernels sur le sujet “Porto Seguro’s Safe Driver Prediction”
Recruit Restaurant Visitor Forecasting.
Sujets autour du sujet “House Pricing”
Sujets autour de la compétition “home-credit-default-risk”
URL: https://www.kaggle.com/c/home-credit-default-risk
To understand the data feel free to access the “Data” chapter in this notebook of this notebook:
Read-only Kernels:
-
Très bonnes explications sur la métrique ROC AUC et quelle métrique utiliser pour mesurer la performance d’un modèle lorsque des classes ne sont pas équilibrées ? Traite du One Hot Encoding et du problème pour les features ayant trop de catégories (réduction de dimension). Explication sur le feature engineering et en particulier la construction de nouvelles features avec les méthodes Polynomial Features et Domain Knowledge Features. Home Credit Default Risk Competition - Full process - Part 1
-
On continue à améliorer le modèle de la compétition home-credit-default-risk en créant de nouvelles features. On analyse si elles ont un impact sur la performance du modèle avec le coefficient de Pearson ou la Kernel Density Exploration (KDE). Home Credit Default Risk Competition - Full process - Part 2
-
(WIP) On continue encore à améliorer le modèle de la compétition home-credit-default-risk en utilisant toutes les données à disposition. Home Credit Default Risk Competition - Full process - Part 3
LUNA16 competition
NYC taxi trip duration
Kernal autour du sujet Pokemon-Weedle’s Cave
Other kernels
-
Fraud detection in Insurance