{"id":8075,"date":"2024-08-28T17:20:14","date_gmt":"2024-08-28T17:20:14","guid":{"rendered":"https:\/\/bjftradinggroup.com\/?page_id=8075"},"modified":"2026-10-17T22:35:52","modified_gmt":"2026-10-17T22:35:52","slug":"developers","status":"publish","type":"page","link":"https:\/\/bjftradinggroup.com\/fr\/developers\/","title":{"rendered":"Pour les d\u00e9veloppeurs"},"content":{"rendered":"<p><\/p>\n<div class=\"dev-page\">\n<p><!-- ============================================================ --><br \/>\n<!-- HERO                                                         --><br \/>\n<!-- ============================================================ --><\/p>\n<div class=\"dev-hero\">\n<span class=\"dev-eyebrow\">Pour les d\u00e9veloppeurs &middot; plateforme SharpTrader<\/span><\/p>\n<h1>D\u00e9veloppez sur SharpTrader : <span class=\"dev-gold\">API de bots en C#, connectivit\u00e9 EasyFIX et biblioth\u00e8que graphique BjfChart<\/span><\/h1>\n<p>SharpTrader est une plateforme de trading con\u00e7ue pour les traders, pas pour les courtiers, et elle est ouverte \u00e0 ceux qui \u00e9crivent du code pour eux. \u00c9crivez vos propres strat\u00e9gies en C# directement dans la plateforme, connectez vos logiciels externes \u00e0 son moteur d\u2019ex\u00e9cution via l\u2019API EasyFIX, ou int\u00e9grez notre biblioth\u00e8que de graphiques en chandeliers acc\u00e9l\u00e9r\u00e9e par GPU dans votre propre terminal .NET.<\/p>\n<div class=\"dev-chips\">\n<span class=\"dev-chip\">Strat\u00e9gies C# avec ticks en temps r\u00e9el et sessions multi-courtiers<\/span><br \/>\n<span class=\"dev-chip\">API EasyFIX : plus de 50 connecteurs FIX, exchanges crypto<\/span><br \/>\n<span class=\"dev-chip\">DLL BjfChart : 22 indicateurs, outils de dessin, ticket d\u2019ordre<\/span><br \/>\n<span class=\"dev-chip\">.NET Framework 4.8 et .NET 8<\/span>\n<\/div>\n<p style=\"margin-top:18px !important\"><a class=\"dev-btn\" href=\"#charting\">Voir la d\u00e9monstration des graphiques<\/a> <a class=\"dev-btn-ghost\" href=\"#contact\">Contacts d\u00e9veloppeurs<\/a><\/p>\n<\/div>\n<p><!-- ============================================================ --><br \/>\n<!-- KEY NUMBERS                                                  --><br \/>\n<!-- ============================================================ --><\/p>\n<table class=\"dev-stats\">\n<tbody>\n<tr>\n<td><strong>C#<\/strong><span>langage natif des strat\u00e9gies, compil\u00e9 dans SharpTrader<\/span><\/td>\n<td><strong>50+<\/strong><span>connecteurs FIX API vers des courtiers, plus les principaux exchanges crypto<\/span><\/td>\n<td><strong>22<\/strong><span>indicateurs dans BjfChart, v\u00e9rifi\u00e9s par rapport \u00e0 des calculs de r\u00e9f\u00e9rence<\/span><\/td>\n<td><strong>2<\/strong><span>cibles dans une seule DLL : net48 pour les applications existantes, net8.0-windows pour les nouvelles<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><!-- ============================================================ --><br \/>\n<!-- THREE WAYS                                                   --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"ways\">Trois fa\u00e7ons de d\u00e9velopper avec BJF<\/h2>\n<p>Chaque option r\u00e9pond \u00e0 un besoin diff\u00e9rent. Choisissez celle qui correspond \u00e0 l\u2019endroit o\u00f9 se trouve votre code.<\/p>\n<table class=\"dev-threecol\">\n<tbody>\n<tr>\n<td class=\"dev-col\">\n<span class=\"dev-tag\">Dans la plateforme<\/span><\/p>\n<h3>Module de programmation : API de bots en C#<\/h3>\n<p>\u00c9crivez une strat\u00e9gie sous forme de classe C#, compilez-la dans SharpTrader et ex\u00e9cutez-la sur n\u2019importe quel courtier ou exchange connect\u00e9. Ticks, positions, ordres et indicateurs sont tous accessibles en un seul appel.<\/p>\n<p><a href=\"#bot-api\">En savoir plus sur l\u2019API de bots<\/a><\/p>\n<\/td>\n<td class=\"dev-col\">\n<span class=\"dev-tag\">En dehors de la plateforme<\/span><\/p>\n<h3>API EasyFIX<\/h3>\n<p>Conservez votre propre moteur, dans n\u2019importe quel langage, et faites de SharpTrader votre passerelle : il vous transmet les cotations en continu et achemine vos ordres via ses connecteurs vers les courtiers et les exchanges.<\/p>\n<p><a href=\"#easyfix\">En savoir plus sur EasyFIX<\/a><\/p>\n<\/td>\n<td class=\"dev-col\">\n<span class=\"dev-tag\">Dans votre propre terminal<\/span><\/p>\n<h3>Biblioth\u00e8que graphique BjfChart<\/h3>\n<p>Une seule DLL qui apporte \u00e0 votre application .NET des graphiques en chandeliers professionnels, des indicateurs, des outils de dessin, un panneau de trading et un carnet d\u2019ordres, avec un flux de ticks en temps r\u00e9el.<\/p>\n<p><a href=\"#charting\">D\u00e9couvrir la biblioth\u00e8que graphique<\/a><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><!-- ============================================================ --><br \/>\n<!-- BOT API                                                      --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"bot-api\">Module de programmation : \u00e9crivez vos strat\u00e9gies en C#<\/h2>\n<p>Le module de programmation transforme SharpTrader en environnement de d\u00e9veloppement pour strat\u00e9gies automatis\u00e9es. Un bot est une classe C# qui h\u00e9rite de la classe de base <code>Bot<\/code> de la plateforme et r\u00e9agit \u00e0 des \u00e9v\u00e9nements : initialisation, chaque tick entrant, ouverture de position, fermeture de position et mises \u00e0 jour du statut des ordres. La plateforme le compile, affiche vos param\u00e8tres dans l\u2019interface et l\u2019ex\u00e9cute sur des comptes r\u00e9els ou de d\u00e9monstration, en parall\u00e8le des strat\u00e9gies int\u00e9gr\u00e9es d\u2019arbitrage, d\u2019actualit\u00e9s et d\u2019impulsion.<\/p>\n<h3>Ce que l\u2019API vous offre<\/h3>\n<table class=\"dev-tbl\">\n<thead>\n<tr>\n<th>Domaine<\/th>\n<th>Ce que vous pouvez faire<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Donn\u00e9es de march\u00e9<\/td>\n<td>Bid, ask, spread et valeur du point par symbole et par session, via l\u2019objet <code>ticker<\/code>. Une session correspond \u00e0 un compte connect\u00e9 chez un courtier ou sur un exchange ; un m\u00eame bot peut donc surveiller et trader plusieurs contreparties \u00e0 la fois gr\u00e2ce \u00e0 l\u2019index de session.<\/td>\n<\/tr>\n<tr>\n<td>Ordres et positions<\/td>\n<td><code>sendOrder<\/code> pour l\u2019ex\u00e9cution au march\u00e9, <code>modifyPositionByID<\/code> pour le stop-loss et le take-profit, <code>closePositionByID<\/code>, recherches par ID ou par commentaire, et listes en temps r\u00e9el des ordres ouverts, cl\u00f4tur\u00e9s et en attente.<\/td>\n<\/tr>\n<tr>\n<td>D\u00e9tails des positions<\/td>\n<td>Chaque position contient les prix et heures d\u2019ouverture et de cl\u00f4ture, le volume, le sens, la session, le profit, le commentaire, le stop-loss, le take-profit, ainsi que le slippage mesur\u00e9 et le temps d\u2019ex\u00e9cution pour les deux jambes. C\u2019est ce dernier point qui permet \u00e0 un bot de s\u2019adapter \u00e0 la fa\u00e7on dont un courtier vous ex\u00e9cute r\u00e9ellement.<\/td>\n<\/tr>\n<tr>\n<td>Indicateurs<\/td>\n<td>Fonctions d\u2019indicateurs int\u00e9gr\u00e9es, comme EMA et MACD, sur n\u2019importe quelle unit\u00e9 de temps, enrichies en continu au fil des mises \u00e0 jour de la plateforme.<\/td>\n<\/tr>\n<tr>\n<td>Param\u00e8tres et journalisation<\/td>\n<td>Les propri\u00e9t\u00e9s publiques marqu\u00e9es <code>[PropertyInfo]<\/code> apparaissent comme param\u00e8tres modifiables dans l\u2019interface ; <code>writeLog<\/code> \u00e9crit dans le journal de la plateforme ; <code>stopBot<\/code> arr\u00eate la strat\u00e9gie depuis le code.<\/td>\n<\/tr>\n<tr>\n<td>\u00c9tat du compte<\/td>\n<td>Solde et fonds propres (equity) par session pour les r\u00e8gles de risque et le dimensionnement des positions.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Un squelette de strat\u00e9gie minimal<\/h3>\n<pre class=\"dev-code\"><span class=\"c\">\/\/ Squelette illustratif. Les noms suivent la r\u00e9f\u00e9rence de la biblioth\u00e8que de programmation SharpTrader.<\/span>\r\nusing SharpTraderBot;\r\n\r\npublic class SpreadGuardBot : Bot\r\n{\r\n    [PropertyInfo(0.10, \"Lot size\")]\r\n    public double Lots { get; set; }\r\n\r\n    [PropertyInfo(20, \"Max spread, points\")]\r\n    public int MaxSpreadPoints { get; set; }\r\n\r\n    string _inFlight;                            <span class=\"c\">\/\/ un seul ordre en cours par tick<\/span>\r\n\r\n    public virtual void OnInit() { writeLog(\"SpreadGuardBot started\"); }\r\n\r\n    public virtual void OnTick(NewTickEventArgs args)\r\n    {\r\n        int session = 0;                         <span class=\"c\">\/\/ index de session = compte courtier<\/span>\r\n        string symbol = args.tick.symbol;\r\n\r\n        double point  = ticker.getPointValue(session, symbol);\r\n        double spread = (ticker.getAsk(session, symbol) - ticker.getBid(session, symbol)) \/ point;\r\n\r\n        if (spread &gt; MaxSpreadPoints || _inFlight != null) return;\r\n\r\n        _inFlight = sendOrder(session, symbol, Lots, OrderSide.BUY, OrderType.MARKET, 0, \"spread-guard\");\r\n    }\r\n}<\/pre>\n<div class=\"dev-note\"><strong>\u00c0 savoir avant d\u2019\u00e9crire la premi\u00e8re ligne.<\/strong> Le bac \u00e0 sable compile avec un ensemble fixe d\u2019assemblies : System, System.Collections, System.Runtime, System.Console et la biblioth\u00e8que de bots SharpTrader. LINQ n\u2019en fait pas partie : \u00e9crivez donc de simples boucles <code>foreach<\/code> au lieu de <code>Where<\/code>, <code>Select<\/code> ou <code>Any<\/code>. Les prix renvoy\u00e9s par l\u2019API sont exprim\u00e9s en points du courtier ; multipliez-les par la valeur du point avant de les comparer \u00e0 vos propres seuils. Et limitez-vous \u00e0 un seul ordre en cours par tick, prot\u00e9g\u00e9 par l\u2019ID d\u2019ordre client renvoy\u00e9, \u00e0 moins d\u2019aimer d\u00e9boguer des ex\u00e9cutions en double.<\/div>\n<p>R\u00e9f\u00e9rence compl\u00e8te des classes, m\u00e9thodes et \u00e9v\u00e9nements : <a href=\"https:\/\/sharptrader.arbitragesoftware.net\/bot\/\">documentation de la biblioth\u00e8que de programmation SharpTrader<\/a>. Le module de programmation est un module compl\u00e9mentaire de SharpTrader Pro ; consultez la <a href=\"https:\/\/bjftradinggroup.com\/product\/sharptrader-forex-crypto-arbitrage\/\">page SharpTrader Pro<\/a> pour l\u2019offre actuelle.<\/p>\n<p><!-- ============================================================ --><br \/>\n<!-- EASYFIX                                                      --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"easyfix\">API EasyFIX : connectez votre propre logiciel \u00e0 SharpTrader<\/h2>\n<p>Tout n\u2019a pas vocation \u00e0 tourner dans la plateforme. Si vous utilisez d\u00e9j\u00e0 un moteur de signaux, un gestionnaire de risque, une interface personnalis\u00e9e ou une cha\u00eene de recherche, EasyFIX lui permet de communiquer avec SharpTrader via un protocole FIX simplifi\u00e9. SharpTrader devient votre passerelle d\u2019ex\u00e9cution : il g\u00e8re les connexions aux courtiers et aux exchanges, tandis que vous envoyez des ordres et recevez cotations et ex\u00e9cutions depuis votre propre code, dans le langage de votre choix.<\/p>\n<table class=\"dev-twocol\">\n<tbody>\n<tr>\n<td class=\"dev-col\">\n<h3>Ce que transporte EasyFIX<\/h3>\n<ul>\n<li>Donn\u00e9es de march\u00e9 : cotations des symboles auxquels vous \u00eates abonn\u00e9, depuis n\u2019importe quelle session ouverte dans SharpTrader.<\/li>\n<li>Flux d\u2019ordres : nouveaux ordres, modifications et cl\u00f4tures achemin\u00e9s vers la session choisie.<\/li>\n<li>Rapports d\u2019ex\u00e9cution : ex\u00e9cutions, rejets, statut des positions et des ordres renvoy\u00e9s \u00e0 votre application.<\/li>\n<li>Acc\u00e8s aux m\u00eames plus de 50 connecteurs FIX API vers des courtiers et aux connexions aux principaux exchanges crypto que SharpTrader utilise pour ses propres strat\u00e9gies.<\/li>\n<\/ul>\n<\/td>\n<td class=\"dev-col\">\n<h3>Int\u00e9grations typiques<\/h3>\n<ul>\n<li>Une strat\u00e9gie externe \u00e9crite en Python, Java, C++ ou dans tout langage disposant d\u2019un socket et d\u2019un g\u00e9n\u00e9rateur de messages FIX.<\/li>\n<li>Une couche de risque \u00e0 l\u2019\u00e9chelle de l\u2019entreprise qui supervise plusieurs instances de SharpTrader.<\/li>\n<li>Une interface de trading ou un tableau de bord personnalis\u00e9 reposant sur l\u2019ex\u00e9cution de SharpTrader.<\/li>\n<li>L\u2019enregistrement des cotations et des ex\u00e9cutions pour la recherche, le backtest et l\u2019audit de l\u2019ex\u00e9cution des courtiers.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>EasyFIX est un dialecte FIX modifi\u00e9 : il conserve le mod\u00e8le de messages que les d\u00e9veloppeurs connaissent d\u00e9j\u00e0 tout en supprimant le formalisme dont une liaison entre un trader et une passerelle n\u2019a pas besoin. La sp\u00e9cification, des exemples de sessions et une connexion de test sont fournis sur demande aux utilisateurs de SharpTrader Pro et Lite. \u00c9crivez \u00e0 <a href=\"mailto:support@bjftradinggroup.com\">support@bjftradinggroup.com<\/a> en d\u00e9crivant bri\u00e8vement ce que vous pr\u00e9voyez de connecter.<\/p>\n<p><!-- ============================================================ --><br \/>\n<!-- CHARTING LIBRARY                                             --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"charting\">BjfChart : la biblioth\u00e8que graphique derri\u00e8re les nouveaux graphiques de SharpTrader<\/h2>\n<p>En 2026, nous avons enti\u00e8rement reconstruit les graphiques de SharpTrader, et le moteur qui les anime est disponible pour les d\u00e9veloppeurs sous forme de biblioth\u00e8que autonome. BjfChart est un contr\u00f4le de graphiques en chandeliers pour WinForms, acc\u00e9l\u00e9r\u00e9 par GPU et bas\u00e9 sur SkiaSharp. Il affiche des dizaines de milliers de barres \u00e0 60 images par seconde et est livr\u00e9 sous la forme d\u2019un unique fichier <code>BjfChart.dll<\/code> ciblant \u00e0 la fois <code>net48<\/code> et <code>net8.0-windows<\/code> ; il s\u2019int\u00e8gre ainsi aussi bien dans des terminaux .NET Framework existants que dans de nouvelles applications .NET 8.<\/p>\n<div class=\"dev-video\">\n<p class=\"dev-video-title\">Vid\u00e9o : SharpTrader Charting, nouvelle biblioth\u00e8que graphique et d\u00e9monstration du trading manuel<\/p>\n<div class=\"dev-video-embed\">\n<iframe src=\"https:\/\/www.youtube-nocookie.com\/embed\/QBjWnSRnrxs\" title=\"SharpTrader Charting : nouvelle biblioth\u00e8que graphique et d\u00e9monstration du trading manuel\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div>\n<p class=\"dev-video-caption\">Huit unit\u00e9s de temps, des indicateurs, des outils Fibonacci et de tendance, un ticket d\u2019ordre avec lignes de stop-loss et de take-profit d\u00e9pla\u00e7ables, et des graphiques multi-courtiers, pr\u00e9sent\u00e9s en direct dans SharpTrader. <a href=\"https:\/\/youtu.be\/QBjWnSRnrxs\">Ouvrir sur YouTube<\/a><\/p>\n<\/div>\n<h3>Contenu de la biblioth\u00e8que<\/h3>\n<table class=\"dev-twocol\">\n<tbody>\n<tr>\n<td class=\"dev-col\">\n<h3>Moteur graphique<\/h3>\n<ul>\n<li>Rendu en chandeliers avec sous-panneau de volume, r\u00e9ticule, \u00e9tiquette de prix en temps r\u00e9el et l\u00e9gende OHLC flottante.<\/li>\n<li>Zoom \u00e0 la molette qui garde fixe la barre sous le curseur, d\u00e9placement par cliquer-glisser.<\/li>\n<li>Flux en temps r\u00e9el : <code>PushTick<\/code> int\u00e8gre un tick dans la derni\u00e8re barre, <code>FeedTick<\/code> regroupe automatiquement les ticks en chandeliers de n\u2019importe quel intervalle.<\/li>\n<li>Superpositions multi-symboles pour la comparaison, avec \u00e9chelle ind\u00e9pendante ou partag\u00e9e.<\/li>\n<li>Sauvegarde de la disposition en JSON : indicateurs, dessins, superpositions et zone d\u2019affichage sont enregistr\u00e9s et restaur\u00e9s.<\/li>\n<li>Th\u00e8mes sombre (bleu marine et or BJF) et clair, commutables \u00e0 la vol\u00e9e, chaque couleur \u00e9tant modifiable.<\/li>\n<li>Filigrane derri\u00e8re les chandeliers \u00e0 partir d\u2019un fichier logo, d\u2019une URL ou d\u2019un texte.<\/li>\n<\/ul>\n<\/td>\n<td class=\"dev-col\">\n<h3>Couche de trading<\/h3>\n<ul>\n<li><code>TradingPanel<\/code> : un ticket d\u2019ordre (achat et vente au march\u00e9, \u00e0 cours limit\u00e9 ou stop, quantit\u00e9, prix, stop-loss, take-profit) avec affichage en temps r\u00e9el de la position et du P\/L.<\/li>\n<li>Lignes d\u2019entr\u00e9e, de stop-loss, de take-profit et d\u2019ordres en attente trac\u00e9es automatiquement sur le graphique ; le stop-loss et le take-profit sont d\u00e9pla\u00e7ables et d\u00e9clenchent des \u00e9v\u00e9nements au rel\u00e2chement.<\/li>\n<li>Le panneau n\u2019ex\u00e9cute rien lui-m\u00eame. Il d\u00e9clenche des \u00e9v\u00e9nements destin\u00e9s \u00e0 votre couche d\u2019ex\u00e9cution, qu\u2019il s\u2019agisse d\u2019une session FIX API, d\u2019un bridge de courtier ou de SharpTrader via EasyFIX.<\/li>\n<li><code>OrderBookPanel<\/code> : une \u00e9chelle de profondeur de march\u00e9 avec la taille par niveau et des barres de profondeur proportionnelles ; cliquez sur un niveau pour pr\u00e9remplir un prix limite.<\/li>\n<li>Lignes de prix arbitraires par ID pour les ordres du courtier, avec d\u00e9placement optionnel.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Indicateurs et outils de dessin<\/h3>\n<table class=\"dev-tbl\">\n<thead>\n<tr>\n<th>Groupe<\/th>\n<th>Inclus<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Indicateurs superpos\u00e9s<\/td>\n<td>SMA, EMA, WMA, VWAP, bandes de Bollinger, canaux de Keltner, canaux de Donchian, Envelope, Parabolic SAR.<\/td>\n<\/tr>\n<tr>\n<td>Indicateurs en sous-panneau<\/td>\n<td>RSI, MACD avec histogramme, Stochastique, ATR, CCI, ADX \/ DMI, Momentum, Rate of Change, Williams %R, Awesome Oscillator, \u00e9cart-type, On-Balance Volume, Money Flow Index.<\/td>\n<\/tr>\n<tr>\n<td>Pr\u00e9cision<\/td>\n<td>Les calculs des indicateurs sont v\u00e9rifi\u00e9s par rapport \u00e0 des impl\u00e9mentations de r\u00e9f\u00e9rence ind\u00e9pendantes : SMA, EMA, Bollinger, RSI, ATR, Stochastique et CCI concordent \u00e0 1e-9 pr\u00e8s ; MACD, ADX, DI, Williams %R, MFI et OBV sont valid\u00e9s quant \u00e0 leur exactitude et \u00e0 leur plage de valeurs.<\/td>\n<\/tr>\n<tr>\n<td>Outils de dessin<\/td>\n<td>Ligne de tendance, demi-droite, ligne prolong\u00e9e, ligne et demi-droite horizontales, ligne verticale, fl\u00e8che, canal parall\u00e8le, rectangle, ellipse, retracement de Fibonacci, extension de Fibonacci, et un outil de mesure affichant l\u2019\u00e9cart de prix, la variation en pourcentage et le nombre de barres. Tous sont ancr\u00e9s dans l\u2019espace des donn\u00e9es et restent donc fix\u00e9s lors du zoom et du d\u00e9placement.<\/td>\n<\/tr>\n<tr>\n<td>Extensibilit\u00e9<\/td>\n<td>Impl\u00e9mentez <code>IIndicator<\/code> (ou d\u00e9rivez de <code>IndicatorBase<\/code>), renvoyez une ou plusieurs s\u00e9ries align\u00e9es sur la liste des chandeliers, choisissez superposition ou sous-panneau, ligne, histogramme ou points, puis enregistrez l\u2019indicateur pour qu\u2019il apparaisse dans le menu contextuel et dans les dispositions sauvegard\u00e9es.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Dix lignes pour un graphique op\u00e9rationnel<\/h3>\n<pre class=\"dev-code\">using BjfChart;\r\nusing BjfChart.Indicators;\r\nusing BjfChart.Models;\r\n\r\nvar chart = new ChartControl { Dock = DockStyle.Fill };\r\nform.Controls.Add(chart);\r\n\r\nchart.SetData(myCandles);                          <span class=\"c\">\/\/ IEnumerable&lt;Candle&gt;<\/span>\r\nchart.AddIndicator(\"ema\");\r\nchart.AddIndicator(\"bb\");\r\nchart.AddIndicator(\"macd\");                        <span class=\"c\">\/\/ s\u2019affiche dans son propre sous-panneau<\/span>\r\nchart.AddIndicator(new RsiIndicator(21));          <span class=\"c\">\/\/ ou par type, avec des param\u00e8tres personnalis\u00e9s<\/span>\r\n\r\nchart.CandleInterval = TimeSpan.FromMinutes(15);   <span class=\"c\">\/\/ active le regroupement automatique<\/span>\r\nchart.FeedTick(DateTime.UtcNow, price, volume);    <span class=\"c\">\/\/ cr\u00e9e un nouveau chandelier \u00e0 chaque limite<\/span>\r\n\r\nchart.StartDrawing(DrawingKind.FibRetracement);    <span class=\"c\">\/\/ le prochain glisser trace un retracement de Fibonacci<\/span>\r\nchart.SaveLayout(@\"C:\\layouts\\eurusd.json\");\r\n\r\n<span class=\"g\">\/\/ Panneau de trading reli\u00e9 \u00e0 votre couche d\u2019ex\u00e9cution<\/span>\r\nvar panel = new TradingPanel { Dock = DockStyle.Right, Symbol = \"EURUSD\" };\r\npanel.AttachChart(chart);                          <span class=\"c\">\/\/ trace les lignes d\u2019entr\u00e9e \/ SL \/ TP sur le graphique<\/span>\r\npanel.OrderSubmitted += (s, req) =&gt; myExecutionEngine.Send(req);\r\npanel.PositionModified += (s, pos) =&gt; broker.Modify(pos);   <span class=\"c\">\/\/ apr\u00e8s d\u00e9placement du SL ou du TP<\/span><\/pre>\n<p>Tout ce qui est accessible dans le code l\u2019est aussi depuis le menu contextuel du graphique : ajouter ou supprimer des indicateurs, choisir un outil de dessin, g\u00e9rer les superpositions, changer de th\u00e8me, enregistrer ou charger une disposition. La compilation de la biblioth\u00e8que n\u00e9cessite Windows et le SDK .NET 8.0 ou sup\u00e9rieur ; NuGet restaure SkiaSharp automatiquement. Une application de d\u00e9monstration ex\u00e9cutable avec des ticks simul\u00e9s en temps r\u00e9el est incluse.<\/p>\n<div class=\"dev-note\"><strong>Utiliser BjfChart dans votre produit.<\/strong> La biblioth\u00e8que est conc\u00e9d\u00e9e sous licence aux d\u00e9veloppeurs SharpTrader, aux partenaires en marque blanche et aux \u00e9diteurs de terminaux tiers. Pour toute question d\u2019utilisation, les conditions de licence, une version de d\u00e9monstration ou de l\u2019aide pour l\u2019int\u00e9grer \u00e0 votre flux de donn\u00e9es, contactez-nous directement aux coordonn\u00e9es ci-dessous. Indiquez-nous la cible .NET que vous utilisez et la nature de votre source de donn\u00e9es, et nous vous r\u00e9pondrons sous un jour ouvrable.<\/div>\n<p><!-- ============================================================ --><br \/>\n<!-- CONTACT                                                      --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"contact\">Contacts d\u00e9veloppeurs<\/h2>\n<p>Toutes les questions des d\u00e9veloppeurs sont trait\u00e9es par l\u2019\u00e9quipe qui con\u00e7oit la plateforme. Pour les questions sur l\u2019API de bots et EasyFIX, indiquez votre version de SharpTrader et votre type de compte ; pour BjfChart, indiquez votre cible .NET et votre flux de donn\u00e9es.<\/p>\n<table class=\"dev-contact\">\n<tbody>\n<tr>\n<td><span class=\"k\">E-mail<\/span><span class=\"v\"><a href=\"mailto:support@bjftradinggroup.com\">support@bjftradinggroup.com<\/a><\/span><span class=\"s\">Id\u00e9al pour les exemples de code, les sp\u00e9cifications et les licences<\/span><\/td>\n<td><span class=\"k\">T\u00e9l\u00e9phone<\/span><span class=\"v\"><a href=\"tel:+19055995507\">+1 (905) 599-5507<\/a><\/span><span class=\"s\">Du lundi au vendredi, de 9 h 00 \u00e0 18 h 00, heure de l\u2019Est (Toronto)<\/span><\/td>\n<td><span class=\"k\">Telegram<\/span><span class=\"v\"><a href=\"https:\/\/t.me\/bjftradinggroup\">t.me\/bjftradinggroup<\/a><\/span><span class=\"s\">Questions rapides et suivis<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>BJF Trading Group Inc., 3397 Mistwell Crescent, Oakville, ON, L6L 0A2, Canada. Demandes g\u00e9n\u00e9rales : <a href=\"https:\/\/bjftradinggroup.com\/contacts\/\">page de contact<\/a>.<\/p>\n<p><!-- ============================================================ --><br \/>\n<!-- FAQ                                                          --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"faq\">Questions fr\u00e9quentes<\/h2>\n<div class=\"dev-faq\">\n<details>\n<summary>Quel langage utilisent les bots SharpTrader ?<\/summary>\n<div class=\"a\">Le C#. Un bot est une classe qui h\u00e9rite de la classe de base Bot de la plateforme et impl\u00e9mente des gestionnaires d\u2019\u00e9v\u00e9nements pour l\u2019initialisation, les ticks, les changements de position et les mises \u00e0 jour du statut des ordres. Il est compil\u00e9 dans SharpTrader et s\u2019ex\u00e9cute en parall\u00e8le des strat\u00e9gies int\u00e9gr\u00e9es.<\/div>\n<\/details>\n<details>\n<summary>Un m\u00eame bot peut-il trader chez plusieurs courtiers ou sur plusieurs exchanges en m\u00eame temps ?<\/summary>\n<div class=\"a\">Oui. Chaque appel de donn\u00e9es de march\u00e9 et d\u2019ordre prend un index de session, une session correspondant \u00e0 un compte connect\u00e9 chez un courtier ou sur un exchange. Un bot peut lire les cotations d\u2019une session et envoyer des ordres vers une autre : c\u2019est ainsi que s\u2019\u00e9crit la logique multi-courtiers et inter-exchanges.<\/div>\n<\/details>\n<details>\n<summary>Qu\u2019est-ce que l\u2019API EasyFIX et \u00e0 qui s\u2019adresse-t-elle ?<\/summary>\n<div class=\"a\">EasyFIX est un protocole FIX simplifi\u00e9 qui permet \u00e0 un logiciel externe de se connecter \u00e0 SharpTrader en l\u2019utilisant comme passerelle d\u2019ex\u00e9cution. Elle s\u2019adresse aux d\u00e9veloppeurs qui conservent leur propre moteur en dehors de la plateforme et souhaitent recevoir des cotations et envoyer des ordres via les connecteurs de SharpTrader vers les courtiers et les exchanges. La sp\u00e9cification et une connexion de test sont fournies sur demande.<\/div>\n<\/details>\n<details>\n<summary>BjfChart est-il disponible s\u00e9par\u00e9ment de SharpTrader ?<\/summary>\n<div class=\"a\">Oui. BjfChart est une biblioth\u00e8que .NET autonome, une seule DLL ciblant net48 et net8.0-windows, bas\u00e9e sur SkiaSharp. Elle est conc\u00e9d\u00e9e sous licence aux d\u00e9veloppeurs SharpTrader, aux partenaires en marque blanche et aux \u00e9diteurs de terminaux. Contactez support@bjftradinggroup.com pour conna\u00eetre les conditions et obtenir une version de d\u00e9monstration.<\/div>\n<\/details>\n<details>\n<summary>Le panneau de trading de BjfChart ex\u00e9cute-t-il des ordres ?<\/summary>\n<div class=\"a\">Non. Le panneau d\u00e9clenche des \u00e9v\u00e9nements (ordre soumis, demande de cl\u00f4ture de position, position modifi\u00e9e apr\u00e8s d\u00e9placement du stop-loss ou du take-profit) et l\u2019application h\u00f4te les achemine vers sa propre couche d\u2019ex\u00e9cution, comme une session FIX API, un bridge de courtier ou SharpTrader via EasyFIX.<\/div>\n<\/details>\n<details>\n<summary>Puis-je ajouter mes propres indicateurs \u00e0 BjfChart ?<\/summary>\n<div class=\"a\">Oui. Impl\u00e9mentez l\u2019interface IIndicator ou d\u00e9rivez de IndicatorBase, renvoyez une ou plusieurs s\u00e9ries align\u00e9es sur la liste des chandeliers, choisissez un rendu en superposition ou en sous-panneau, puis enregistrez l\u2019indicateur pour qu\u2019il apparaisse dans le menu contextuel et soit sauvegard\u00e9 dans les dispositions.<\/div>\n<\/details>\n<details>\n<summary>Le code source de SharpTrader ou de BjfChart est-il \u00e0 vendre ?<\/summary>\n<div class=\"a\">Non. BJF Trading Group conc\u00e8de des licences sur des versions compil\u00e9es et fournit l\u2019acc\u00e8s \u00e0 l\u2019API, la documentation et le support. Le code source n\u2019est ni vendu ni divulgu\u00e9, quel que soit le programme.<\/div>\n<\/details>\n<\/div>\n<p><!-- ============================================================ --><br \/>\n<!-- Newsletter signup                                            --><br \/>\n<!-- ============================================================ --><\/p>\n<div class=\"dev-signup\">\n<h3>Abonnez-vous aux recherches de trading de BJF<\/h3>\n<p>Nouveaux articles, \u00e9tudes et nouvelles versions de produits, envoy\u00e9s d\u00e8s leur publication.<\/p>\n<div class='_form_31'><\/div><script type='text\/javascript' src='https:\/\/bjftradinggroup.activehosted.com\/f\/embed.php?static=0&id=31&6AD424DC9383D&nostyles=0&preview=0'><\/script><\/div>\n<p><!-- ============================================================ --><br \/>\n<!-- FINAL CTA                                                    --><br \/>\n<!-- ============================================================ --><\/p>\n<div class=\"dev-cta\">\n<h2>Dites-nous ce que vous d\u00e9veloppez<\/h2>\n<p>Un bot pour une particularit\u00e9 d\u2019un courtier, un moteur externe qui a besoin d\u2019une passerelle d\u2019ex\u00e9cution, ou un terminal qui doit avoir ses graphiques d\u2019ici vendredi. Un e-mail avec les d\u00e9tails, une r\u00e9ponse avec l\u2019\u00e9tape suivante.<\/p>\n<p><a class=\"dev-btn\" href=\"mailto:support@bjftradinggroup.com\">\u00c9crire \u00e0 l\u2019\u00e9quipe de d\u00e9veloppement<\/a> <a class=\"dev-btn-ghost\" href=\"https:\/\/t.me\/bjftradinggroup\">Nous \u00e9crire sur Telegram<\/a><\/p>\n<\/div>\n<p class=\"dev-disc\">BJF Trading Group Inc. d\u00e9veloppe des outils logiciels pour les traders et d\u00e9veloppeurs exp\u00e9riment\u00e9s. Nous ne sommes ni un courtier, ni une institution financi\u00e8re, ni un conseiller en investissement, et nous n\u2019ex\u00e9cutons pas de transactions et ne g\u00e9rons pas de fonds. Les exemples de code de cette page sont illustratifs et peuvent diff\u00e9rer de la r\u00e9f\u00e9rence actuelle de la biblioth\u00e8que ; consultez toujours la documentation correspondant \u00e0 la version de votre plateforme. Le trading sur le Forex, les CFD et les cryptomonnaies comporte un risque \u00e9lev\u00e9 de perte et ne convient pas \u00e0 tous les investisseurs. Rien sur cette page ne constitue un conseil financier ni une promesse de profit.<\/p>\n<\/div>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Quel langage utilisent les bots SharpTrader ?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Le C#. Un bot est une classe qui h\u00e9rite de la classe de base Bot de la plateforme et impl\u00e9mente des gestionnaires d\u2019\u00e9v\u00e9nements pour l\u2019initialisation, les ticks, les changements de position et les mises \u00e0 jour du statut des ordres. Il est compil\u00e9 dans SharpTrader et s\u2019ex\u00e9cute en parall\u00e8le des strat\u00e9gies int\u00e9gr\u00e9es.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Un m\u00eame bot SharpTrader peut-il trader chez plusieurs courtiers ou sur plusieurs exchanges en m\u00eame temps ?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Oui. Chaque appel de donn\u00e9es de march\u00e9 et d\u2019ordre prend un index de session, une session correspondant \u00e0 un compte connect\u00e9 chez un courtier ou sur un exchange. Un bot peut lire les cotations d\u2019une session et envoyer des ordres vers une autre.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Qu\u2019est-ce que l\u2019API EasyFIX et \u00e0 qui s\u2019adresse-t-elle ?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"EasyFIX est un protocole FIX simplifi\u00e9 qui permet \u00e0 un logiciel externe de se connecter \u00e0 SharpTrader en l\u2019utilisant comme passerelle d\u2019ex\u00e9cution, pour recevoir des cotations et envoyer des ordres via les connecteurs de SharpTrader vers les courtiers et les exchanges. La sp\u00e9cification et une connexion de test sont fournies sur demande.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"BjfChart est-il disponible s\u00e9par\u00e9ment de SharpTrader ?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Oui. BjfChart est une biblioth\u00e8que graphique .NET autonome, une seule DLL ciblant net48 et net8.0-windows, bas\u00e9e sur SkiaSharp. Elle est conc\u00e9d\u00e9e sous licence aux d\u00e9veloppeurs SharpTrader, aux partenaires en marque blanche et aux \u00e9diteurs de terminaux ; contactez support@bjftradinggroup.com pour conna\u00eetre les conditions et obtenir une version de d\u00e9monstration.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Le panneau de trading de BjfChart ex\u00e9cute-t-il des ordres ?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Non. Le panneau d\u00e9clenche des \u00e9v\u00e9nements pour la soumission d\u2019ordres, la cl\u00f4ture et la modification de positions, et l\u2019application h\u00f4te les achemine vers sa propre couche d\u2019ex\u00e9cution, comme une session FIX API, un bridge de courtier ou SharpTrader via EasyFIX.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Puis-je ajouter mes propres indicateurs \u00e0 BjfChart ?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Oui. Impl\u00e9mentez l\u2019interface IIndicator ou d\u00e9rivez de IndicatorBase, renvoyez des s\u00e9ries align\u00e9es sur la liste des chandeliers, choisissez un rendu en superposition ou en sous-panneau, puis enregistrez l\u2019indicateur pour qu\u2019il apparaisse dans le menu et dans les dispositions sauvegard\u00e9es.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Le code source de SharpTrader ou de BjfChart est-il \u00e0 vendre ?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Non. BJF Trading Group conc\u00e8de des licences sur des versions compil\u00e9es et fournit l\u2019acc\u00e8s \u00e0 l\u2019API, la documentation et le support. Le code source n\u2019est ni vendu ni divulgu\u00e9, quel que soit le programme.\"\n      }\n    }\n  ],\n  \"speakable\": {\n    \"@type\": \"SpeakableSpecification\",\n    \"cssSelector\": [\n      \".dev-hero h1\",\n      \".dev-tbl\"\n    ]\n  }\n}\n<\/script><br \/>\n<\/p>","protected":false},"excerpt":{"rendered":"<p>Pour les d\u00e9veloppeurs &middot; plateforme SharpTrader D\u00e9veloppez sur SharpTrader : API de bots en C#, connectivit\u00e9 EasyFIX et biblioth\u00e8que graphique BjfChart SharpTrader est une plateforme de trading con\u00e7ue pour les traders, pas pour les courtiers, et elle est ouverte \u00e0 ceux qui \u00e9crivent du code pour eux. \u00c9crivez vos propres strat\u00e9gies en C# directement dans la plateforme, connectez vos logiciels externes \u00e0 son moteur d\u2019ex\u00e9cution via l\u2019API EasyFIX, ou int\u00e9grez notre biblioth\u00e8que de graphiques en&hellip;<\/p>\n","protected":false},"author":1,"featured_media":8077,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-ai-custom.php","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-8075","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.7 (Yoast SEO v28.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>SharpTrader pour d\u00e9veloppeurs : API de bots C# et BjfChart<\/title>\n<meta name=\"description\" content=\"Cr\u00e9ez des bots de trading en C#, connectez votre logiciel via l\u2019API EasyFIX et int\u00e9grez la biblioth\u00e8que BjfChart (22 indicateurs) dans votre terminal .NET.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/bjftradinggroup.com\/fr\/developers\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SharpTrader pour d\u00e9veloppeurs : API de bots C# et BjfChart\" \/>\n<meta property=\"og:description\" content=\"Cr\u00e9ez des bots de trading en C#, connectez votre logiciel via l\u2019API EasyFIX et int\u00e9grez la biblioth\u00e8que BjfChart (22 indicateurs) dans votre terminal .NET.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bjftradinggroup.com\/fr\/developers\/\" \/>\n<meta property=\"og:site_name\" content=\"Forex &amp; Cryptocurrencies Arbitrage Software | BJF Trading Group Inc.\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-17T22:35:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bjftradinggroup.com\/wp-content\/uploads\/2024\/08\/developer.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/\",\"url\":\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/\",\"name\":\"SharpTrader pour d\u00e9veloppeurs : API de bots C# et BjfChart\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bjftradinggroup.com\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/developer.jpg\",\"datePublished\":\"2024-08-28T17:20:14+00:00\",\"dateModified\":\"2026-10-17T22:35:52+00:00\",\"description\":\"Cr\u00e9ez des bots de trading en C#, connectez votre logiciel via l\u2019API EasyFIX et int\u00e9grez la biblioth\u00e8que BjfChart (22 indicateurs) dans votre terminal .NET.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bjftradinggroup.com\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/developer.jpg\",\"contentUrl\":\"https:\\\/\\\/bjftradinggroup.com\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/developer.jpg\",\"width\":1024,\"height\":1024,\"caption\":\"for developers\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bjftradinggroup.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"For Developers\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/#website\",\"url\":\"https:\\\/\\\/bjftradinggroup.com\\\/\",\"name\":\"Forex &amp; Cryptocurrencies Arbitrage Software | BJF Trading Group Inc.\",\"description\":\"FX Software pioneer since 2000\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/bjftradinggroup.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/#organization\",\"name\":\"BJF Trading Group Inc.\",\"legalName\":\"BJF Trading Group Inc.\",\"url\":\"https:\\\/\\\/bjftradinggroup.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/bjftradinggroup.com\\\/wp-content\\\/uploads\\\/logo.png\",\"width\":512,\"height\":512},\"foundingDate\":\"2000\",\"founder\":{\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/about-boris-fesenko\\\/#person\"},\"address\":{\"@type\":\"PostalAddress\",\"addressRegion\":\"Ontario\",\"addressCountry\":\"CA\"},\"contactPoint\":[{\"@type\":\"ContactPoint\",\"contactType\":\"customer support\",\"email\":\"support@bjftradinggroup.com\",\"availableLanguage\":[\"English\",\"German\",\"Japanese\",\"Korean\",\"Spanish\",\"Portuguese\",\"Arabic\",\"Indonesian\",\"Vietnamese\"]}],\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/bjftradinggroup\",\"https:\\\/\\\/twitter.com\\\/BjfGroup\",\"https:\\\/\\\/www.youtube.com\\\/@bjftradinggroup\",\"https:\\\/\\\/t.me\\\/bjftradinggroup\",\"https:\\\/\\\/instagram.com\\\/bjftradinggroup\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/bjf-trading-group\\\/\"],\"knowsAbout\":[\"Forex arbitrage\",\"Cryptocurrency arbitrage\",\"Latency arbitrage\",\"News trading\",\"FIX API trading\",\"High-frequency trading\",\"Lock arbitrage\",\"Hedge arbitrage\",\"Pair trading\",\"Algorithmic trading software\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"SharpTrader pour d\u00e9veloppeurs : API de bots C# et BjfChart","description":"Cr\u00e9ez des bots de trading en C#, connectez votre logiciel via l\u2019API EasyFIX et int\u00e9grez la biblioth\u00e8que BjfChart (22 indicateurs) dans votre terminal .NET.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/bjftradinggroup.com\/fr\/developers\/","og_locale":"fr_FR","og_type":"article","og_title":"SharpTrader pour d\u00e9veloppeurs : API de bots C# et BjfChart","og_description":"Cr\u00e9ez des bots de trading en C#, connectez votre logiciel via l\u2019API EasyFIX et int\u00e9grez la biblioth\u00e8que BjfChart (22 indicateurs) dans votre terminal .NET.","og_url":"https:\/\/bjftradinggroup.com\/fr\/developers\/","og_site_name":"Forex &amp; Cryptocurrencies Arbitrage Software | BJF Trading Group Inc.","article_modified_time":"2026-10-17T22:35:52+00:00","og_image":[{"width":1024,"height":1024,"url":"https:\/\/bjftradinggroup.com\/wp-content\/uploads\/2024\/08\/developer.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/bjftradinggroup.com\/developers\/","url":"https:\/\/bjftradinggroup.com\/developers\/","name":"SharpTrader pour d\u00e9veloppeurs : API de bots C# et BjfChart","isPartOf":{"@id":"https:\/\/bjftradinggroup.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bjftradinggroup.com\/developers\/#primaryimage"},"image":{"@id":"https:\/\/bjftradinggroup.com\/developers\/#primaryimage"},"thumbnailUrl":"https:\/\/bjftradinggroup.com\/wp-content\/uploads\/2024\/08\/developer.jpg","datePublished":"2024-08-28T17:20:14+00:00","dateModified":"2026-10-17T22:35:52+00:00","description":"Cr\u00e9ez des bots de trading en C#, connectez votre logiciel via l\u2019API EasyFIX et int\u00e9grez la biblioth\u00e8que BjfChart (22 indicateurs) dans votre terminal .NET.","breadcrumb":{"@id":"https:\/\/bjftradinggroup.com\/developers\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bjftradinggroup.com\/developers\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/bjftradinggroup.com\/developers\/#primaryimage","url":"https:\/\/bjftradinggroup.com\/wp-content\/uploads\/2024\/08\/developer.jpg","contentUrl":"https:\/\/bjftradinggroup.com\/wp-content\/uploads\/2024\/08\/developer.jpg","width":1024,"height":1024,"caption":"for developers"},{"@type":"BreadcrumbList","@id":"https:\/\/bjftradinggroup.com\/developers\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bjftradinggroup.com\/"},{"@type":"ListItem","position":2,"name":"For Developers"}]},{"@type":"WebSite","@id":"https:\/\/bjftradinggroup.com\/#website","url":"https:\/\/bjftradinggroup.com\/","name":"Forex &amp; Cryptocurrencies Arbitrage Software | BJF Trading Group Inc.","description":"FX Software pioneer since 2000","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/bjftradinggroup.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/bjftradinggroup.com\/#organization","name":"BJF Trading Group Inc.","legalName":"BJF Trading Group Inc.","url":"https:\/\/bjftradinggroup.com\/","logo":{"@type":"ImageObject","url":"https:\/\/bjftradinggroup.com\/wp-content\/uploads\/logo.png","width":512,"height":512},"foundingDate":"2000","founder":{"@id":"https:\/\/bjftradinggroup.com\/about-boris-fesenko\/#person"},"address":{"@type":"PostalAddress","addressRegion":"Ontario","addressCountry":"CA"},"contactPoint":[{"@type":"ContactPoint","contactType":"customer support","email":"support@bjftradinggroup.com","availableLanguage":["English","German","Japanese","Korean","Spanish","Portuguese","Arabic","Indonesian","Vietnamese"]}],"sameAs":["https:\/\/www.facebook.com\/bjftradinggroup","https:\/\/twitter.com\/BjfGroup","https:\/\/www.youtube.com\/@bjftradinggroup","https:\/\/t.me\/bjftradinggroup","https:\/\/instagram.com\/bjftradinggroup","https:\/\/www.linkedin.com\/company\/bjf-trading-group\/"],"knowsAbout":["Forex arbitrage","Cryptocurrency arbitrage","Latency arbitrage","News trading","FIX API trading","High-frequency trading","Lock arbitrage","Hedge arbitrage","Pair trading","Algorithmic trading software"]}]}},"_links":{"self":[{"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/pages\/8075","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/comments?post=8075"}],"version-history":[{"count":16,"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/pages\/8075\/revisions"}],"predecessor-version":[{"id":15178,"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/pages\/8075\/revisions\/15178"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/media\/8077"}],"wp:attachment":[{"href":"https:\/\/bjftradinggroup.com\/fr\/wp-json\/wp\/v2\/media?parent=8075"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}