← All versions
v0.45.0Current
September 24, 2026

Senzoukria v0.45.0 release notes

Nobody wrote reviewed notes for this version. What follows is the release body as published on GitHub, unedited.

  • v0.45.0 — Le meilleur bid/ask dans le Replay, un an d'historique Databento importé d'un seul geste, un panneau d'ordres compact
  • Les versions 0.35.0 et 0.40.0 n'ont pas été publiées : leur contenu est repris ici. Cette version apporte :
  • l'import d'un dossier entier d'historique Databento dans le Replay et le Backtest ;
  • le L1 complet dans le Replay : meilleur bid, meilleur ask, tailles et nombres d'ordres ;
  • un panneau Order compact ;
  • les traductions de l'interface.
  • Le meilleur bid/ask dans le Replay
  • Une séance importée d'un fichier MBP-1 garde maintenant son L1 complet, à pleine résolution : meilleur bid, meilleur ask, taille et nombre d'ordres de chaque côté. Un côté vide reste vide, jamais « 0 ».
  • À l'écran : une bande dans la barre de lecture affiche bid, ask, tailles, nombres d'ordres et écart en ticks, en lecture comme en pause et après un saut dans la séance. Un carnet croisé, qui existe dans les données réelles, est montré tel quel et signalé. Une séance sans L1 affiche « Transactions seules ».
  • Dans la liste des séances : un badge « L1 » indique celles qui le portent. Si une même journée existe en plusieurs copies (cache broker et import), la carte dit laquelle elle utilise ; la copie qui porte le L1 est toujours choisie.
  • Compte d'évaluation simulé, seulement dans une séance qui a un L1 :
  • un achat au marché paie l'ask, une vente reçoit le bid ;
  • les ordres limite et stop et les protections se déclenchent sur le bid ou l'ask, et non plus sur le dernier échange ; un niveau touché puis quitté entre deux rafraîchissements compte ;
  • si le côté nécessaire du carnet est vide, l'ordre est refusé avec un message : le logiciel n'invente jamais de contrepartie à partir du dernier échange ;
  • si le L1 devient illisible pendant la lecture, les exécutions, les ordres en attente et les protections sont suspendus, et la bande l'affiche. Un saut dans la séance tente de le retrouver.
  • Sans L1, rien ne change : le compte exécute au dernier prix, comme avant.
  • À l'import, une case « Garder le L1 », cochée par défaut, permet de s'en passer. Le rapport d'import indique les séances qui l'ont gardé.
  • Vérifié sur trois fichiers réels de MNQ (30/08 au 01/09/2026) : le L1 enregistré est identique, changement par changement, à une relecture indépendante des fichiers d'origine, soit 24,4 et 25,5 millions de changements par séance. Environ 88 % des transactions ont lieu exactement au meilleur prix affiché juste avant. Les autres balaient plusieurs niveaux.
  • Place disque : environ 125 Mo de plus par séance MNQ, en plus des ~30 Mo de transactions. Sur une année, on peut s'attendre à environ 40 Go au total contre 7,8 Go ; c'est une estimation à partir de trois jours, pas une mesure. Les séances déjà importées n'ont pas le L1 : il faut réimporter le dossier pour l'obtenir.
  • Importer un dossier Databento entier, en une fois
  • Jusqu'ici, un historique se chargeait fichier par fichier. Vous choisissez maintenant un seul dossier : le logiciel en parcourt tout le contenu, sous-dossiers et archives ZIP compris, et reconnaît les exports CSV comme les fichiers DBN (.dbn, .dbn.zst).
  • Dans Replay, ouvrez la carte d'import et choisissez un dossier. Vous pouvez aussi coller son chemin dans la fenêtre de sélection.
  • L'inventaire s'affiche avant tout import : fichiers reconnus, fichiers ignorés et pourquoi, période couverte.
  • Importer lance la lecture. L'import peut être annulé à tout moment.
  • Chaque journée devient une séance rejouable, en footprint, delta, CVD, profil de volume et big trades. Le Backtest peut aussi reconstruire ses barres depuis le même dossier.
  • Vérifié sur une année réelle de MNQ en MBP-1 : 313 fichiers, environ 126 Go compressés, 6,5 milliards d'enregistrements lus.
  • Replay : 254 journées créées, sans aucune erreur.
  • Backtest : 246 journées.
  • Mémoire de travail de l'import : moins de 200 Mo tout au long de la lecture. C'est ce que l'import alloue, pas la mémoire totale du logiciel.
  • Durée : de l'ordre de 20 minutes par chemin sur le poste de test.
  • Espace disque occupé : ~7,8 Go pour les séances, ~3,2 Go pour le Backtest.
  • Ce qui n'est jamais deviné :
  • Les transactions sont gardées avec leur côté agresseur, et le meilleur bid/ask d'un MBP-1 à part (voir plus haut). Une cotation n'est jamais transformée en transaction. Une transaction sans côté connu est écartée et comptée, jamais rangée à l'achat par défaut.
  • Une journée incomplète n'est pas écrite, par exemple la première journée d'un fichier entamée avant son début.
  • Le jour de bascule d'un contrat continu est refusé : le soir sur l'ancien contrat et la journée sur le nouveau ne sont jamais mélangés dans une même séance. Le Backtest écarte aussi la veille et le lendemain de la bascule.
  • Un fichier daté hors de la plage que ses propres métadonnées annoncent est mis en erreur plutôt que rangé ailleurs.
  • La heatmap crypto ne montre plus un carnet périmé comme actuel
  • Quand le flux de profondeur Binance se rompait, la nappe de liquidité, le best bid/ask et le DOM continuaient d'afficher le dernier carnet connu comme s'il était vivant. Un carnet reconstruit à partir d'un instantané trop ancien pouvait aussi être publié.
  • Seul un carnet raccordé au flux, en Spot comme en USD-M, est désormais dessiné. Un instantané en attente de raccord ne s'affiche jamais comme la liquidité actuelle.
  • À chaque rupture, la nappe et l'escalier bid/ask s'arrêtent à la dernière preuve de validité. Le trou apparaît hachuré, distinct d'un carnet vide. L'historique déjà observé est conservé.
  • Le DOM, le profil de profondeur et les murs ne présentent plus d'anciens niveaux comme actuels, y compris une réponse arrivée en retard d'avant la rupture.
  • Reprises : bornées à douze tentatives. Au-delà, l'écran le dit et propose un Retry temporisé, sans boucle de relance automatique.
  • Les bulles Big Trades et le best bid/ask sur la même horloge
  • Les trades crypto étaient datés à l'heure de la bourse, et le carnet à l'heure du poste au moment de l'affichage. Sur un poste en avance d'environ deux secondes, cas mesuré, les bulles apparaissaient avant les mouvements du best bid/ask qu'elles avaient provoqués.
  • Le carnet Binance et le carnet Bybit sont désormais datés à l'heure de marché de leur dernière mise à jour. Aucun décalage constant n'est appliqué, et l'heure de votre machine ne change plus l'alignement. Le prix des trades n'est jamais modifié pour les rapprocher du spread.
  • Vérifié dans l'application, en conditions normales (Binance) : l'écart médian entre trades et carnet, mesuré par le logiciel, est passé d'environ 2,1 s à quelques dizaines de millisecondes. Les relevés vont de −75 à +93 ms selon la paire et le marché : BTC et ETH, Spot et USD-M.
  • Pas encore mesuré : l'écart de chaque trade au mouvement qu'il provoque (p95), le comportement pendant une coupure réseau réelle, et Bybit en direct.
  • Limite : Binance publie la profondeur par lots, à une cadence nominale de 100 ms. Un léger écart peut donc subsister entre un trade et le mouvement du best bid/ask qu'il provoque. Il n'est pas garanti nul.
  • Le prix d'un Big Trade n'est plus arrondi à la grille d'affichage
  • En dézoomant, une bulle isolée était dessinée au centre de sa case de regroupement, et non à son prix : 85 601,3 pouvait apparaître à 85 601. Un trade isolé est désormais dessiné à son prix exact, quel que soit le zoom.
  • Une bulle qui regroupe plusieurs prix, quand le zoom les rapproche à moins de quelques pixels, est placée à la moyenne de ces prix pondérée par la taille. C'est un centre de masse, pas un prix exécuté. Elle reste toujours comprise entre le plus bas et le plus haut prix réellement échangés.
  • Vérifié dans l'application sur BTC et ETH, Spot et USD-M : bulles proches du best bid/ask, transitions propres. L'exactitude au centième est démontrée par les tests jusqu'au calcul de la position à l'écran ; elle n'a pas été mesurée au pixel.
  • Également corrigé : sur les marchés à tick décimal (futures au centième ou au dixième, paires crypto dont la grille suit le tick), le volume affiché au survol de la heatmap pouvait être celui de la rangée voisine. Le profil des toutes premières secondes était concerné de la même façon. Ce correctif est démontré par les tests sur le chemin réel, mais pas encore contrôlé dans l'application.
  • Heatmap : changement de paire, erreurs, affichage
  • Changement de paire ou de source : il ne laisse plus un panneau blanc ni les prix de l'instrument précédent.
  • Erreurs : une erreur d'initialisation ou de fournisseur est affichée avec sa cause, au lieu d'un écran figé.
  • Nouveaux réglages : lissage vertical (Auto, Toujours, Aucun), plafond d'affichage, lecture du carnet en cumulé.
  • Borne corrigée : la heatmap ne peint plus un carnet de 24 heures, car la borne était comptée en colonnes.
  • Bouton de durée : il affiche la durée réellement visible après un zoom à la molette, un glissement de l'axe du temps, un retour à la durée par défaut ou un changement de paire. Une durée hors préréglage s'écrit « 26 s » ou « 1 min 12 s ». Démontré par les tests sur le vrai contrôleur de navigation, pas encore contrôlé dans l'application.
  • Contour des bulles : il ne recouvre plus une petite bulle, car son épaisseur est désormais bornée par rapport au rayon. Couleurs et préférences sont inchangées. Observé dans l'application à la taille 40 % seulement.
  • Un panneau Order compact
  • L'onglet Order du panneau de trading, broker comme démo, reprend la disposition compacte des plateformes de référence :
  • Contrat, Open Qty, Open P/L, Daily P/L en tête. Une valeur inconnue s'affiche « — », jamais « 0 ».
  • Quantité en pas à pas.
  • Grille ACHAT / VENTE, un geste par case : MKT, BID/ASK, LMT, STP, STP LMT. Au survol, chaque case annonce l'ordre qui partira, prix compris.
  • Cancel et Flatten account. Le libellé dit la portée réelle : tout le compte.
  • L'ensemble utile de l'onglet passe d'environ 1 250 à 770 pixels de haut. Le ticket complet (prix exact, validité, taille par le risque) reste disponible, replié sous le pavé. Aucune fonction n'est retirée.
  • Les gardes :
  • Cancel ne vise que les ordres du compte actif, du contrat et de la place affichés. Quand des ordres de protection sont inclus, le pavé l'écrit.
  • Les cases LMT, STP et STP LMT, qui calculent leur prix à partir du marché, sont grisées quand le prix n'a pas été confirmé par le flux temps réel depuis 15 s. Un prix rechargé depuis l'historique ou le cache ne compte pas comme frais. MKT et le ticket complet restent disponibles.
  • BID / ASK ne partent que d'un meilleur bid/ask réel et daté. Aucun écran ne le fournit encore au pavé : ces deux cases sont donc désactivées, avec la raison.
  • Les langues
  • Le français qui s'affichait en anglais (ou dans une autre langue) est traduit : 582 textes dans 81 fichiers, dont le carnet de la heatmap (« PRIX », « TAILLE ») et les messages des indicateurs. Un contrôle automatique empêche désormais qu'un texte français visible soit ajouté sans traduction.
  • Le panneau Indicateurs et son catalogue sont traduits : noms, réglages, options, aides, sections, unités et descriptions, soit 818 textes dans les six autres langues. Les noms, groupes et réglages de vos propres scripts restent les vôtres.
  • Trading et carnet
  • Panneau de trading : réorganisé ; le ticket rapide se détache et se place où l'on veut.
  • DOM scalp : cliquer dans le carnet pose ou annule un ordre. Le clic droit pose un stop. REV et CXL sont ajoutés.
  • Colonne P&L par niveau : elle est alimentée par la position réelle.
  • Ordres : un ordre ne fait plus la queue derrière des tâches bloquantes, et la latence d'exécution est mesurée.
  • Carnet : il s'affiche à côté du tape des trades. Deux niveaux au même tick s'additionnent. Le carnet du footprint dit quand son flux est mort.
  • Flux crypto
  • Reconnexion Binance : le flux ne se reconnectait jamais après une coupure ; il se reconnecte. La bougie ne reste plus figée.
  • Bybit : le flux et le carnet se reconnectent. Le carnet repart d'un livre neuf plutôt que de l'ancien.
  • Paires à pas fin : elles n'affichent plus « 0.000000 » sur toutes leurs lignes.
  • Aussi
  • Les matières premières entrent dans le fil de News.
  • Une recherche retrouve un réglage sans connaître son onglet, et « Mes pages » permet de composer une page personnelle.
  • Le footprint indique l'intensité d'une cellule, pas seulement sa présence.
  • VWAP en courbe.
  • Nouveaux préréglages d'indicateurs et combinaisons de Market Profile.
  • Le vert de la marque est unifié.
  • Limites connues
  • Heatmap crypto, recette partielle. Sont vérifiés dans l'application :
  • les transitions de paire et de source ;
  • l'alignement des horloges en conditions normales, sur Binance.
  • Ne l'ont pas encore été :
  • une rupture réseau réelle avec reprise ;
  • l'abandon avec Retry ;
  • le rendu GPU prolongé.
  • Bybit : son carnet ne signale pas encore ses ruptures. Un carnet Bybit interrompu n'est pas hachuré.
  • Heatmap, cas particuliers :
  • un graphique ouvert pendant une coupure n'en apprend l'état qu'au changement suivant ;
  • l'alerte « aucun carnet » n'est donnée qu'une fois ;
  • un abandon peut masquer une erreur d'initialisation antérieure ;
  • Retry répare dans ces cas.
  • Vérifiés par les tests, pas encore dans l'application :
  • le bouton de durée ;
  • le contour des bulles aux tailles 100 et 200 % et en style néon ;
  • le volume au survol sur les marchés à tick décimal.
  • Le bouton de durée suit la fin d'un glissement de l'axe, pas chaque pixel pendant le geste.
  • Heatmap, conventions de calcul à préciser :
  • un trade tombé exactement entre deux rangées d'affichage (ETH aux cents impairs) est rangé selon l'arrondi de la machine, sans règle fixée ;
  • une égalité de POC est tranchée au prix le plus bas.
  • L1 dans le Replay :
  • les séances importées avant cette version n'ont pas de L1 : il faut les réimporter ;
  • un fichier TBBO reste en transactions seules, car il ne connaît le carnet qu'au moment des transactions ;
  • quand un stop et un objectif sont touchés entre deux rafraîchissements, le stop l'emporte : l'ordre réel n'est pas connu à cette résolution ;
  • un ordre déclenché s'exécute à son prix, sans glissement, comme avant ;
  • pas encore de lignes bid/ask sur le graphique, ni de DOM, heatmap ou indicateurs de microstructure alimentés par le L1 du Replay ;
  • vérifié sur des fichiers réels par le moteur d'import et par les tests, pas encore dans l'application.
  • Panneau Order compact : vérifié par les tests et sur un banc avec les vrais composants, pas encore dans l'application ni par un ordre exécuté.
  • Import d'un dossier :
  • Un contrat lu depuis une série continue (MNQ.v.0) apparaît sous le nom MNQ-I suivi de son identifiant, et non sous son mois (MNQU5) : le fichier ne le donne pas.
  • La liste des séances n'est pas conçue pour des centaines de journées : elle est longue à parcourir après l'import d'une année.
  • Une journée signalée comme dégradée par Databento n'est pas repérée, car son fichier de conditions n'est pas lu.
  • L'import de l'année a été vérifié par le moteur d'import sur les fichiers réels, pas encore depuis l'écran de l'application.
  • Pas encore traités :
  • la connexion des comptes Rithmic Apex PA : diagnostic à faire, aucun changement de connexion ;
  • l'historique absent au premier affichage avant connexion.
  • Signalé, en diagnostic : des reconnexions Rithmic intermittentes, avec un rechargement des barres de 2 à 3 secondes. La cause n'est pas établie.
  • Langue : le français visible est corrigé, mais environ 1 660 textes écrits en anglais restent à traduire pour les autres langues. Les traductions n'ont pas encore été relues par des locuteurs natifs, ni contrôlées écran par écran dans l'application.
  • L'ajustement automatique des protections et les gestes de trading du carnet sont démontrés par test, pas par un aller-retour exécuté contre un broker.
  • Installation
  • Depuis la page Download de Senzoukria ou la recherche de mise à jour du logiciel :
  • Windows 10/11 64 bits ;
  • macOS (universel, bêta, non signé par Apple) ;
  • Linux (AppImage et .deb).