AutoHotkey scripts for keyboard shortcuts

Written by pmd - - no comments

How do I put my hotkeys and hotstrings into effect automatically every time I start my PC?

There are several ways to make a script (or any program) launch automatically every time you start your PC. The easiest is to place a shortcut to the script in the Startup folder:

  1. Find the script file, select it, and press Ctrl + C.
  2. Press Win + R to open the Run dialog, then enter shell:startup and click OK or Enter. This will open the Startup folder for the current user. To instead open the folder for all users, enter shell:common startup (however, in that case you must be an administrator to proceed).
  3. Right click inside the window, and click "Paste Shortcut". The shortcut to the script should now be in the Startup folder.


Activate a AutoHotkey script

Double-click to run *.ahk script. It will show up in the notification area.

Script #1: Insert Date in Any Program Using Keyboard Hotkey

^!d::                                               ; CTRL + ALT + D
    KeyWait, d                                      ; wait for d to be released
    KeyWait, d, D T0.2                              ; and pressed again within 0.2 seconds
    If ErrorLevel {                                 ; if timed-out (only a single press)
        FormatTime, CurrentDateTime,, yyyy_MM_dd_
        SendInput, %CurrentDateTime%
    Else {                                          ; if not timed-out (double press)
        FormatTime, CurrentDateTime,, dd/MM/yyyy
        SendInput, %CurrentDateTime%

Press Ctrl + Alt + D and it will print a date in this format: « 2022_01_14_ »
Press Ctrl + Alt + D + D and it will print a date in this format: « 14/01/2022 »

Source + FormatTime - Syntax & Usage | AutoHotkey


Classified in : Office - Tags : none

Fixing my Logitech Z-5450 rear left wifi speaker

Written by pmd - - no comments


  • No sound from rear speaker
  • Control center is flashing green (trying to connect)
  • Faulty rear speaker led is flashing red immediately after plugging in the power (indicates error)
  • OR led totally off

Solutions from internet

Youtube - Logitech Z-5450 Rear Wifi Speaker Cap replacement - 2.0

I have a LogitechSpeaker System Model Z5450 the speakers will...

Repairing the Logitech Z-5450 5.1 THX Surround Sound system

Logitech Z-5450 5.1 surround sound speakers - no sound from rear right only

Trying to fix the rear left wifi speaker

I followed the Youtube video, first link in solutions from internet.

A - Dismounting supposed faulty parts

B - Mounting new parts

After replacing supposed faulty parts

It works again all good.
Fixed red led when no communication with base.
Fixed blue led when base is switched on.
And sound in the speaker.

Managing password

Written by pmd - - no comments

Why KeePass?

Today, you have to remember many passwords. You need a password for a lot of websites, your e-mail account, your webserver, network logins, etc. The list is endless. Also, you should use a different password for each account, because if you would use only one password everywhere and someone gets this password, you would have a problem: the thief would have access to all of your accounts.

KeePass is a free open source password manager, which helps you to manage your passwords in a secure way. You can store all your passwords in one database, which is locked with a master key. So you only have to remember one single master key to unlock the whole database. Database files are encrypted using the best and most secure encryption algorithms currently known (AES-256, ChaCha20 and Twofish). For more information, see the features page.

Is it really free?

Yes, KeePass is really free, and more than that: it is open source (OSI certified). You can have a look at its full source code and check whether the security features are implemented correctly.

How to

How to securely store and keep your passwords in sync on your computers and mobile devices with KeePass Password Manager
How to securely store and keep your passwords in sync on your computers and mobile devices with KeePass Password Manager (page 2)


Download KeePass and keepass-sftp-sync plugin to be able to synchronise database file through sftp protocol.

Plugin Installation and Uninstallation (source)

If there are no explicit instructions how to install the plugin, follow these steps:

  1. Download the plugin from the page above and unpack the ZIP file to a new folder.
  2. In KeePass, click 'Tools' → 'Plugins' → button 'Open Folder'; KeePass now opens a folder called 'Plugins'.
  3. Move the new folder (containing the plugin files) into the 'Plugins' folder. Restart KeePass in order to load the new plugin. To uninstall a plugin, delete the plugin files.

Starting Keepass and load Database using SFTP protocol

File > Open > Open URL...

URL example:



Install Keepass2Android using Google Play Store.


Not needed for me so far so I don't know.


Classified in : Internet - Tags : none


Written by pmd - - no comments

Recettes pour 4 personnes :

  • 100 g de sucre roux blanc
  • 1 sachet de sucre vanillé
  • 24 biscuits à la cuillère
  • 3 oeufs
  • 250 g de mascarpone
  • 50 cl de café noir non sucré
  • 30 g de cacao amer

NB: il y a bien de l'alcool dans le tiramisu mais il s'agit de Marsala sec (ni aux oeufs, ni à l'amande) mélangé au café très fort.

Préparation : 15 min
Repos : 4 h
Cuisson: N/A

Etapes :

  1. Séparer les blancs des jaunes d'oeufs.
  2. Mélanger les jaunes avec le sucre roux et le sucre vanillé.
  3. Ajouter le mascarpone au fouet.
  4. Monter les blancs en neige et les incorporer délicatement à la spatule au mélange précédent. Réserver.
  5. Mouiller les biscuits dans le café rapidement avant d'en tapisser le fond du plat.
  6. Recouvrir d'une couche de crème au mascarpone puis répéter l'opération en alternant couche de biscuits et couche de crème en terminant par cette dernière.
  7. Saupoudrer de cacao.
  8. Mettre au réfrigérateur 4 heures minimum puis déguster frais.

Source : Tiramisu (recette originale)

Get Rich with dropshipping

Written by pmd - - no comments

Hey bro, how are you?

Please see my recommendations for dropshipping:

  1. Start with fundamentals - COMPLETE Shopify Tutorial For Beginners 2021 - How To Create A Profitable Shopify Store From Scratch
  2. Join Facebook e-commerce forum -

This is how have I learned everything about dropshipping. Ask lots of questions and read comments.

  1. Start in parallel to build shopify store and learn how to create campaigns and target audience and sell.

Once you go through basic - it can take 2 months, we can catch up and will explain you most advance strategies

COMPLETE Shopify Tutorial For Beginners 2021 - How To Create A Profitable Shopify Store From Scratch

Le type conseil avant tout de créer une marque tout en faisant du dropshiping.

How to find the perfect product :

  1. WOW factor
  2. Great quality and great/new design
  3. Can be found on Aliexpress or Alibaba
  4. Passionate niche/target market

Best niches for dropshiping

Luxury accessories
Eco-friendly products
Outdoor Patio/Lawn/Garden
Automotive Accessories

Tools to find the perfect product

Go on social media and scroll. Check all ads. You can remove proper status and keep only ads : Turbo Ad Finder.

You can analyse traffic of shopify sites with Alexa Traffic Rank. Si le site est bien classé tu peux être sur qu'ils font des thunes.

Un autre site, ou tu peux voir quel ads sont payé par un site en particulier : Si beaucoup de pub, probablement ils font des thunes. : 20 ou 30USD  a month. Pour trouver les produits récents qui sont les plus vendu.

Finding a great dropshiping supplier

Il déconseille d'aller sur Aliexpress. Favoriser Alibaba. Il faut éviter les brokers et toujours essayer de trouver l'usine.

Toujours contacter 3 à 5 fournisseur minimum pour avoir une référence sur le prix.

Sur Alibaba c'est possible de contacter les vendeurs. Quand on les contacte, faire style qu'on va acheter/vendre beaucoup (genre 1000 pièces). Voir un template ci-dessous.

Toujours préviligier les vendeurs "verified" qui ont plus de 2 ans d'existance.

Shopify Freedom Supplier Template

Hello, my name is Name and I’m the Lead Purchasing Agent of Company Name.

I was looking at your store and I am very interested in creating a long-term business relationship with your company.

Our store specializes in selling Category of Products and we are currently selling #### orders per day and I believe that we can increase our sales by creating a long-term and beneficial working relationship with your company.

Before proceeding, we have a few questions we were hoping you could answer:
1. Do you offer Blind Drop Shipping - or without sending an invoice and any associated marketing materials including in or on the packaging.
2. Do you offer Bulk Drop Shipping - our store’s current selling volume is too large to place orders individually.
3. Do you have a MOQ (Minimum Order Quantity) required for any of your products?
4. Are you able to send an invoice for the whole bulk dropshipping order at once on Alipay?
5. Are you able to apply my company’s logo on the products?

Our company would like to send you an Excel Spreadsheet (CSV) file with each customer’s information (full name, email, address, product, etc.) and have you process each order individually by sending each customer their appropriate product.

You would then send our company a full invoice for the whole bulk dropshipping order, which we would gladly pay via Paypal/Alipay.

Please let us know if you are interested in forming this mutually beneficial, long-term business relationship with us.

Also, please add us on WhatsApp and send us a message there promptly
-> WhatsApp Number

We look forward to doing business with you for many years to come.
Sincerely, Company Name

Setting up our Shopify Store > Start Free Trial

Si on a pas encore de nom de domaine pour le site/les mails, en créer un sur en attendant d'avoir le NDD. Dans tous les cas obligatoire, sinon ca fait pas pro.

Pour vérifier la disponibilité d'un NDD (nom de domaine en gros c'est ce qui est entre "www." et ".com") :

Sur shopify ne pas dire qu'on vend beaucoup sinon ils vont nous appeler.

Il conseille d'avoir une structure et d'y mettre son adresse dans Shopify.

Il donne des exemples de theme : "Debut theme", "Minimal theme", "Pop theme", "Jumpstart"

Good paid one : "Launch theme"

Pour le logo, on peut aller sur et faire un truc archi simple à base de texte et d'emoji. Sinon avec des freelance on peut faire des trucs.

Acheter un exemplaire des produits, avec notre logo dessus au fournisseur. Ca va couter un peu, mais c'est obliger. Puis faire des photos sur fond blanc, et des photos en utilisation.

Il y a un app store sur shopify. Bien sur la plupart sont payant. Il donne une liste:

  • Order lookup
  • HelpCenter
  • Loox - Photo reviews
  • SMSBump
  • Klaviyo: Marketing automation
  • Recart FB Messenger Marketing
  • Zipify
  • Bold Multi-Cerrency
  • Easy Location
  • Discounted Upsells
  • Easy contact form

Si on voit une app pas mal sur un site shopify, on peut regarder le code source de la page (CTRL+U) et chercher le mot clé "apps".

Un site qui fait beaucoup de thune, ca peut donner des idées.

Domain Name

Voir et "GoDaddy domain name"

Google Analytics + Facebook pixel

Il faut setup pour avoir pas mal d'info plus tard. Facebook pixel interressant pour quand t'achetes de la pub.

Il faut activer les paiements sur shopify + paypal business aussi.

Clairement beaucoup de chose à faire, genre shipping cost zone par zone, mais j'ai pas noté.

Email Marketing et assimilés


Pour tous les business il y a le front end et le back end. La plupart des vente vient du back end. Plus simple de revendre au vendre a des anciens clients qu'a des anciens clients.

=> Il faut bien configurer Klaviyo. Par exemple le client a cliqué sur check out, mais n'a pas acheté ca peut envoyer des mails de rappel avec extra discount.

=> Il faut bien configurer SMSBump. Ca envoie des SMS de rappel avec extra discount.

=> Il faut bien configurer Recart. Ca envoie des messages sur FB.

Petit speech aussi sur Oberlo. Mais il déconseille car impossible de faire du "branded dropshipping".

Running paid ads

1- Facebook, 2- Instagram, 3- Google PPC, 4- Youtube ads and many more (pinterest, bing).

Pour trouver ce que les gens like : Main Menu > Audience Insights.

Big 4 : USA, UK, Canada, Australia.

Puis avec une recherche sur centre d'interet. On trouve que les gens like, puis on peut les cibler.

Rappel : pour voir ce qui existe

Il conseille de commencer par "engagement ads" pour obtenir "social proof" avant de faire des campagnes pour convertir à l'achat. En ensuite "Conversion" ads., il y a aussi google shoping

Instagram Infuencers

Peut être mieux de commencer par les influenceurs si on n'a que 200-300 USD pour faire de la pub. Les bons influenceurs ont entre 10K et 100K de suiveurs, les meilleurs ont entre 100K et 250K. Forcément ils sont payant.

L'idée c'est on leur envoie le produit, et ils font une vidéo. Pour les contacter, message en direct. Et supprimer si non lu/répondu.

Pour ça il faut déjà avoir quelques like, une page facebook qui a like d'autre page, etc. Cold audience.

Il y a aussi les micro-influenceurs entre 1K et 10K : on envoie le produit gratos. Et leurs potes like/achètent.


Dans tous les cas ça va pas être facile de créer un vrai business.

Pourquoi les gens ratent. Car il faut :

  • Agir
  • Ne pas baisser les bras. 99% des gens baissent les bras après 3 échecs...
  • Produit ne se vend pas ?
    • "Your funnel is only as good as your weakest link".
    • Donc il faut trouver le maillon faible : prix, photos, page de vente
    • Imiter les stratégies de la concurence, et s'améliorer
    • Si on trouve rien, ouvrir un autre shop. Mais vraiment essayer au moins 2-3 mois.
  • Se concentrer sur le back-end (avec les appli de relance via mail/SMS/Facebook)
  • Rester à jour, toujours apprendre, plein de manière d'apprendre gratuitement youtube, google, livres, etc

Personal Mentorship of course il peut nous aider pour checker le shop.

Mettre en relation mon site Shopify avec OVH

Pourquoi et comment bien gérer ses mots de passe ? - Assistance aux victimes de cybermalveillance

GitHub - pglombardo/PasswordPusher: Password Pusher is an application to securely communicate passwords over the web. Passwords automatically expire after a certain number of views and/or time has passed.

KeePass: the free, open source, light-weight and easy-to-use password manager.

Ce que j'ai fait :

  1. Télécharger KeePass version portable et configuration
  2. Création compte GMAIL avec mot de passe généré et stocké dans le KeePass
  3. Création page FACEBOOK
  4. Création compte OVH et achat du nom de domaine sur
  5. Création de logo rapide avec Free Logo Maker: Design Custom Logos | Adobe Spark

Get Rich with Options: Four Winning Strategies Straight from the Exchange Floor

Written by pmd - - no comments

Mes notes sur ce livre.



C'est très simple, il y a deux types d'options : CALL et PUT. On peut vendre des options aussi simplement qu'en acheter. On va voir des stratégies ou on va être vendeur, d'autre ou on va être acheteur.

Le but principale d'acheter des options, c'est pour l'effet de levier. On peut prendre position en utilisant moins de capital. Mais il faut savoir choisir son options correctement.


L'acheteur d'une option CALL s'attend à ce que le sous-jacent prenne de la valeur. L'acheteur d'un CALL a droit de controler une position haussière de 100 actions (dans le cas d'option sur action) pendant un certain temps, à un certain niveau de STRIKE (le prix auquel on achetera les actions).

L'acheteur paye une commission (premium) au vendeur, pour avoir le droit d'acheter 100 actions au prix du STRIKE.

A maturité, l'acheteur n'est pas obligé d'exercer l'option (=acheter les 100 actions) si non profitable.

L'acheteur d'une option peut perdre le premium, mais pas plus. Par contre les gains sont possiblement illimités.

L'acheteur d'une option PUT s'attend à ce que le sous-jacent perde de la valeur. L'acheteur d'un PUT a donc le droit de controler une position baissière de 100 actions pendant un certain temps, L'acheteur d'un PUT peut perdre tout son premium, mais les gains sont virtuellement illimités.

Le vendeur d'une option a l'obligation de respecter le contrat si jamais l'acheteur exerce l'option. Le vendeur d'option a un gain limité au premium payé par l'acheteur, et la perte peut être virtuellement illimitée !

26/08/2021 DISCK


Pourquoi quelqu'un voudrait-il vendre une option alors que les pertes sont possiblement illimitées ??? La raison pour laquelle vendre des options est une stratégie très utile, c'est les probabilités.Le trading d'option se base sur les probabilités et sur les statistiques. Il faut acheter les options qui ont de grande chance de bien se terminer.




Il faut comprendre la relation entre le STRIKE qu'on choisi et le prix du sous-jacent. Il y a 3 termes pour ça:

  1. in-the-money (ITM)
  2. at-the-money (ATM)
  3. out-of-the-money (OTM)
Pour une option CALL :
  • Si le STRIKE > prix du sous-jacent alors l'option CALL est OTM
  • Si le STRIKE = prix du sous-jacent alors l'option CALL est ATM
  • Si le STRIKE < prix du sous-jacent alors l'option CALL est ITM
Pour une option PUT :
  • Si le STRIKE < prix du sous-jacent alors l'option PUT est OTM
  • Si le STRIKE = prix du sous-jacent alors l'option PUT est ATM
  • Si le STRIKE > prix du sous-jacent alors l'option PUT est ITM



Le prix de l'option (=premium) dépend de différents facteurs:

  • Valeur intrinsèque:
    • Prix du sous-jacent
    • Prix du STRIKE de l'option
  • Valeur extrinsèque:
    • jours restant jusqu'à expiration de l'option
    • volatilité (historique et/ou impllicite)
    • taux d'intérêt
    • dividendes (pour les "stock options" seulement)

Toutes ces informations sont très simple à trouver et à mettre dans une calculette pour option, sauf la volatilité.

Toutes les options OTM et ATN n'ont pas de valeur intrinsèque. Seulement extrinsèque. Comment on sait ça ? Si on excerce une option ATM ou OTM, on perdrait de l'argent.


On va regarder comment le prix de l'option est calculé avec ces 6 informations.
Il propose cette calculette dans le livre :

IBKR aussi a une calculette :

La valeur calculée n'est pas toujours la même que sur les marchés, et c'est souvent du à la volatilité.


On peut voir dans l'image ci-dessus que sous le prix de l'option, il y a les grecs. Toutes sont très utiles mais pour nous, seulement DELTA et THETA. Ce sont des indicateurs clés dans les stratégies qu'il va nous présenter par la suite.

DELTA est entre 0 et 1. Si une option a un delta de 60%, alors lorsque le sous-jacent gagne ou perd 1 USD, l'option gagne ou perd 0.60 USD. La question qu'on se pose c'est "Est-ce que la valeur de l'option va bien varier dans les mêmes proportions que le sous-jacent ?".




C'est une mesure statistique qui montre à quel point le prix du sous-jacent est erratique et à quel point ça pourrait être erratique dans le future. Deux composantes :

  • Historical Volatility (HV) : mesure de volatilité dans le passé
  • Implied Volatility (IV) : dans le futur, et elle peut être affecté par un discours prévu de la FED, ou tout autres annonces genre Earnings report, voir même la météo...


La volatité peut donc être cher ou pas cher. Il faut regarder des graphiques de volatilité. En effet une option sera moins chere si la volatilité est basse. Donc toujours regarder un graph de volatilité pour savoir ou on se situe. Si faible volatilité, plutot acheter les options, si forte volatilité, plutot vendre des options.


Il donne un exemple. Deux actions au même prix. Il prend le même STRIKE, la même maturité. Les taux d'intérêt sont forcément les mêmes. Le dividende n'a que peu d'impact.

L'option ayant le sous-jacent avec la plus grande volatilité est plus cher.


Quand on trade des "options spread". En gros c'est l'achat et la vente en simultané en une transaction de deux options.

Quand il trade un option spread il essaye d'acheter ATM et de vendre OTM.

En vrai c'est pas clair, il faut que je relise cette partie au calme.

On peut trade des option spread pour utiliser la volatilité à notre avantage.


Juste avant que la société présente ces Earnings, forcément la volatilité explose. Et implose juste après l'annonce (l'incertitude a disparu). Du coup le prix de l'option peut baisser considérablement.






Ce Chapitre nous a montré comment immobiliser considérablement moins de fond, mais tout en captant les mêmes mouvements que le sous jacent : il faut acheter des options CALL, deep-in-the-money, avec un DELTA proche de 1.


Ce chapitre est le précurseur de tous les chapitre suivant qui vont présenter des stratégie de vente d'option. En vendant des options, on va pouvoir être profitable même si on s'est trompé sur la direction du sous-jacent.

L'ennemi majeur de l'acheteur d'option et le temps jusqu'à expiration de l'option qui diminue. Parmis les Grec, il y a le THETA. Il nous donne la valeur que va perdre l'option par jour. On peut rien faire contre la perte de la valeur temps.

26/08/2021 DISCK

Que le sous-jacent perde ou gagne de la valeur, la valeur temps perdra de la valeur, jour après jour.


Est-ce qu'on peut contourner ça ? Absolument.

Il faut toujour acheter des option CALL DITM. Ces options ont une valeur intrinsèque donc, elles sont moins impactées par la valeur temps.

Dans ce chapitre il va comparer l'achat et la vente d'options.


Il faut se souvenir que les options c'est des probabilités. On peut savoir à l'avance quelles sont nos chances d'être profitable.

Le seul moyen d'être profitable en achetant une option, c'est si le sous-jacent évolue tel qu'espéré. C'est le seul moyen. Alors qu'en vendant des options il y a 3 moyens d'être profitable : si le marché monte, baisse, ou reste plat.

Il nous montre un exemple ou l'acheteur de CALL a 10% de chance d'être profitable. Le vendeur de CALL a donc 90% d'être profitable.

Son conseil pour les acheteur de CALL : ne pas garder l'option jusqu'à expiration, la vendre avant, et prendre les profits. Le temps joue contre eux.


Vendre des options OTM nous donne un bon coussin sur les mouvement du sous-jacent, mais il faut quand même avoir une idée de la direction que va prendre le sous-jacent.

Comment fait on de l'argent en vendant des options ? En récoltant le premium de la part de l'acheteur. Ensuite, le vendeur espère que l'option expirera sans valeur (perte de la valeur temps). Les gains maximum pour un vendeur, c'est ce qu'il recoit de la part de l'acheteur.




La seule stratégie ou il fait des achats d'options.

Une stratégie qui va interresser ceux qui achètent des actions pour le long terme (type buy and hold). Bullish sur une action. 

Cette stratégie doit nous permettre d'investir moins de cash au début, reduire le risque de perte (caper la perte) mais tout en profitant des mouvements actif sous-jacent (comme si on le possedait).

La stratégie : acheter des options call deep-in-the-money (DITM)

Bénifices : on profite des mêmes mouvements que le sous-jacent, qui si on l'avait acheté, mais on risque jusqu'à deux fois moins d'argent. Lorsqu'on achete une action c'est pour faire une plus-value, pourquoi pas prendre la même plus value mais en investissant moins. Et pendant ce temps la on peut investir ailleur !


Quand on achète une action, on veut que l'action monte. On va utiliser la stratégie DITM pour capter les mêmes mouvements mais en investissant moins.

26/08/2021 DISCK

Si on voulait acheter du DISCK, on aurait donc deux choix:

  • Acheter 100 x DISCK = 100 x 26.98 = 2698 USD
  • Acheter un call DITM = 100 x 12.20 = 1220 USD (soit -55% par rapport à l'achat en direct) (cf. première ligne du tableau ci-dessus)


La beauté des options c'est le levier que ça nous procure. On paye le premium de l'option, et on controle 100 actions mais pour moins d'argent immobilisé. Mais il faut faire bien attention à capter tous les mouvements du sous-jacent !

Il faut regarder la colonne "DELTA". Cette colonne, en pourcentage, nous indique à quel point le prix de l'option va bouger en conjonction avec le prix du sous-jacent. Dans l'image du dessus, on voit DELTA = 0.977, c'est à dire que si DISCK augmente de 1USD, l'option va monter de 0.997USD. Si DISCK baisse de 1USD, l'option va baisser de 0.997USD.

En achetant une option CALL DITM ayant un DELTA > 0.90 alors il y a 4 avantages à acheter l'option plutôt que l'action:

  1. On investit moins d'argent : 1220USD au lieu de 2698USD
  2. On risque moins : 1220USD au lieu de 2698USD
  3. On récupère presque 90%+ du mouvement du sous-jacent
  4. Meilleur retour sur investissement (ROI)

26/08/2021 DISCK
Image source

CALL DITM is king !


Quel STRIKE doit on choisir ?

Si les fonds le permettent, toujours prendre le STRIKE le plus faible (the deepest-in-the-money) avec un DELTA > 90%. Il faut prendre en compte le coût, le prix d'équilibre (ni gain, ni perte) et le facteur DELTA.


Juste pour être bien sur : qu'est ce que ça nous fait d'acheter ce CALL DISCK à 12.20 USD ?

Cela nous permet d'avoir un contrat pour acheter à 15 USD (=STRIKE) n'importe quand jusqu'à ce que l'option expire (ici 17/12/2021) quelque soit le prix de DISCK.

Du coup le PRU sera in fine : OPTION PREMIUM + OPTION STRIKE = 12.20 + 15 = 27.20 USD


Lors d'un achat d'action la probablité de gain est de 50% et de perte de 50%. Ce n'est pas le cas pour les options. Il faut que je trouve un Probability Calculator.

Celui du livre :


Il y a des options sur ETF genre SPY.


Avec l'argent économisé, on peut acheter d'autre CALL/ACTION/OBLIGATION.


Il y a 4 possibilités:

  1. L'option expire sans valeur = on a perdu 100% de l'investissement
  2. On peut vendre l'option quand on veut
  3. On peut rouler l'option à une date ulterieure. C'est à dire vendre cette option et en racheter une autre à maturité plus éloignée.
  4. On peut exercer notre droit d'acheter 100 actions au prix du STRIKE => 100 x STRIKE = 100 x 15 = 1500 USD


On peut vendre et acheter des options tout le temps, donc à nous de voir pour vendre le CALL si l'option a perdu trop de valeur pour nous.


Pas vraiment de points faibles, mais lorsqu'on a une option, on touche pas les dividendes, on n'a pas les droits de vote. Aussi les options expirent donc il faut s'en occuper.


DEUX choses auxquelles il faut se tenir lorsqu'on veut initier une position d'achat d'option CALL DITM :

  1. Toujours prendre le STRIKE le plus faible ( deepest-in-the-money)
  2. Toujours choisir une option dont le DELTA > 90%


Ca vous est déjà arriver de mettre des ordres "épuisette" pour espérer acheter une action moins cher ? Avec cette stratégie on va être payer pour notre attente.


La stratégie : vendre des NAKED PUT

On va pouvoir gagner de l'argent passivement (les premium), tout en ayant la possibilité d'acheter nos actions moins cheres (au prix du strike).



Autrement dit, on va appliquer cette stratégie sur des actions de qualité exclusivement. Reprenons notre exemple du chapitre précédent. Mais cette fois on regarde à droite:

26/08/2021 DISCK

On pourrait vendre un NAKED PUT au STRIKE 22.5 USD pour le prix de 0.80 USD / contrat. Pour 100 contrat, on recevrait de la part de l'acheteur 0.80 x 100 = 80 USD pour pouvoir acheter 100 DISCK à 22.5 USD si jamais le prix devait tomber sous les 22.5 USD. Si ça ne passe pas sous les 22.5 USD avant l'expiration de l'option, on garde le premium, sinon on doit acheter 100 DISCK à 22.5 = 2250 USD. Si cela se produisait le PRU serait 22.50 - 0.80 = 21.70 USD.


Quand on vend une option NAKED PUT, on signe un contrat nous obligeant à acheter 100 actions à n'importe quel moment avant l'expiration de l'option dès que l'acheteur le décide.

Le risque étant qu'au moment de la transaction, on pourrait être amener à payer plus cher pour 100 DISCK que si on les achetait au prix du marché. Et si la société faisait faillite alors que l'option est toujours valide, on acheterait 100 DISCK à 22.50 USD alors que ça vaut 0.

C'est pour ça qu'il faut appliquer cette stratégie uniquement sur des sous-jacents qu'on veut avoir en portefeuille.


Si DISCK termine sous les 22.50, et l'acheteur décide d'exercer son droit, nous serons donc assigné de 100 actions DISCK au prix de 22.50 par action. Soit 2250 USD. Nous devons donc avoir 2250 USD disponible sur notre compte.


SI jamais DISCK n'est pas sous les 22.50, on va garder le premium encaissé, mais on ne pourra pas acheter les 100 DSICK à 22.50. Mais on a encaissé 80 USD. On peut maintenant répeter l'opération.


On peut vendre une option dont le STRIKE est plus faible, mais dans ce cas nous recevrons un premium plus faible de la part de l'acheteur.

On peut vendre une option dont le STRIKE est plus haut, nous recevrons un premium plus important, mais on a aussi plus de chance de se faire assigner 100 DISCK.


Only sell naked put options on stocks you want to own for the long term!


Il faut un compte margin pour vendre des options (sinon on devrait laisser trop de cash dormir sur le compte pour rien), et passer le test du boker.


Une fois que le NAKED PUT est vendu, le broker va nous demander de garder suffisament de cash: "margin requirement". Le broker pourra se retourner au cas ou la position devenait dangereuse. Souvent la marge requise est calculé comme ça : (.15 x $22.5) x ($.80) x 100 = $270 au lieu des $2250.


En bref, on se fait payer pour acheter des actions. Forcément, le premium est plus élevé lorsque la volatilité augmente. Il faut regarder le prix de la commission du broker lors de la vente de put, pour être sur d'être gagnant vs. le premium...


Lors d'une crise, beaucoup de gens souffre, mais il y a beaucoup d'affaire qui se présente : les actions perdent énormément de valeur et la volatilité explose ! Donc des premium qui sont plus interressant et des actions qui n'ont jamais été aussi peu valorisé depuis 5, 10 ans voir plus !


Encore une fois il est bon de le rappeler : ne pas vendre des NAKED PUT d'action juste pour collecter le premium ! Seulement si vous avez bien compris le risque et que vous voulez ces actions en portefeuille ! Ne vous faites pas avoir, ça fait très mal !


Mettre des ordres épuisette pour acheter des action moins cher n'est pas une bonne facon d'utiliser notre temps.

Qu'on soit assigné ou pas, on garde le premium.

Vendre des options va nous permettre de compenser de large perte de valorisation d'action et eventuellement pouvoir acheter des actions de qualité a un prix historiquement bas.


C'est la stratégie qu'il utilise le plus souvent. Ca donne un matela de sécurité vis à vis du mouvement du sous jacent, il collecte les premium et ca a une fonction de stop loss. OPTION CREDIT SPREAD peut être utilisé dans tout type de marché, haussier, baissier ou ranging.

Cette stratégie offre un matela de sécurité dans le cas ou le sous-jacent ne va pas dans le sens prédi.

Le principe est de vendre une option OTM avec un STRIKE dans le SPREAD.

Ici encore on va tirer profit de l'acheteur qui risque son argent sur une option ayant peu de chance d'être gagnante, OTM, et a échance courte. Beaucoup d'exemple par la suite.





Pas encore lu...


Si on possède des actions (au moins 100), et qu'on ne vend pas des CALL OTM couvert, on jète de l'argent par la fenêtre. En vendant un CALL, on récupère le premium de l'acheteur. En vendant un CALL, on s'engage à vendre 100 actions au prix du STRIKE si le sous-jacent le dépasse. L'idée est de vendre des CALL couvert, càd que si on doit vendre, on ne vend pas à découvert.


Il y a deux manières de faire avec les CALL couvert:

  1. On peut vendre des CALL couvert dans la mesure de ce qu'on possède déjà en portfolio.
  2. On peut acheter les actions et vendre des CALL dans la mesure de ce qu'on a acheté.

On s'interressera seulement au cas 1. C'est la qu'un investisseur jète de l'argent par la fenêtre.

En vendant un CALL couvert, on donne le droit à un acheteur de, peut-être, prendre nos actions dans un futur plus ou moins proche. On va donc essayer de vendre des CALL couvert dont la probabilité qu'on les perde soit faible. L'acheteur de l'option (on est le vendeur), nous paye un premium aujourd'hui, pour éventuellement récupérer nos actions. Nous allons essayer de profiter de la perte de la valeur temps de l'option (pour l'acheteur).

Cela va nous permettre d'encaisser des premium, avec un risque faible de perde nos actions. Pour tous les paquets de 100 actions qu'on a en portefeuille on peut vendre des CALL couvert.


26/08/2021 DISCK

J'ai 101 actions LEG en portefeuille. Je peux donc vendre 1 CALL couvert. L'action est a 47.67 USD. On peut choisir le STRIKE qu'on veut, mais dans cette stratégie, il faut choisir le STRIKE a un niveau (qu'on pense) qui ne sera pas atteint pendant la durée de la validité de l'option, ou encore mieux, un niveau auquel nous serions content de vendre nos 100 actions.

En vendant un CALL couvert, STRIKE 55, on va récupérer 100 x 0.40 = 40 USD de la part de l'acheteur. Si le 17 décembre 2021, l'action vaut moins que le STRIKE, on garde nos actions, et on peut répéter l'opération. Si nous ne sommes pas assignés à la fin de la validité de l'option, on a gagné 40 USD gratuitement.

Toujours choisir un STRIKE > PRU.


Pas de panique, si on est assigné et qu'on est forcé de vendre nos actions, ainsi soit-il. On a récupéré 40 USD, et on a vendu nos actions à un prix > PRU.


















Bothered guy: I requested permission to trade options. Status is pending. Do I have to do something ?
IBRK Representative: Hello, this is 'IBRK Representative'. Please allow me a moment to read the question you submitted to iBot and I'll respond to you shortly.
Bothered guy: Hello IBRK Representative
I requested permission to trade options. Status is pending. Do I have to do something ? Or is it under review by IBKR representative ?
IBRK Representative: Hi Bothered guy
I can see that you have requested for option trading permission which is pending approval.
However, there are some criterias which needs to be met.
I can see that your account meets all the criteria except for the number of trades required.
Your total lifetime trades are less than 100, which must be equal to at least 100 (For options, this is defined as stock trades + options trades + futures trades = at least 100 total trades lifetime).
Once you update this, the permission should get approved.
If you need to update or review your financial information, investment experience or investment objectives you can follow this procedure:
1. Log into Client Portal
2. Click on the Settings menu followed by Account Settings
3. Click on the Configure (gear) icon next to Financial Information, rectify your information and confirm.
Is there anything else I may assist you with?
Bothered guy: I have updated the information
Could you please confirm that you can see it ?
IBRK Representative: Yes, but still the trades are not 100
Please note, our system considers the lower end of the range.
Bothered guy: OK
IBRK Representative: Additionally, for trading in Options extensive knowledge is required
Two years of experience in trading options.
Bothered guy: Clear


C'est en forgeant qu'on devient forgeron.

Il nous a donc présenté 5 stratégies.

  1. Deep-In-The-Money (DITM)
    • Buying CALL deep-ITM
    • Ca nous permet de virtuellement posseder une action, de profiter de chaque mouvement du sous-jacent, mais en risquant et en bloquant moins d'argent. DELTA > 90%.
  2. Put-Sell
    • Selling PUT
    • Ca nous permet d'obtenir du cash de l'acheteur, mais aussi d'avoir l'opportunité d'acheter à un prix plus interressant. Peut remplacer l'odre limite épuisette par exemple. Vendre des PUT uniquement sur des actions de qualité, qu'on veut avoir en portefeuille.
  3. Option Credit Spread
    • Buying CALL+Selling CALL (or PUT) with slightly different STRIKE both OTM
    • relire et comprendre
  4. Covered Call
    • Selling CALL
    • Ca nous permet d'obtenir du cash de l'acheteur, tous les 2-3 mois. Pour minimiser les chances d'être assigné, choisir un STRIKE OTM suffisament éloigné.
  5. Ratio Option Spread
    • Sa stratégie la plus risqué
    • relire et comprendre
Classified in : Options - Tags : none

Telegram bot in python

Written by pmd - - no comments

Information from Telegram itself :

YOU: /setjoingroups
BotFather: Choose a bot to change group membership settings.
YOU: @YourBot BotFather: 'Enable' - bot can be added to groups.
'Disable' - block group invitations, the bot can't be added
to groups. Current status is: DISABLED
YOU: Enable
BotFather: Success! The new status is: ENABLED.

Fan control of Raspberry

Written by pmd - - no comments


Python3 program

I have red a lot of pages how to control a fan using PWM signal.
Some of them:


Finally, it seems my fans don't have much effect on the temperature. About 5°C. So I decided to set an hysteresis:

  • Switch ON fans if temperature > 75°C
  • Switch OFF fans if temperature < 60°C
  • Do nothing if 60°C <= temperature <= 75°C
$ nano
# -*-coding:Utf-8 -*

import os
from gpiozero import LED
from time import sleep
import RPi.GPIO as GPIO

fanPin = 2
testMode = False

def getCPUtemperature():
    res = os.popen('vcgencmd measure_temp').readline()
    temp =(res.replace("temp=","").replace("'C\n",""))
    #print("temp is {0}".format(temp)) #Uncomment here for testing
    return temp

    GPIO.setup(fanPin, GPIO.OUT)
    while True:
        if testMode:
            duty_cycle = input("Nouveau PWM (%) ? ")
            temp = float(getCPUtemperature())
            if temp > 75:
            elif temp < 60:
            sleep(5) # Read the temperature every 5 sec, increase or decrease this limit if you want
except KeyboardInterrupt: # trap a CTRL+C keyboard interrupt
    GPIO.cleanup() # resets all GPIO ports used by this program

Set linux service

$ nano /etc/systemd/system/manageFan.service
Description=start fan management at system startup
After =
Wants =

ExecStart=/usr/bin/python3 /home/pi/


🇬🇹 GT Rhum Zacapa + 🇨🇺 CU Cigare Bolivar

Written by pmd - - no comments

Zacapa 23

Containing a blend of rums from 6 to 23 years old.

Wonderfully intricate with honeyed butterscotch, spiced oak and raisined fruit, showcasing the complexity of the sistema solera ageing process.

Light mahogany, with the tones of long barrel ageing at the rim and long, slow legs clinging to the glass.


The Cuban-produced Bolívar cigars are very full-bodied, with considerable ligero in the blend and have traditionally been some of the strongest and most full-bodied Havana cigars.

Wireguard on Raspberry

Written by pmd - - no comments

I have tried to use Wireguard following two guides :

  1. From this forum thread, without succes: Guide: Install Wireguard On Raspberry latest releases
  2. From this blog article, without succes as well: Installing and Configuring WireGuard on Raspberry Pi OS (August 2020)

This can be used as well to generate wireguard peers configurations + QR codes: Wireguard Tools

=> no successfull handshake between server (raspberry) and peers (Android and Windows 10).



$ sudo cat /etc/wireguard/wg0.conf
Address =
ListenPort = 58280
PrivateKey = gNVxJe7Se842IiOR5GsXeM4sHcacGhPATIdQCgqP8Wa=
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
PublicKey = OQmmvh9/8PDWFIpOEzVWzOZ1HXQ48+10vONFlUNb0ia=
AllowedIPs =
PublicKey = N9VPXnH8hip4sJGGWm4ziLFWD5ZAveoj7H5oH8OgsHa=
AllowedIPs =

Peer 1:

$ cat ~/wg_config/users/client1/client.conf
Address =
PrivateKey = 6OfJPX1ZQCFu08fTy2uU6JdgUf/qXgzBoTtX/tCYX3a=

PublicKey = b6kqDH4pjAdK0LqPrEF4Fc9d4XxR0Eb3kSk9rzdEKma=
AllowedIPs =,
Endpoint =

Peer 2:

$ cat ~/wg_config/users/client2/client.conf
Address =
PrivateKey = uB+g5H0kbyI07kHdAajcQUE8VqMTaNqqiu0yj6BrH1a=

PublicKey = b6kqDH4pjAdK0LqPrEF4Fc9d4XxR0Eb3kSk9rzdEKma=
AllowedIPs =,
Endpoint =




UDP correctly forwarded

I verified UDP port was correctly forwarded by my ISP modem/router, following Test whether UDP port is open: simple UDP server and client

Server side:

$ nc -l -u -p 58280

Client side:

$ nc -u servname_or_ip 58280

Checking if packets arrive to server

Listening on specific interface and on precise port of the server:

$ sudo tcpdump -i eth0 'port 58280'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
20:56:36.474701 IP > UDP, length 148
20:56:36.476725 IP > UDP, length 92
20:57:34.066017 IP > UDP, length 148
20:57:34.070037 IP > UDP, length 92

Here I tried two times to connect a peer to the server while pinging Wireguard server IP ( from peer.


Recording packets using tcpdump on both client and server sides

CLIENT: in a country potentially blocking VPN stuff
SERVER: in France, probably not blocking anything

I have generated another peer configuration. This time it is not a windows, not an android, but an openwrt router using same .
I have fixed the port in use for the wireguard client on openwrt in order to listen WAN interface on 51820.

What is observed on CLIENT openwrt side:

root@OpenWrt:~# tcpdump -i eth1 'port 51820'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes
14:37:45.906247 IP > UDP, length 148
14:37:46.025023 IP > UDP, length 92
14:37:46.038821 IP > UDP, length 32
14:38:11.087567 IP > UDP, length 32
14:38:36.687153 IP > UDP, length 32
14:39:02.286884 IP > UDP, length 32
14:39:27.887315 IP > UDP, length 32
14:39:53.487145 IP > UDP, length 32
14:39:53.498819 IP > UDP, length 148
14:39:59.257666 IP > UDP, length 148
14:40:04.377588 IP > UDP, length 148
14:40:10.138437 IP > UDP, length 148
14:40:15.257703 IP > UDP, length 148
14:40:21.017550 IP > UDP, length 148
14:40:26.782109 IP > UDP, length 148
14:40:31.897640 IP > UDP, length 148
14:40:37.659644 IP > UDP, length 148
14:40:42.777571 IP > UDP, length 148
14:40:48.537585 IP > UDP, length 148
14:40:54.298502 IP > UDP, length 148
14:41:00.057651 IP > UDP, length 148
14:41:05.177582 IP > UDP, length 148
14:41:10.937544 IP > UDP, length 148
14:41:16.697736 IP > UDP, length 148
14:41:22.457569 IP > UDP, length 148
14:41:28.220105 IP > UDP, length 148
14:41:33.977597 IP > UDP, length 148
14:41:39.097547 IP > UDP, length 148
14:42:04.697538 IP > UDP, length 148
29 packets captured
29 packets received by filter
0 packets dropped by kernel
root@OpenWrt:~# wg
interface: WG0
public key: OQmmvh9/8PDWFIpOEzVWzOZ1HXQ48+10vONFlUNb0ia=
private key: (hidden)
listening port: 51820

peer: b6kqDH4pjAdK0LqPrEF4Fc9d4XxR0Eb3kSk9rzdEKma=
allowed ips:
latest handshake: 32 minutes, 12 seconds ago
transfer: 92 B received, 40.80 KiB sent
persistent keepalive: every 25 seconds
  • Only first two captured packets were seen by SERVER side.
  • These two captured packets are enough to declare successful handshake on CLIENT side.

What is observed on SERVER raspberry pi side:

pi@raspberrypi:~ $ sudo tcpdump -i eth0 'port 58280'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
16:37:45.924082 IP > UDP, length 148
16:37:45.928019 IP > UDP, length 92
2 packets captured
2 packets received by filter
0 packets dropped by kernel
pi@raspberrypi:~ $ sudo wg
interface: wg0
public key: b6kqDH4pjAdK0LqPrEF4Fc9d4XxR0Eb3kSk9rzdEKma=
private key: (hidden)
listening port: 58280

peer: OQmmvh9/8PDWFIpOEzVWzOZ1HXQ48+10vONFlUNb0ia=
allowed ips:
transfer: 888 B received, 552 B sent
pi@raspberrypi:~ $
  • Only first two packets captured by CLIENT are seen as well on SERVER side.
  • Handshake is not declared successful on SERVER side.
  • Why SERVER is not seeing following packets ??? If I restart CLIENT, SERVER does not see packets for new handshake unless port used by CLIENT changes.
  • Why SERVER is not seeing anything from this CLIENT packet: " 14:37:46.038821 IP > UDP, length 32 "

Trying to connect from local country

CLIENT: in a country potentially blocking VPN stuff Computer using Windows in France, probably not blocking anything
SERVER: in France, probably not blocking anything

pi@raspberrypi:~ $ ip route show table 42
default via dev eth0 proto dhcp src metric 202 dev eth0 proto dhcp scope link src metric 202 dev wg0 proto kernel scope link src
pi@raspberrypi:~ $ sudo tcpdump -i eth0 'port 58280'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
19:58:01.734652 IP > UDP, length 148  # handshake
19:58:01.741670 IP > UDP, length 92   # handshake
19:58:01.781909 IP > UDP, length 96   # ping from client
19:58:01.782398 IP > UDP, length 96   # server answers
19:58:02.893737 IP > UDP, length 96   # ping from client
19:58:02.894315 IP > UDP, length 96   # server answers
19:58:03.822017 IP > UDP, length 96   # ping from client
19:58:03.822643 IP > UDP, length 96   # server answers
19:58:05.793794 IP > UDP, length 96   # ping from client
19:58:05.794394 IP > UDP, length 96   # server answers
19:58:15.839250 IP > UDP, length 32   # ???
19:58:51.032841 IP > UDP, length 128  # server pings client
19:58:51.123963 IP > UDP, length 128  # client answers
19:58:52.033771 IP > UDP, length 128  # server pings client
19:58:52.090988 IP > UDP, length 128  # client answers
19:58:53.035792 IP > UDP, length 128  # server pings client
19:58:53.135887 IP > UDP, length 128  # client answers
19:58:54.037607 IP > UDP, length 128  # server pings client
19:58:54.076616 IP > UDP, length 128  # client answers
pi@raspberrypi:~ $ sudo wg
interface: wg0
  public key: b6kqDH4pjAdK0LqPrEF4Fc9d4XxR0Eb3kSk9rzdEKma=
  private key: (hidden)
  listening port: 58280

peer: xxMWH9tZDwCNXPbErQxBuDejgkxNU1QOm9vFezUBeSa=
  endpoint: :51706
  allowed ips:
  latest handshake: 19 seconds ago
  transfer: 564 B received, 476 B sent

=> It worked ! I conclude that wireguard is blocked in the country where the client is.

Interesting to read about how easy it is to block wireguard: Let's talk about obfuscation again



Rss feed of the articles