Citation: 4A_301/2023 E. A

A.a. A.________ SA (ci-après: la banque ou la demanderesse ou la recourante), à U.________, est une société anonyme qui offre notamment à ses clients un accès aux principaux marchés boursiers du monde, leur permettant de procéder en ligne à des transactions boursières, ainsi qu'à des opérations de négoce sur devises (ci-après: les opérations forex). Les opérations forex sont des opérations par lesquelles des devises sont échangées l'une contre l'autre (on parle de paires de devises), comme la paire USD/CHF. Il s'agit d'opérations hautement spéculatives, et ce d'autant plus lorsque l'effet de levier est important. Elles entraînent donc des possibilités de gain et des risques de pertes très importants. Le marché du négoce de devises est en outre très sensible aux différents impondérables de l'actualité. La banque a développé sa propre plateforme informatique de négoce de devises en ligne, dénommée C.________. L'effet de levier va jusqu'à un facteur 100, l'effet de levier par défaut étant l'effet maximal de 100. La banque propose un cours pour des paires de devises sur son site internet, cours qu'elle donne sur la base de cours qu'elle reçoit d'autres banques ou fournisseurs, auxquels elle ajoute sa rémunération ("spread"). Le client décide sur cette base de passer un ordre d'achat ou de vente. La banque se fournit alors auprès d'un fournisseur. Si l'ordre du client débouche sur une transaction, la banque est sa contrepartie: elle est donc son vendeur ou son acheteur suivant l'ordre donné. Pour éviter que les comptes des clients ne deviennent négatifs et que ceux-ci perdent donc plus que la totalité de leur ligne de crédit e-forex, la banque a mis en place un système de liquidation automatique. Ce système s'enclenche dès que leur ligne de crédit atteint ou tombe au-dessous d'un certain pourcentage de la marge requise pour leurs positions ouvertes; toutes les positions ouvertes du client sont alors liquidées et ses ordres ouverts sont effacés. La banque gère seule ce système et elle fixe, seule et à sa guise, le pourcentage de la marge au-dessous duquel le système de liquidation automatique se déclenche. Suivant le moment auquel la liquidation forcée survient, elle peut provoquer une perte pour le client sans que celui-ci ne puisse l'empêcher. D.________, entendu comme témoin, a déclaré que, lorsque le système de liquidation automatique ferme la position d'un client, la banque a deux possibilités: soit elle conserve dans son stock la position liquidée si sa quantité lui permet de la vendre dans le cercle de ses clients avec une marge, soit la position est revendue à un des partenaires de la banque. A.b. B.________ (ci-après: le client ou le défendeur ou l'intimé) est un ressortissant suisse, domicilié dans le canton de Vaud, qui a exercé comme analyste junior auprès de plusieurs banques, puis comme analyste confirmé. Il a ouvert un compte (n° xxx) auprès de la banque en février 2011 et a accepté le contrat e-forex pour l'utilisation de la plateforme C.________. L'art. 4.10 (Système de liquidation automatique) ch. ii et vii des conditions générales du contrat e-forex dispose: " ii. [...] Vous acceptez d'ores et déjà toute transaction ou opération qui sera effectuée en vertu du Système de liquidation automatique et reconnaissez être seul responsable des éventuelles pertes, dommages et autres conséquences liés à la liquidation automatique de vos positions" "vii. Dans l'hypothèse où le Système de liquidation automatique ne parviendrait pas à limiter les pertes au montant total de la Ligne de crédit e-forex [...] le montant de vos pertes non couvert sera débité de votre Compte banque. Si ce montant n'est pas disponible en cash sur votre Compte banque, A.________ se réserve le droit de clôturer toute ou partie des positions ouvertes dans votre Compte banque, sans avis préalable et à sa libre appréciation, i ndépendamment du fait qu'il pourrait en résulter une perte importante pour vous. À cet égard, A.________ a un droit de nantissement de premier rang et un droit de rétention sur tous les actifs que vous détenez chez A.________. Si de tels avoirs ne sont pas disponibles, vous aurez l'obligation de payer immédiatement la somme d'argent nécessaire pour couvrir le solde négatif sur votre Compte banque, qui vaut reconnaissance de dette au sens de la Loi suisse sur la poursuite pour dettes et la faillite." Dès le 28 février 2011, le client a essentiellement procédé à des transactions forex par le biais de la plateforme de la banque C.________, et ce sur différentes paires de devises, dont la paire USD/CHF. Il s'est vu concéder un effet de levier, lui permettant d'ouvrir des positions dont la valeur était largement supérieure à ses avoirs en compte. A.c. La Banque nationale suisse (ci-après: BNS) avait, le 6 septembre 2011, instauré un taux plancher de 1.20 fr. pour 1 euro pour répondre aux préoccupations croissantes liées à la hausse du franc suisse. Au soir du 14 janvier 2015, le client disposait sur son compte d'un montant de 193'325 USD et de 17 positions sur devises, notamment d'une position USD/CHF, l'exposant au dollar américain, de 6'000'000 au cours de 0.986378, qu'il avait constituée progressivement depuis le mois d'octobre 2014. Le 15 janvier 2015 à 10h25, le dollar américain s'échangeait à un cours proche de 1.02 fr. et le client disposait d'une marge disponible de 423'477,48 USD A.d. A 10h30, la BNS a abandonné le taux plancher. Cela a provoqué une appréciation du franc suisse par rapport à l'euro et au dollar américain et a entraîné un mouvement de panique sur les marchés financiers. La paire USD/CHF a été fortement impactée. Cela a entraîné un assèchement subit de la liquidité des marchés qui a rendu impossible l'exécution d'ordres dans des conditions normales. À 10h31, le compte du client est passé en "alerte de marge". À 10h36 et 22 secondes, le système de liquidation automatique s'est déclenché et a entraîné la liquidation de toutes les positions ouvertes du client, sauf celle sur la paire USD/BRL, soit 16 positions. Pour la position du client USD/CHF, le taux de change était au plus bas, soit à un cours situé entre 0.76 et 0.77 fr. À 10h41, la banque a stoppé tout négoce de la paire de devises EUR/CHF et, à 10h50, de toutes les paires comprenant le franc suisse. À 11h14, à la reprise du négoce, la paire USD/CHF s'échangeait à 0.89 fr. et est restée stable par la suite. À 14h02, la position restante du client en USD/BRL a également été liquidée. A.e. Le 26 janvier 2015, la banque a avisé le client que ses positions avaient dû être liquidées, que le solde de son compte était négatif et l'a invité à régler le montant de 929'075 USD.