{"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-09-25T15:46:18","modified_gmt":"2026-09-25T15:46:18","slug":"developers","status":"publish","type":"page","link":"https:\/\/bjftradinggroup.com\/ar\/developers\/","title":{"rendered":"\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646"},"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\">\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646 &middot; \u0645\u0646\u0635\u0629 SharpTrader<\/span><\/p>\n<h1>\u0627\u0628\u0646\u0650 \u0639\u0644\u0649 SharpTrader: <span class=\"dev-gold\">\u0648\u0627\u062c\u0647\u0629 C# \u0644\u0644\u0631\u0648\u0628\u0648\u062a\u0627\u062a\u060c \u0648\u0627\u062a\u0635\u0627\u0644 EasyFIX\u060c \u0648\u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart<\/span><\/h1>\n<p>SharpTrader \u0645\u0646\u0635\u0629 \u062a\u062f\u0627\u0648\u0644 \u0645\u0628\u0646\u064a\u0629 \u0644\u0644\u0645\u062a\u062f\u0627\u0648\u0644\u064a\u0646 \u0644\u0627 \u0644\u0644\u0648\u0633\u0637\u0627\u0621\u060c \u0648\u0647\u064a \u0645\u0641\u062a\u0648\u062d\u0629 \u0644\u0645\u0646 \u064a\u0643\u062a\u0628\u0648\u0646 \u0627\u0644\u0634\u064a\u0641\u0631\u0629 \u0627\u0644\u0628\u0631\u0645\u062c\u064a\u0629 \u0644\u0647\u0645. \u0627\u0643\u062a\u0628 \u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a\u0643 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0644\u063a\u0629 C# \u062f\u0627\u062e\u0644 \u0627\u0644\u0645\u0646\u0635\u0629\u060c \u0623\u0648 \u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0627\u0644\u062e\u0627\u0631\u062c\u064a\u0629 \u0628\u0645\u062d\u0631\u0651\u0643 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0641\u064a\u0647\u0627 \u0639\u0628\u0631 EasyFIX API\u060c \u0623\u0648 \u0623\u0636\u0641 \u0645\u0643\u062a\u0628\u062a\u0646\u0627 \u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0634\u0645\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 \u0627\u0644\u0645\u0633\u0631\u064e\u0651\u0639\u0629 \u0628\u0645\u0639\u0627\u0644\u062c \u0627\u0644\u0631\u0633\u0648\u0645\u064a\u0627\u062a (GPU) \u0625\u0644\u0649 \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u062e\u0627\u0635\u0629 \u0627\u0644\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 .NET.<\/p>\n<div class=\"dev-chips\">\n<span class=\"dev-chip\">\u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a C# \u0645\u0639 \u0623\u0633\u0639\u0627\u0631 \u0644\u062d\u0638\u064a\u0629 \u0648\u062c\u0644\u0633\u0627\u062a \u0645\u062a\u0639\u062f\u062f\u0629 \u0627\u0644\u0648\u0633\u0637\u0627\u0621<\/span><br \/>\n<span class=\"dev-chip\">EasyFIX API: \u0623\u0643\u062b\u0631 \u0645\u0646 50 \u0645\u0648\u0635\u0650\u0651\u0644 FIX \u0648\u0645\u0646\u0635\u0627\u062a \u0639\u0645\u0644\u0627\u062a \u0645\u0634\u0641\u0631\u0629<\/span><br \/>\n<span class=\"dev-chip\">BjfChart DLL: 22 \u0645\u0624\u0634\u0631\u064b\u0627\u060c \u0623\u062f\u0648\u0627\u062a \u0631\u0633\u0645\u060c \u0646\u0627\u0641\u0630\u0629 \u0623\u0648\u0627\u0645\u0631<\/span><br \/>\n<span class=\"dev-chip\">.NET Framework 4.8 \u0648.NET 8<\/span>\n<\/div>\n<p style=\"margin-top:18px !important\"><a class=\"dev-btn\" href=\"#charting\">\u0634\u0627\u0647\u062f \u0627\u0644\u062c\u0648\u0644\u0629 \u0627\u0644\u062a\u0639\u0631\u064a\u0641\u064a\u0629 \u0644\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629<\/a> <a class=\"dev-btn-ghost\" href=\"#contact\">\u062c\u0647\u0627\u062a \u0627\u062a\u0635\u0627\u0644 \u0627\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646<\/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>\u0644\u063a\u0629 \u0627\u0644\u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a \u0627\u0644\u0623\u0635\u0644\u064a\u0629\u060c \u062a\u064f\u062a\u0631\u062c\u064e\u0645 \u062f\u0627\u062e\u0644 SharpTrader<\/span><\/td>\n<td><strong>50+<\/strong><span>\u0645\u0648\u0635\u0650\u0651\u0644 FIX API \u0644\u0644\u0648\u0633\u0637\u0627\u0621\u060c \u0625\u0636\u0627\u0641\u0629\u064b \u0625\u0644\u0649 \u0643\u0628\u0631\u0649 \u0645\u0646\u0635\u0627\u062a \u0627\u0644\u0639\u0645\u0644\u0627\u062a \u0627\u0644\u0645\u0634\u0641\u0631\u0629<\/span><\/td>\n<td><strong>22<\/strong><span>\u0645\u0624\u0634\u0631\u064b\u0627 \u0641\u064a BjfChart\u060c \u0645\u064f\u062a\u062d\u0642\u064e\u0651\u0642\u064b\u0627 \u0645\u0646\u0647\u0627 \u0645\u0642\u0627\u0628\u0644 \u062d\u0633\u0627\u0628\u0627\u062a \u0645\u0631\u062c\u0639\u064a\u0629<\/span><\/td>\n<td><strong>2<\/strong><span>\u0647\u062f\u0641\u0627 \u0628\u0646\u0627\u0621 \u0641\u064a DLL \u0648\u0627\u062d\u062f: net48 \u0644\u0644\u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0627\u0644\u0642\u062f\u064a\u0645\u0629\u060c \u0648net8.0-windows \u0644\u0644\u062c\u062f\u064a\u062f\u0629<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><!-- ============================================================ --><br \/>\n<!-- THREE WAYS                                                   --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"ways\">\u062b\u0644\u0627\u062b \u0637\u0631\u0642 \u0644\u0644\u0628\u0646\u0627\u0621 \u0645\u0639 BJF<\/h2>\n<p>\u0643\u0644 \u062e\u064a\u0627\u0631 \u064a\u062d\u0644 \u0645\u0634\u0643\u0644\u0629 \u0645\u062e\u062a\u0644\u0641\u0629. \u0627\u062e\u062a\u0631 \u0645\u0627 \u064a\u0646\u0627\u0633\u0628 \u0627\u0644\u0645\u0643\u0627\u0646 \u0627\u0644\u0630\u064a \u062a\u0639\u0645\u0644 \u0641\u064a\u0647 \u0634\u064a\u0641\u0631\u062a\u0643.<\/p>\n<table class=\"dev-threecol\">\n<tbody>\n<tr>\n<td class=\"dev-col\">\n<span class=\"dev-tag\">\u062f\u0627\u062e\u0644 \u0627\u0644\u0645\u0646\u0635\u0629<\/span><\/p>\n<h3>\u0648\u062d\u062f\u0629 \u0627\u0644\u0628\u0631\u0645\u062c\u0629: \u0648\u0627\u062c\u0647\u0629 C# \u0644\u0644\u0631\u0648\u0628\u0648\u062a\u0627\u062a<\/h3>\n<p>\u0627\u0643\u062a\u0628 \u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0629 \u0639\u0644\u0649 \u0634\u0643\u0644 \u0635\u0646\u0641 (class) \u0628\u0644\u063a\u0629 C#\u060c \u0648\u062a\u0631\u062c\u0645\u0647\u0627 \u062f\u0627\u062e\u0644 SharpTrader\u060c \u0648\u0634\u063a\u0651\u0644\u0647\u0627 \u0639\u0644\u0649 \u0623\u064a \u0648\u0633\u064a\u0637 \u0623\u0648 \u0645\u0646\u0635\u0629 \u0645\u062a\u0635\u0644\u0629. \u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0627\u0644\u0644\u062d\u0638\u064a\u0629 \u0648\u0627\u0644\u0645\u0631\u0627\u0643\u0632 \u0648\u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0648\u0627\u0644\u0645\u0624\u0634\u0631\u0627\u062a \u0643\u0644\u0647\u0627 \u0639\u0644\u0649 \u0628\u064f\u0639\u062f \u0627\u0633\u062a\u062f\u0639\u0627\u0621 \u0648\u0627\u062d\u062f.<\/p>\n<p><a href=\"#bot-api\">\u0627\u0642\u0631\u0623 \u0639\u0646 \u0648\u0627\u062c\u0647\u0629 \u0627\u0644\u0631\u0648\u0628\u0648\u062a\u0627\u062a<\/a><\/p>\n<\/td>\n<td class=\"dev-col\">\n<span class=\"dev-tag\">\u062e\u0627\u0631\u062c \u0627\u0644\u0645\u0646\u0635\u0629<\/span><\/p>\n<h3>EasyFIX API<\/h3>\n<p>\u0627\u062d\u062a\u0641\u0638 \u0628\u0645\u062d\u0631\u0651\u0643\u0643 \u0627\u0644\u062e\u0627\u0635\u060c \u0628\u0623\u064a \u0644\u063a\u0629\u060c \u0648\u062f\u0639 SharpTrader \u064a\u0643\u0648\u0646 \u0627\u0644\u0628\u0648\u0627\u0628\u0629: \u0641\u0647\u0648 \u064a\u0628\u062b \u0625\u0644\u064a\u0643 \u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0648\u064a\u0648\u062c\u0651\u0647 \u0623\u0648\u0627\u0645\u0631\u0643 \u0639\u0628\u0631 \u0645\u0648\u0635\u0650\u0651\u0644\u0627\u062a\u0647 \u0628\u0627\u0644\u0648\u0633\u0637\u0627\u0621 \u0648\u0627\u0644\u0645\u0646\u0635\u0627\u062a.<\/p>\n<p><a href=\"#easyfix\">\u0627\u0642\u0631\u0623 \u0639\u0646 EasyFIX<\/a><\/p>\n<\/td>\n<td class=\"dev-col\">\n<span class=\"dev-tag\">\u0641\u064a \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u062e\u0627\u0635\u0629<\/span><\/p>\n<h3>\u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart<\/h3>\n<p>\u0645\u0644\u0641 DLL \u0648\u0627\u062d\u062f \u064a\u0645\u0646\u062d \u062a\u0637\u0628\u064a\u0642\u0643 \u0627\u0644\u0645\u0628\u0646\u064a \u0639\u0644\u0649 .NET \u0631\u0633\u0648\u0645 \u0634\u0645\u0648\u0639 \u0628\u064a\u0627\u0646\u064a\u0629 \u0627\u062d\u062a\u0631\u0627\u0641\u064a\u0629 \u0648\u0645\u0624\u0634\u0631\u0627\u062a \u0648\u0623\u062f\u0648\u0627\u062a \u0631\u0633\u0645 \u0648\u0644\u0648\u062d\u0629 \u062a\u062f\u0627\u0648\u0644 \u0648\u062f\u0641\u062a\u0631 \u0623\u0648\u0627\u0645\u0631\u060c \u0645\u0639 \u0628\u062b \u0644\u062d\u0638\u064a \u0644\u0644\u0623\u0633\u0639\u0627\u0631.<\/p>\n<p><a href=\"#charting\">\u0627\u0637\u0651\u0644\u0639 \u0639\u0644\u0649 \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629<\/a><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><!-- ============================================================ --><br \/>\n<!-- BOT API                                                      --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"bot-api\">\u0648\u062d\u062f\u0629 \u0627\u0644\u0628\u0631\u0645\u062c\u0629: \u0627\u0643\u062a\u0628 \u0627\u0644\u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a \u0628\u0644\u063a\u0629 C#<\/h2>\n<p>\u062a\u062d\u0648\u0651\u0644 \u0648\u062d\u062f\u0629 \u0627\u0644\u0628\u0631\u0645\u062c\u0629 SharpTrader \u0625\u0644\u0649 \u0628\u064a\u0626\u0629 \u062a\u0637\u0648\u064a\u0631 \u0644\u0644\u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a \u0627\u0644\u0622\u0644\u064a\u0629. \u0627\u0644\u0631\u0648\u0628\u0648\u062a \u0647\u0648 \u0635\u0646\u0641 C# \u064a\u0631\u062b \u0645\u0646 \u0627\u0644\u0635\u0646\u0641 \u0627\u0644\u0623\u0633\u0627\u0633\u064a <code>Bot<\/code> \u0641\u064a \u0627\u0644\u0645\u0646\u0635\u0629 \u0648\u064a\u0633\u062a\u062c\u064a\u0628 \u0644\u0644\u0623\u062d\u062f\u0627\u062b: \u0627\u0644\u062a\u0647\u064a\u0626\u0629\u060c \u0648\u0643\u0644 \u0633\u0639\u0631 \u0644\u062d\u0638\u064a \u0648\u0627\u0631\u062f\u060c \u0648\u0641\u062a\u062d \u0645\u0631\u0643\u0632\u060c \u0648\u0625\u063a\u0644\u0627\u0642 \u0645\u0631\u0643\u0632\u060c \u0648\u062a\u062d\u062f\u064a\u062b\u0627\u062a \u062d\u0627\u0644\u0629 \u0627\u0644\u0623\u0648\u0627\u0645\u0631. \u062a\u0642\u0648\u0645 \u0627\u0644\u0645\u0646\u0635\u0629 \u0628\u062a\u0631\u062c\u0645\u062a\u0647\u060c \u0648\u062a\u0639\u0631\u0636 \u0645\u062f\u062e\u0644\u0627\u062a\u0643 \u0641\u064a \u0627\u0644\u0648\u0627\u062c\u0647\u0629\u060c \u0648\u062a\u0634\u063a\u0651\u0644\u0647 \u0639\u0644\u0649 \u0627\u0644\u062d\u0633\u0627\u0628\u0627\u062a \u0627\u0644\u062d\u0642\u064a\u0642\u064a\u0629 \u0623\u0648 \u0627\u0644\u062a\u062c\u0631\u064a\u0628\u064a\u0629 \u062c\u0646\u0628\u064b\u0627 \u0625\u0644\u0649 \u062c\u0646\u0628 \u0645\u0639 \u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a \u0627\u0644\u0645\u0631\u0627\u062c\u062d\u0629 \u0648\u0627\u0644\u0623\u062e\u0628\u0627\u0631 \u0648\u0627\u0644\u0632\u062e\u0645 \u0627\u0644\u0645\u062f\u0645\u062c\u0629.<\/p>\n<h3>\u0645\u0627 \u062a\u0645\u0646\u062d\u0643 \u0625\u064a\u0627\u0647 \u0627\u0644\u0648\u0627\u062c\u0647\u0629<\/h3>\n<table class=\"dev-tbl\">\n<thead>\n<tr>\n<th>\u0627\u0644\u0645\u062c\u0627\u0644<\/th>\n<th>\u0645\u0627 \u064a\u0645\u0643\u0646\u0643 \u0641\u0639\u0644\u0647<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0633\u0648\u0642<\/td>\n<td>\u0633\u0639\u0631 \u0627\u0644\u0637\u0644\u0628 \u0648\u0627\u0644\u0639\u0631\u0636 \u0648\u0627\u0644\u0641\u0627\u0631\u0642 \u0648\u0642\u064a\u0645\u0629 \u0627\u0644\u0646\u0642\u0637\u0629 \u0644\u0643\u0644 \u0631\u0645\u0632 \u0648\u0644\u0643\u0644 \u062c\u0644\u0633\u0629\u060c \u0639\u0628\u0631 \u0627\u0644\u0643\u0627\u0626\u0646 <code>ticker<\/code>. \u0627\u0644\u062c\u0644\u0633\u0629 \u0647\u064a \u062d\u0633\u0627\u0628 \u0648\u0627\u062d\u062f \u0645\u062a\u0635\u0644 \u0644\u062f\u0649 \u0648\u0633\u064a\u0637 \u0623\u0648 \u0645\u0646\u0635\u0629\u060c \u0644\u0630\u0627 \u064a\u0645\u0643\u0646 \u0644\u0631\u0648\u0628\u0648\u062a \u0648\u0627\u062d\u062f \u0645\u0631\u0627\u0642\u0628\u0629 \u0639\u062f\u0629 \u0623\u0637\u0631\u0627\u0641 \u0645\u0642\u0627\u0628\u0644\u0629 \u0648\u0627\u0644\u062a\u062f\u0627\u0648\u0644 \u0645\u0639\u0647\u0627 \u0641\u064a \u0622\u0646 \u0648\u0627\u062d\u062f \u0639\u0628\u0631 \u0631\u0642\u0645 \u0627\u0644\u062c\u0644\u0633\u0629.<\/td>\n<\/tr>\n<tr>\n<td>\u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0648\u0627\u0644\u0645\u0631\u0627\u0643\u0632<\/td>\n<td><code>sendOrder<\/code> \u0644\u0644\u062a\u0646\u0641\u064a\u0630 \u0628\u0633\u0639\u0631 \u0627\u0644\u0633\u0648\u0642\u060c \u0648<code>modifyPositionByID<\/code> \u0644\u0648\u0642\u0641 \u0627\u0644\u062e\u0633\u0627\u0631\u0629 \u0648\u062c\u0646\u064a \u0627\u0644\u0623\u0631\u0628\u0627\u062d\u060c \u0648<code>closePositionByID<\/code>\u060c \u0648\u0627\u0644\u0628\u062d\u062b \u062d\u0633\u0628 \u0627\u0644\u0645\u0639\u0631\u0651\u0641 \u0623\u0648 \u0627\u0644\u062a\u0639\u0644\u064a\u0642\u060c \u0648\u0642\u0648\u0627\u0626\u0645 \u062d\u064a\u0629 \u0628\u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0627\u0644\u0645\u0641\u062a\u0648\u062d\u0629 \u0648\u0627\u0644\u0645\u063a\u0644\u0642\u0629 \u0648\u0627\u0644\u0645\u0639\u0644\u0651\u0642\u0629.<\/td>\n<\/tr>\n<tr>\n<td>\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0645\u0631\u0643\u0632<\/td>\n<td>\u064a\u062d\u0645\u0644 \u0643\u0644 \u0645\u0631\u0643\u0632 \u0623\u0633\u0639\u0627\u0631 \u0648\u0623\u0648\u0642\u0627\u062a \u0627\u0644\u0641\u062a\u062d \u0648\u0627\u0644\u0625\u063a\u0644\u0627\u0642\u060c \u0648\u0627\u0644\u062d\u062c\u0645\u060c \u0648\u0627\u0644\u0627\u062a\u062c\u0627\u0647\u060c \u0648\u0627\u0644\u062c\u0644\u0633\u0629\u060c \u0648\u0627\u0644\u0631\u0628\u062d\u060c \u0648\u0627\u0644\u062a\u0639\u0644\u064a\u0642\u060c \u0648\u0648\u0642\u0641 \u0627\u0644\u062e\u0633\u0627\u0631\u0629\u060c \u0648\u062c\u0646\u064a \u0627\u0644\u0623\u0631\u0628\u0627\u062d\u060c \u0648\u0627\u0644\u0627\u0646\u0632\u0644\u0627\u0642 \u0627\u0644\u0633\u0639\u0631\u064a \u0627\u0644\u0645\u0642\u0627\u0633 \u0648\u0632\u0645\u0646 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0644\u0643\u0644\u0627 \u0627\u0644\u062c\u0627\u0646\u0628\u064a\u0646. \u0647\u0630\u0627 \u0627\u0644\u062c\u0632\u0621 \u0627\u0644\u0623\u062e\u064a\u0631 \u0647\u0648 \u0645\u0627 \u064a\u062a\u064a\u062d \u0644\u0644\u0631\u0648\u0628\u0648\u062a \u0627\u0644\u062a\u0643\u064a\u0651\u0641 \u0645\u0639 \u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0627\u0644\u0641\u0639\u0644\u064a\u0629 \u0644\u062f\u0649 \u0627\u0644\u0648\u0633\u064a\u0637.<\/td>\n<\/tr>\n<tr>\n<td>\u0627\u0644\u0645\u0624\u0634\u0631\u0627\u062a<\/td>\n<td>\u062f\u0648\u0627\u0644 \u0645\u0624\u0634\u0631\u0627\u062a \u0645\u062f\u0645\u062c\u0629 \u0645\u062b\u0644 EMA \u0648MACD \u0639\u0644\u0649 \u0623\u064a \u0625\u0637\u0627\u0631 \u0632\u0645\u0646\u064a\u060c \u062a\u062a\u0648\u0633\u0639 \u0628\u0627\u0633\u062a\u0645\u0631\u0627\u0631 \u0645\u0639 \u062a\u062d\u062f\u064a\u062b\u0627\u062a \u0627\u0644\u0645\u0646\u0635\u0629.<\/td>\n<\/tr>\n<tr>\n<td>\u0627\u0644\u0645\u062f\u062e\u0644\u0627\u062a \u0648\u0627\u0644\u0633\u062c\u0644\u0627\u062a<\/td>\n<td>\u0627\u0644\u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u0639\u0627\u0645\u0629 \u0627\u0644\u0645\u0639\u0644\u064e\u0651\u0645\u0629 \u0628\u0640 <code>[PropertyInfo]<\/code> \u062a\u0638\u0647\u0631 \u0643\u0645\u062f\u062e\u0644\u0627\u062a \u0642\u0627\u0628\u0644\u0629 \u0644\u0644\u062a\u0639\u062f\u064a\u0644 \u0641\u064a \u0627\u0644\u0648\u0627\u062c\u0647\u0629\u061b \u0648<code>writeLog<\/code> \u064a\u0643\u062a\u0628 \u0641\u064a \u0633\u062c\u0644 \u0627\u0644\u0645\u0646\u0635\u0629\u061b \u0648<code>stopBot<\/code> \u064a\u0648\u0642\u0641 \u0627\u0644\u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0629 \u0645\u0646 \u062f\u0627\u062e\u0644 \u0627\u0644\u0634\u064a\u0641\u0631\u0629.<\/td>\n<\/tr>\n<tr>\n<td>\u062d\u0627\u0644\u0629 \u0627\u0644\u062d\u0633\u0627\u0628<\/td>\n<td>\u0627\u0644\u0631\u0635\u064a\u062f \u0648\u062d\u0642\u0648\u0642 \u0627\u0644\u0645\u0644\u0643\u064a\u0629 \u0644\u0643\u0644 \u062c\u0644\u0633\u0629 \u0644\u0642\u0648\u0627\u0639\u062f \u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u0645\u062e\u0627\u0637\u0631 \u0648\u062a\u062d\u062f\u064a\u062f \u062d\u062c\u0645 \u0627\u0644\u0645\u0631\u0627\u0643\u0632.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\u0647\u064a\u0643\u0644 \u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0629 \u0645\u0628\u0633\u0651\u0637<\/h3>\n<pre class=\"dev-code\"><span class=\"c\">\/\/ Illustrative skeleton. Names follow the SharpTrader coding library reference.<\/span>\nusing SharpTraderBot;\n\npublic class SpreadGuardBot : Bot\n{\n    [PropertyInfo(0.10, \"Lot size\")]\n    public double Lots { get; set; }\n\n    [PropertyInfo(20, \"Max spread, points\")]\n    public int MaxSpreadPoints { get; set; }\n\n    string _inFlight;                            <span class=\"c\">\/\/ one order in flight per tick<\/span>\n\n    public virtual void OnInit() { writeLog(\"SpreadGuardBot started\"); }\n\n    public virtual void OnTick(NewTickEventArgs args)\n    {\n        int session = 0;                         <span class=\"c\">\/\/ session index = broker account<\/span>\n        string symbol = args.tick.symbol;\n\n        double point  = ticker.getPointValue(session, symbol);\n        double spread = (ticker.getAsk(session, symbol) - ticker.getBid(session, symbol)) \/ point;\n\n        if (spread &gt; MaxSpreadPoints || _inFlight != null) return;\n\n        _inFlight = sendOrder(session, symbol, Lots, OrderSide.BUY, OrderType.MARKET, 0, \"spread-guard\");\n    }\n}<\/pre>\n<div class=\"dev-note\"><strong>\u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0645\u0641\u064a\u062f\u0629 \u0642\u0628\u0644 \u0643\u062a\u0627\u0628\u0629 \u0627\u0644\u0633\u0637\u0631 \u0627\u0644\u0623\u0648\u0644.<\/strong> \u062a\u064f\u062a\u0631\u062c\u064e\u0645 \u0627\u0644\u0628\u064a\u0626\u0629 \u0627\u0644\u0645\u0639\u0632\u0648\u0644\u0629 (sandbox) \u0645\u0642\u0627\u0628\u0644 \u0645\u062c\u0645\u0648\u0639\u0629 \u062b\u0627\u0628\u062a\u0629 \u0645\u0646 \u0627\u0644\u0645\u0643\u062a\u0628\u0627\u062a: System \u0648System.Collections \u0648System.Runtime \u0648System.Console \u0648\u0645\u0643\u062a\u0628\u0629 \u0631\u0648\u0628\u0648\u062a\u0627\u062a SharpTrader. \u0648LINQ \u0644\u064a\u0633\u062a \u0645\u0646 \u0628\u064a\u0646\u0647\u0627\u060c \u0644\u0630\u0627 \u0627\u0643\u062a\u0628 \u062d\u0644\u0642\u0627\u062a <code>foreach<\/code> \u0639\u0627\u062f\u064a\u0629 \u0628\u062f\u0644\u064b\u0627 \u0645\u0646 <code>Where<\/code> \u0623\u0648 <code>Select<\/code> \u0623\u0648 <code>Any<\/code>. \u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0645\u0646 \u0627\u0644\u0648\u0627\u062c\u0647\u0629 \u0628\u0646\u0642\u0627\u0637 \u0627\u0644\u0648\u0633\u064a\u0637\u061b \u0627\u0636\u0631\u0628\u0647\u0627 \u0641\u064a \u0642\u064a\u0645\u0629 \u0627\u0644\u0646\u0642\u0637\u0629 \u0642\u0628\u0644 \u0645\u0642\u0627\u0631\u0646\u062a\u0647\u0627 \u0628\u0639\u062a\u0628\u0627\u062a\u0643 \u0627\u0644\u062e\u0627\u0635\u0629. \u0648\u0627\u062d\u0631\u0635 \u0639\u0644\u0649 \u0648\u062c\u0648\u062f \u0623\u0645\u0631 \u0648\u0627\u062d\u062f \u0642\u064a\u062f \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0644\u0643\u0644 \u0633\u0639\u0631 \u0644\u062d\u0638\u064a\u060c \u0645\u062d\u0645\u064a\u064b\u0627 \u0628\u0645\u0639\u0631\u0651\u0641 \u0623\u0645\u0631 \u0627\u0644\u0639\u0645\u064a\u0644 \u0627\u0644\u0645\u064f\u0639\u0627\u062f\u060c \u0625\u0644\u0627 \u0625\u0630\u0627 \u0643\u0646\u062a \u062a\u0633\u062a\u0645\u062a\u0639 \u0628\u062a\u0635\u062d\u064a\u062d \u0623\u062e\u0637\u0627\u0621 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0627\u0644\u0645\u0643\u0631\u0631.<\/div>\n<p>\u0627\u0644\u0645\u0631\u062c\u0639 \u0627\u0644\u0643\u0627\u0645\u0644 \u0644\u0644\u0623\u0635\u0646\u0627\u0641 \u0648\u0627\u0644\u062f\u0648\u0627\u0644 \u0648\u0627\u0644\u0623\u062d\u062f\u0627\u062b: <a href=\"https:\/\/sharptrader.arbitragesoftware.net\/bot\/\">\u062a\u0648\u062b\u064a\u0642 \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0628\u0631\u0645\u062c\u0629 \u0641\u064a SharpTrader<\/a>. \u0648\u062d\u062f\u0629 \u0627\u0644\u0628\u0631\u0645\u062c\u0629 \u0625\u0636\u0627\u0641\u0629 \u0625\u0644\u0649 SharpTrader Pro\u061b \u0631\u0627\u062c\u0639 <a href=\"https:\/\/bjftradinggroup.com\/product\/sharptrader-forex-crypto-arbitrage\/\">\u0635\u0641\u062d\u0629 SharpTrader Pro<\/a> \u0644\u0644\u0627\u0637\u0644\u0627\u0639 \u0639\u0644\u0649 \u0627\u0644\u062d\u0632\u0645\u0629 \u0627\u0644\u062d\u0627\u0644\u064a\u0629.<\/p>\n<p><!-- ============================================================ --><br \/>\n<!-- EASYFIX                                                      --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"easyfix\">EasyFIX API: \u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0640 SharpTrader<\/h2>\n<p>\u0644\u064a\u0633 \u0643\u0644 \u0634\u064a\u0621 \u0645\u0643\u0627\u0646\u0647 \u062f\u0627\u062e\u0644 \u0627\u0644\u0645\u0646\u0635\u0629. \u0625\u0630\u0627 \u0643\u0646\u062a \u062a\u0634\u063a\u0651\u0644 \u0628\u0627\u0644\u0641\u0639\u0644 \u0645\u062d\u0631\u0651\u0643 \u0625\u0634\u0627\u0631\u0627\u062a \u0623\u0648 \u0645\u062f\u064a\u0631 \u0645\u062e\u0627\u0637\u0631 \u0623\u0648 \u0648\u0627\u062c\u0647\u0629 \u0623\u0645\u0627\u0645\u064a\u0629 \u0645\u062e\u0635\u0635\u0629 \u0623\u0648 \u0645\u0633\u0627\u0631 \u0628\u062d\u062b\u060c \u0641\u0625\u0646 EasyFIX \u064a\u062a\u064a\u062d \u0644\u0647 \u0627\u0644\u062a\u0648\u0627\u0635\u0644 \u0645\u0639 SharpTrader \u0639\u0628\u0631 \u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 FIX \u0645\u0628\u0633\u0651\u0637. \u064a\u0635\u0628\u062d SharpTrader \u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0643: \u0641\u0647\u0648 \u064a\u062d\u062a\u0641\u0638 \u0628\u0627\u0644\u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0645\u0639 \u0627\u0644\u0648\u0633\u0637\u0627\u0621 \u0648\u0627\u0644\u0645\u0646\u0635\u0627\u062a\u060c \u0648\u0623\u0646\u062a \u062a\u0631\u0633\u0644 \u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0648\u062a\u0633\u062a\u0642\u0628\u0644 \u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0648\u062a\u0642\u0627\u0631\u064a\u0631 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0645\u0646 \u0634\u064a\u0641\u0631\u062a\u0643 \u0627\u0644\u062e\u0627\u0635\u0629\u060c \u0628\u0623\u064a \u0644\u063a\u0629 \u062a\u0641\u0636\u0651\u0644\u0647\u0627.<\/p>\n<table class=\"dev-twocol\">\n<tbody>\n<tr>\n<td class=\"dev-col\">\n<h3>\u0645\u0627 \u064a\u0646\u0642\u0644\u0647 EasyFIX<\/h3>\n<ul>\n<li>\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0633\u0648\u0642: \u0623\u0633\u0639\u0627\u0631 \u0627\u0644\u0631\u0645\u0648\u0632 \u0627\u0644\u062a\u064a \u062a\u0634\u062a\u0631\u0643 \u0641\u064a\u0647\u0627\u060c \u0645\u0646 \u0623\u064a \u062c\u0644\u0633\u0629 \u0645\u0641\u062a\u0648\u062d\u0629 \u0641\u064a SharpTrader.<\/li>\n<li>\u062a\u062f\u0641\u0642 \u0627\u0644\u0623\u0648\u0627\u0645\u0631: \u0623\u0648\u0627\u0645\u0631 \u062c\u062f\u064a\u062f\u0629 \u0648\u062a\u0639\u062f\u064a\u0644\u0627\u062a \u0648\u0625\u063a\u0644\u0627\u0642\u0627\u062a \u0645\u0648\u062c\u064e\u0651\u0647\u0629 \u0625\u0644\u0649 \u0627\u0644\u062c\u0644\u0633\u0629 \u0627\u0644\u0645\u062e\u062a\u0627\u0631\u0629.<\/li>\n<li>\u062a\u0642\u0627\u0631\u064a\u0631 \u0627\u0644\u062a\u0646\u0641\u064a\u0630: \u0639\u0645\u0644\u064a\u0627\u062a \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0648\u0627\u0644\u0631\u0641\u0636 \u0648\u062d\u0627\u0644\u0629 \u0627\u0644\u0645\u0631\u0627\u0643\u0632 \u0648\u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u062a\u0639\u0648\u062f \u0625\u0644\u0649 \u062a\u0637\u0628\u064a\u0642\u0643.<\/li>\n<li>\u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0623\u0643\u062b\u0631 \u0645\u0646 50 \u0645\u0648\u0635\u0650\u0651\u0644 FIX API \u0644\u0644\u0648\u0633\u0637\u0627\u0621 \u0648\u0627\u0644\u0627\u062a\u0635\u0627\u0644\u0627\u062a \u0628\u0643\u0628\u0631\u0649 \u0645\u0646\u0635\u0627\u062a \u0627\u0644\u0639\u0645\u0644\u0627\u062a \u0627\u0644\u0645\u0634\u0641\u0631\u0629 \u0646\u0641\u0633\u0647\u0627 \u0627\u0644\u062a\u064a \u064a\u0633\u062a\u062e\u062f\u0645\u0647\u0627 SharpTrader \u0641\u064a \u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a\u0647.<\/li>\n<\/ul>\n<\/td>\n<td class=\"dev-col\">\n<h3>\u062a\u0643\u0627\u0645\u0644\u0627\u062a \u0646\u0645\u0648\u0630\u062c\u064a\u0629<\/h3>\n<ul>\n<li>\u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0629 \u062e\u0627\u0631\u062c\u064a\u0629 \u0645\u0643\u062a\u0648\u0628\u0629 \u0628\u0644\u063a\u0629 Python \u0623\u0648 Java \u0623\u0648 C++ \u0623\u0648 \u0623\u064a \u0644\u063a\u0629 \u062a\u062f\u0639\u0645 \u0627\u0644\u0645\u0642\u0627\u0628\u0633 (sockets) \u0648\u0628\u0646\u0627\u0621 \u0631\u0633\u0627\u0626\u0644 FIX.<\/li>\n<li>\u0637\u0628\u0642\u0629 \u0645\u062e\u0627\u0637\u0631 \u0639\u0644\u0649 \u0645\u0633\u062a\u0648\u0649 \u0627\u0644\u0634\u0631\u0643\u0629 \u062a\u0634\u0631\u0641 \u0639\u0644\u0649 \u0639\u062f\u0629 \u0646\u0633\u062e \u0645\u0646 SharpTrader.<\/li>\n<li>\u0648\u0627\u062c\u0647\u0629 \u062a\u062f\u0627\u0648\u0644 \u0631\u0633\u0648\u0645\u064a\u0629 \u0623\u0648 \u0644\u0648\u062d\u0629 \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0645\u062e\u0635\u0635\u0629 \u0641\u0648\u0642 \u0645\u062d\u0631\u0651\u0643 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0641\u064a SharpTrader.<\/li>\n<li>\u062a\u0633\u062c\u064a\u0644 \u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0648\u0639\u0645\u0644\u064a\u0627\u062a \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0644\u0623\u063a\u0631\u0627\u0636 \u0627\u0644\u0628\u062d\u062b \u0648\u0627\u0644\u0627\u062e\u062a\u0628\u0627\u0631 \u0627\u0644\u0631\u062c\u0639\u064a \u0648\u062a\u062f\u0642\u064a\u0642 \u062a\u0646\u0641\u064a\u0630 \u0627\u0644\u0648\u0633\u0637\u0627\u0621.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>EasyFIX \u0644\u0647\u062c\u0629 FIX \u0645\u0639\u062f\u0651\u0644\u0629: \u062a\u062d\u062a\u0641\u0638 \u0628\u0646\u0645\u0648\u0630\u062c \u0627\u0644\u0631\u0633\u0627\u0626\u0644 \u0627\u0644\u0630\u064a \u064a\u0639\u0631\u0641\u0647 \u0627\u0644\u0645\u0637\u0648\u0651\u0631\u0648\u0646\u060c \u0645\u0639 \u0627\u0644\u0627\u0633\u062a\u063a\u0646\u0627\u0621 \u0639\u0646 \u0627\u0644\u062a\u0639\u0642\u064a\u062f\u0627\u062a \u0627\u0644\u062a\u064a \u0644\u0627 \u064a\u062d\u062a\u0627\u062c\u0647\u0627 \u0627\u0644\u0631\u0628\u0637 \u0628\u064a\u0646 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u0648\u0627\u0644\u0628\u0648\u0627\u0628\u0629. \u0627\u0644\u0645\u0648\u0627\u0635\u0641\u0627\u062a \u0648\u0623\u0645\u062b\u0644\u0629 \u0627\u0644\u062c\u0644\u0633\u0627\u062a \u0648\u0627\u062a\u0635\u0627\u0644 \u062a\u062c\u0631\u064a\u0628\u064a \u0645\u062a\u0627\u062d\u0629 \u0644\u0645\u0633\u062a\u062e\u062f\u0645\u064a SharpTrader Pro \u0648Lite \u0639\u0646\u062f \u0627\u0644\u0637\u0644\u0628. \u0631\u0627\u0633\u0644\u0646\u0627 \u0639\u0644\u0649 <a href=\"mailto:support@bjftradinggroup.com\">support@bjftradinggroup.com<\/a> \u0645\u0639 \u0648\u0635\u0641 \u0645\u0648\u062c\u0632 \u0644\u0645\u0627 \u062a\u062e\u0637\u0637 \u0644\u0631\u0628\u0637\u0647.<\/p>\n<p><!-- ============================================================ --><br \/>\n<!-- CHARTING LIBRARY                                             --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"charting\">BjfChart: \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 \u0648\u0631\u0627\u0621 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u062c\u062f\u064a\u062f\u0629 \u0641\u064a SharpTrader<\/h2>\n<p>\u0641\u064a \u0639\u0627\u0645 2026 \u0623\u0639\u062f\u0646\u0627 \u0628\u0646\u0627\u0621 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 \u0641\u064a SharpTrader \u0645\u0646 \u0627\u0644\u0635\u0641\u0631\u060c \u0648\u0627\u0644\u0645\u062d\u0631\u0651\u0643 \u0627\u0644\u0630\u064a \u064a\u0642\u0641 \u062e\u0644\u0641\u0647\u0627 \u0645\u062a\u0627\u062d \u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646 \u0643\u0645\u0643\u062a\u0628\u0629 \u0645\u0633\u062a\u0642\u0644\u0629. BjfChart \u0639\u0646\u0635\u0631 \u062a\u062d\u0643\u0645 \u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0634\u0645\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 \u0645\u0633\u0631\u064e\u0651\u0639 \u0628\u0645\u0639\u0627\u0644\u062c \u0627\u0644\u0631\u0633\u0648\u0645\u064a\u0627\u062a (GPU) \u0644\u0640 WinForms \u0648\u0645\u0628\u0646\u064a \u0639\u0644\u0649 SkiaSharp. \u064a\u0639\u0631\u0636 \u0639\u0634\u0631\u0627\u062a \u0627\u0644\u0622\u0644\u0627\u0641 \u0645\u0646 \u0627\u0644\u0623\u0639\u0645\u062f\u0629 \u0628\u0645\u0639\u062f\u0644 60 \u0625\u0637\u0627\u0631\u064b\u0627 \u0641\u064a \u0627\u0644\u062b\u0627\u0646\u064a\u0629\u060c \u0648\u064a\u0623\u062a\u064a \u0643\u0645\u0644\u0641 \u0648\u0627\u062d\u062f <code>BjfChart.dll<\/code> \u064a\u0633\u062a\u0647\u062f\u0641 \u0643\u0644\u064b\u0627 \u0645\u0646 <code>net48<\/code> \u0648<code>net8.0-windows<\/code>\u060c \u0641\u064a\u0646\u062f\u0645\u062c \u0641\u064a \u0645\u0646\u0635\u0627\u062a .NET Framework \u0627\u0644\u0642\u062f\u064a\u0645\u0629 \u0648\u062a\u0637\u0628\u064a\u0642\u0627\u062a .NET 8 \u0627\u0644\u062c\u062f\u064a\u062f\u0629 \u0639\u0644\u0649 \u062d\u062f \u0633\u0648\u0627\u0621.<\/p>\n<div class=\"dev-video\">\n<p class=\"dev-video-title\">\u0641\u064a\u062f\u064a\u0648: SharpTrader Charting\u060c \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 \u0627\u0644\u062c\u062f\u064a\u062f\u0629 \u0648\u062c\u0648\u0644\u0629 \u0641\u064a \u0627\u0644\u062a\u062f\u0627\u0648\u0644 \u0627\u0644\u064a\u062f\u0648\u064a<\/p>\n<div class=\"dev-video-embed\">\n<iframe src=\"https:\/\/www.youtube-nocookie.com\/embed\/QBjWnSRnrxs\" title=\"SharpTrader Charting: \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 \u0627\u0644\u062c\u062f\u064a\u062f\u0629 \u0648\u062c\u0648\u0644\u0629 \u0641\u064a \u0627\u0644\u062a\u062f\u0627\u0648\u0644 \u0627\u0644\u064a\u062f\u0648\u064a\" 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\">\u062b\u0645\u0627\u0646\u064a\u0629 \u0623\u0637\u0631 \u0632\u0645\u0646\u064a\u0629\u060c \u0648\u0645\u0624\u0634\u0631\u0627\u062a\u060c \u0648\u0623\u062f\u0648\u0627\u062a \u0641\u064a\u0628\u0648\u0646\u0627\u062a\u0634\u064a \u0648\u0627\u0644\u0627\u062a\u062c\u0627\u0647\u060c \u0648\u0646\u0627\u0641\u0630\u0629 \u0623\u0648\u0627\u0645\u0631 \u0645\u0639 \u062e\u0637\u0648\u0637 \u0642\u0627\u0628\u0644\u0629 \u0644\u0644\u0633\u062d\u0628 \u0644\u0648\u0642\u0641 \u0627\u0644\u062e\u0633\u0627\u0631\u0629 \u0648\u062c\u0646\u064a \u0627\u0644\u0623\u0631\u0628\u0627\u062d\u060c \u0648\u0631\u0633\u0648\u0645 \u0628\u064a\u0627\u0646\u064a\u0629 \u0645\u062a\u0639\u062f\u062f\u0629 \u0627\u0644\u0648\u0633\u0637\u0627\u0621\u060c \u0645\u0639\u0631\u0648\u0636\u0629 \u0645\u0628\u0627\u0634\u0631\u0629\u064b \u062f\u0627\u062e\u0644 SharpTrader. <a href=\"https:\/\/youtu.be\/QBjWnSRnrxs\">\u0627\u0641\u062a\u062d \u0639\u0644\u0649 YouTube<\/a><\/p>\n<\/div>\n<h3>\u0645\u0627 \u062a\u062a\u0636\u0645\u0646\u0647 \u0627\u0644\u0645\u0643\u062a\u0628\u0629<\/h3>\n<table class=\"dev-twocol\">\n<tbody>\n<tr>\n<td class=\"dev-col\">\n<h3>\u0645\u062d\u0631\u0651\u0643 \u0627\u0644\u0631\u0633\u0648\u0645<\/h3>\n<ul>\n<li>\u0639\u0631\u0636 \u0627\u0644\u0634\u0645\u0648\u0639 \u0645\u0639 \u0644\u0648\u062d\u0629 \u0641\u0631\u0639\u064a\u0629 \u0644\u0644\u062d\u062c\u0645\u060c \u0648\u0645\u0624\u0634\u0631 \u062a\u0642\u0627\u0637\u0639\u060c \u0648\u0645\u0644\u0635\u0642 \u0644\u0644\u0633\u0639\u0631 \u0627\u0644\u062d\u064a\u060c \u0648\u0645\u0641\u062a\u0627\u062d OHLC \u0639\u0627\u0626\u0645.<\/li>\n<li>\u062a\u0643\u0628\u064a\u0631 \u0628\u0639\u062c\u0644\u0629 \u0627\u0644\u0641\u0623\u0631\u0629 \u064a\u064f\u0628\u0642\u064a \u0627\u0644\u0639\u0645\u0648\u062f \u0627\u0644\u0645\u0648\u062c\u0648\u062f \u062a\u062d\u062a \u0627\u0644\u0645\u0624\u0634\u0631 \u062b\u0627\u0628\u062a\u064b\u0627\u060c \u0648\u062a\u062d\u0631\u064a\u0643 \u0628\u0627\u0644\u0646\u0642\u0631 \u0648\u0627\u0644\u0633\u062d\u0628.<\/li>\n<li>\u0628\u062b \u0644\u062d\u0638\u064a: <code>PushTick<\/code> \u064a\u062f\u0645\u062c \u0627\u0644\u0633\u0639\u0631 \u0627\u0644\u0644\u062d\u0638\u064a \u0641\u064a \u0627\u0644\u0639\u0645\u0648\u062f \u0627\u0644\u0623\u062e\u064a\u0631\u060c \u0648<code>FeedTick<\/code> \u064a\u062c\u0645\u0651\u0639 \u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0627\u0644\u0644\u062d\u0638\u064a\u0629 \u062a\u0644\u0642\u0627\u0626\u064a\u064b\u0627 \u0641\u064a \u0634\u0645\u0648\u0639 \u0628\u0623\u064a \u0641\u0627\u0635\u0644 \u0632\u0645\u0646\u064a.<\/li>\n<li>\u062a\u0631\u0627\u0643\u0628\u0627\u062a \u0645\u062a\u0639\u062f\u062f\u0629 \u0627\u0644\u0631\u0645\u0648\u0632 \u0644\u0644\u0645\u0642\u0627\u0631\u0646\u0629\u060c \u0628\u0645\u0642\u064a\u0627\u0633 \u0645\u0633\u062a\u0642\u0644 \u0623\u0648 \u0645\u0634\u062a\u0631\u0643.<\/li>\n<li>\u062d\u0641\u0638 \u0627\u0644\u062a\u062e\u0637\u064a\u0637 \u0628\u0635\u064a\u063a\u0629 JSON: \u062a\u064f\u062d\u0641\u0638 \u0627\u0644\u0645\u0624\u0634\u0631\u0627\u062a \u0648\u0627\u0644\u0631\u0633\u0648\u0645\u0627\u062a \u0648\u0627\u0644\u062a\u0631\u0627\u0643\u0628\u0627\u062a \u0648\u0646\u0637\u0627\u0642 \u0627\u0644\u0639\u0631\u0636 \u0648\u062a\u064f\u0633\u062a\u0639\u0627\u062f.<\/li>\n<li>\u0633\u0645\u0629 \u062f\u0627\u0643\u0646\u0629 (\u0627\u0644\u0623\u0632\u0631\u0642 \u0627\u0644\u062f\u0627\u0643\u0646 \u0648\u0627\u0644\u0630\u0647\u0628\u064a \u0645\u0646 BJF) \u0648\u0633\u0645\u0629 \u0641\u0627\u062a\u062d\u0629\u060c \u0642\u0627\u0628\u0644\u062a\u0627\u0646 \u0644\u0644\u062a\u0628\u062f\u064a\u0644 \u0623\u062b\u0646\u0627\u0621 \u0627\u0644\u062a\u0634\u063a\u064a\u0644\u060c \u0648\u0643\u0644 \u0644\u0648\u0646 \u0642\u0627\u0628\u0644 \u0644\u0644\u062a\u0639\u062f\u064a\u0644.<\/li>\n<li>\u0639\u0644\u0627\u0645\u0629 \u0645\u0627\u0626\u064a\u0629 \u0645\u0646 \u0645\u0644\u0641 \u0634\u0639\u0627\u0631 \u0623\u0648 \u0631\u0627\u0628\u0637 \u0623\u0648 \u0646\u0635 \u062e\u0644\u0641 \u0627\u0644\u0634\u0645\u0648\u0639.<\/li>\n<\/ul>\n<\/td>\n<td class=\"dev-col\">\n<h3>\u0637\u0628\u0642\u0629 \u0627\u0644\u062a\u062f\u0627\u0648\u0644<\/h3>\n<ul>\n<li><code>TradingPanel<\/code>: \u0646\u0627\u0641\u0630\u0629 \u0623\u0648\u0627\u0645\u0631 (\u0634\u0631\u0627\u0621 \u0648\u0628\u064a\u0639 \u0628\u0633\u0639\u0631 \u0627\u0644\u0633\u0648\u0642 \u0623\u0648 \u0645\u062d\u062f\u062f \u0623\u0648 \u0625\u064a\u0642\u0627\u0641\u060c \u0648\u0627\u0644\u0643\u0645\u064a\u0629\u060c \u0648\u0627\u0644\u0633\u0639\u0631\u060c \u0648\u0648\u0642\u0641 \u0627\u0644\u062e\u0633\u0627\u0631\u0629\u060c \u0648\u062c\u0646\u064a \u0627\u0644\u0623\u0631\u0628\u0627\u062d) \u0645\u0639 \u0639\u0631\u0636 \u062d\u064a \u0644\u0644\u0645\u0631\u0643\u0632 \u0648\u0627\u0644\u0631\u0628\u062d\/\u0627\u0644\u062e\u0633\u0627\u0631\u0629.<\/li>\n<li>\u062e\u0637\u0648\u0637 \u0627\u0644\u062f\u062e\u0648\u0644 \u0648\u0648\u0642\u0641 \u0627\u0644\u062e\u0633\u0627\u0631\u0629 \u0648\u062c\u0646\u064a \u0627\u0644\u0623\u0631\u0628\u0627\u062d \u0648\u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0627\u0644\u0639\u0627\u0645\u0644\u0629 \u062a\u064f\u0631\u0633\u0645 \u0639\u0644\u0649 \u0627\u0644\u0631\u0633\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a \u062a\u0644\u0642\u0627\u0626\u064a\u064b\u0627\u061b \u0648\u062e\u0637\u0627 \u0648\u0642\u0641 \u0627\u0644\u062e\u0633\u0627\u0631\u0629 \u0648\u062c\u0646\u064a \u0627\u0644\u0623\u0631\u0628\u0627\u062d \u0642\u0627\u0628\u0644\u0627\u0646 \u0644\u0644\u0633\u062d\u0628 \u0648\u064a\u0637\u0644\u0642\u0627\u0646 \u0623\u062d\u062f\u0627\u062b\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0625\u0641\u0644\u0627\u062a.<\/li>\n<li>\u0627\u0644\u0644\u0648\u062d\u0629 \u0644\u0627 \u062a\u0646\u0641\u0651\u0630 \u0634\u064a\u0626\u064b\u0627 \u0628\u0646\u0641\u0633\u0647\u0627. \u0628\u0644 \u062a\u0637\u0644\u0642 \u0623\u062d\u062f\u0627\u062b\u064b\u0627 \u0644\u0637\u0628\u0642\u0629 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0644\u062f\u064a\u0643\u060c \u0633\u0648\u0627\u0621 \u0643\u0627\u0646\u062a \u062c\u0644\u0633\u0629 FIX API \u0623\u0648 \u062c\u0633\u0631\u064b\u0627 \u0645\u0639 \u0627\u0644\u0648\u0633\u064a\u0637 \u0623\u0648 SharpTrader \u0639\u0628\u0631 EasyFIX.<\/li>\n<li><code>OrderBookPanel<\/code>: \u0633\u0644\u0651\u0645 \u0644\u0639\u0645\u0642 \u0627\u0644\u0633\u0648\u0642 \u0645\u0639 \u0627\u0644\u062d\u062c\u0645 \u0644\u0643\u0644 \u0645\u0633\u062a\u0648\u0649 \u0648\u0623\u0634\u0631\u0637\u0629 \u0639\u0645\u0642 \u062a\u0646\u0627\u0633\u0628\u064a\u0629\u061b \u0627\u0646\u0642\u0631 \u0639\u0644\u0649 \u0645\u0633\u062a\u0648\u0649 \u0644\u0645\u0644\u0621 \u0633\u0639\u0631 \u0627\u0644\u0623\u0645\u0631 \u0627\u0644\u0645\u062d\u062f\u062f \u0645\u0633\u0628\u0642\u064b\u0627.<\/li>\n<li>\u062e\u0637\u0648\u0637 \u0623\u0633\u0639\u0627\u0631 \u0627\u062e\u062a\u064a\u0627\u0631\u064a\u0629 \u062d\u0633\u0628 \u0627\u0644\u0645\u0639\u0631\u0651\u0641 \u0644\u0623\u0648\u0627\u0645\u0631 \u0627\u0644\u0648\u0633\u064a\u0637\u060c \u0645\u0639 \u0625\u0645\u0643\u0627\u0646\u064a\u0629 \u0627\u0644\u0633\u062d\u0628 \u0627\u062e\u062a\u064a\u0627\u0631\u064a\u064b\u0627.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\u0627\u0644\u0645\u0624\u0634\u0631\u0627\u062a \u0648\u0623\u062f\u0648\u0627\u062a \u0627\u0644\u0631\u0633\u0645<\/h3>\n<table class=\"dev-tbl\">\n<thead>\n<tr>\n<th>\u0627\u0644\u0645\u062c\u0645\u0648\u0639\u0629<\/th>\n<th>\u0627\u0644\u0645\u0634\u0645\u0648\u0644<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0645\u0624\u0634\u0631\u0627\u062a \u0627\u0644\u062a\u0631\u0627\u0643\u0628<\/td>\n<td>SMA \u0648EMA \u0648WMA \u0648VWAP \u0648Bollinger Bands \u0648Keltner Channels \u0648Donchian Channels \u0648Envelope \u0648Parabolic SAR.<\/td>\n<\/tr>\n<tr>\n<td>\u0645\u0624\u0634\u0631\u0627\u062a \u0627\u0644\u0644\u0648\u062d\u0629 \u0627\u0644\u0641\u0631\u0639\u064a\u0629<\/td>\n<td>RSI \u0648MACD \u0645\u0639 \u0627\u0644\u0645\u062f\u0631\u0651\u062c \u0627\u0644\u062a\u0643\u0631\u0627\u0631\u064a \u0648Stochastic \u0648ATR \u0648CCI \u0648ADX \/ DMI \u0648Momentum \u0648Rate of Change \u0648Williams %R \u0648Awesome Oscillator \u0648Standard Deviation \u0648On-Balance Volume \u0648Money Flow Index.<\/td>\n<\/tr>\n<tr>\n<td>\u0627\u0644\u062f\u0642\u0629<\/td>\n<td>\u064a\u064f\u062a\u062d\u0642\u064e\u0651\u0642 \u0645\u0646 \u062d\u0633\u0627\u0628\u0627\u062a \u0627\u0644\u0645\u0624\u0634\u0631\u0627\u062a \u0645\u0642\u0627\u0628\u0644 \u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0645\u0631\u062c\u0639\u064a\u0629 \u0645\u0633\u062a\u0642\u0644\u0629: \u062a\u062a\u0637\u0627\u0628\u0642 SMA \u0648EMA \u0648Bollinger \u0648RSI \u0648ATR \u0648Stochastic \u0648CCI \u062d\u062a\u0649 1e-9\u061b \u0648\u064a\u064f\u062a\u062d\u0642\u064e\u0651\u0642 \u0645\u0646 \u0635\u062d\u0629 MACD \u0648ADX \u0648DI \u0648Williams %R \u0648MFI \u0648OBV \u0648\u0646\u0637\u0627\u0642\u0647\u0627.<\/td>\n<\/tr>\n<tr>\n<td>\u0623\u062f\u0648\u0627\u062a \u0627\u0644\u0631\u0633\u0645<\/td>\n<td>\u062e\u0637 \u0627\u0644\u0627\u062a\u062c\u0627\u0647\u060c \u0648\u0627\u0644\u0634\u0639\u0627\u0639\u060c \u0648\u0627\u0644\u062e\u0637 \u0627\u0644\u0645\u0645\u062a\u062f\u060c \u0648\u0627\u0644\u062e\u0637 \u0648\u0627\u0644\u0634\u0639\u0627\u0639 \u0627\u0644\u0623\u0641\u0642\u064a\u0627\u0646\u060c \u0648\u0627\u0644\u062e\u0637 \u0627\u0644\u0639\u0645\u0648\u062f\u064a\u060c \u0648\u0627\u0644\u0633\u0647\u0645\u060c \u0648\u0627\u0644\u0642\u0646\u0627\u0629 \u0627\u0644\u0645\u062a\u0648\u0627\u0632\u064a\u0629\u060c \u0648\u0627\u0644\u0645\u0633\u062a\u0637\u064a\u0644\u060c \u0648\u0627\u0644\u0642\u0637\u0639 \u0627\u0644\u0646\u0627\u0642\u0635\u060c \u0648\u062a\u0635\u062d\u064a\u062d \u0641\u064a\u0628\u0648\u0646\u0627\u062a\u0634\u064a\u060c \u0648\u0627\u0645\u062a\u062f\u0627\u062f \u0641\u064a\u0628\u0648\u0646\u0627\u062a\u0634\u064a\u060c \u0648\u0623\u062f\u0627\u0629 \u0642\u064a\u0627\u0633 \u062a\u0639\u0631\u0636 \u0641\u0631\u0642 \u0627\u0644\u0633\u0639\u0631 \u0648\u0646\u0633\u0628\u0629 \u0627\u0644\u062a\u063a\u064a\u0631 \u0648\u0639\u062f\u062f \u0627\u0644\u0623\u0639\u0645\u062f\u0629. \u062c\u0645\u064a\u0639\u0647\u0627 \u0645\u062b\u0628\u0651\u062a\u0629 \u0641\u064a \u0641\u0636\u0627\u0621 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a\u060c \u0641\u062a\u0628\u0642\u0649 \u0641\u064a \u0645\u0643\u0627\u0646\u0647\u0627 \u0639\u0646\u062f \u0627\u0644\u062a\u0643\u0628\u064a\u0631 \u0648\u0627\u0644\u062a\u062d\u0631\u064a\u0643.<\/td>\n<\/tr>\n<tr>\n<td>\u0642\u0627\u0628\u0644\u064a\u0629 \u0627\u0644\u062a\u0648\u0633\u0639\u0629<\/td>\n<td>\u0646\u0641\u0651\u0630 \u0627\u0644\u0648\u0627\u062c\u0647\u0629 <code>IIndicator<\/code> (\u0623\u0648 \u0627\u0634\u062a\u0642 \u0645\u0646 <code>IndicatorBase<\/code>)\u060c \u0648\u0623\u0639\u062f \u0633\u0644\u0633\u0644\u0629 \u0623\u0648 \u0623\u0643\u062b\u0631 \u0645\u062a\u0648\u0627\u0641\u0642\u0629 \u0645\u0639 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0634\u0645\u0648\u0639\u060c \u0648\u0627\u062e\u062a\u0631 \u0627\u0644\u062a\u0631\u0627\u0643\u0628 \u0623\u0648 \u0627\u0644\u0644\u0648\u062d\u0629 \u0627\u0644\u0641\u0631\u0639\u064a\u0629\u060c \u0648\u0627\u0644\u062e\u0637 \u0623\u0648 \u0627\u0644\u0645\u062f\u0631\u0651\u062c \u0623\u0648 \u0627\u0644\u0646\u0642\u0627\u0637\u060c \u0648\u0633\u062c\u0651\u0644\u0647 \u0644\u064a\u0638\u0647\u0631 \u0641\u064a \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0646\u0642\u0631 \u0628\u0632\u0631 \u0627\u0644\u0641\u0623\u0631\u0629 \u0627\u0644\u0623\u064a\u0645\u0646 \u0648\u0641\u064a \u0627\u0644\u062a\u062e\u0637\u064a\u0637\u0627\u062a \u0627\u0644\u0645\u062d\u0641\u0648\u0638\u0629.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\u0639\u0634\u0631\u0629 \u0623\u0633\u0637\u0631 \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0631\u0633\u0645 \u0628\u064a\u0627\u0646\u064a \u064a\u0639\u0645\u0644<\/h3>\n<pre class=\"dev-code\">using BjfChart;\nusing BjfChart.Indicators;\nusing BjfChart.Models;\n\nvar chart = new ChartControl { Dock = DockStyle.Fill };\nform.Controls.Add(chart);\n\nchart.SetData(myCandles);                          <span class=\"c\">\/\/ IEnumerable&lt;Candle&gt;<\/span>\nchart.AddIndicator(\"ema\");\nchart.AddIndicator(\"bb\");\nchart.AddIndicator(\"macd\");                        <span class=\"c\">\/\/ draws in its own sub-panel<\/span>\nchart.AddIndicator(new RsiIndicator(21));          <span class=\"c\">\/\/ or by type, with custom parameters<\/span>\n\nchart.CandleInterval = TimeSpan.FromMinutes(15);   <span class=\"c\">\/\/ enables auto-bucketing<\/span>\nchart.FeedTick(DateTime.UtcNow, price, volume);    <span class=\"c\">\/\/ rolls a new candle at each boundary<\/span>\n\nchart.StartDrawing(DrawingKind.FibRetracement);    <span class=\"c\">\/\/ next drag draws a fib retracement<\/span>\nchart.SaveLayout(@\"C:\\layouts\\eurusd.json\");\n\n<span class=\"g\">\/\/ Trading panel wired to your execution layer<\/span>\nvar panel = new TradingPanel { Dock = DockStyle.Right, Symbol = \"EURUSD\" };\npanel.AttachChart(chart);                          <span class=\"c\">\/\/ draws entry \/ SL \/ TP lines on the chart<\/span>\npanel.OrderSubmitted += (s, req) =&gt; myExecutionEngine.Send(req);\npanel.PositionModified += (s, pos) =&gt; broker.Modify(pos);   <span class=\"c\">\/\/ after a drag of SL or TP<\/span><\/pre>\n<p>\u0643\u0644 \u0645\u0627 \u0641\u064a \u0627\u0644\u0634\u064a\u0641\u0631\u0629 \u0645\u062a\u0627\u062d \u0623\u064a\u0636\u064b\u0627 \u0645\u0646 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0646\u0642\u0631 \u0628\u0632\u0631 \u0627\u0644\u0641\u0623\u0631\u0629 \u0627\u0644\u0623\u064a\u0645\u0646 \u0639\u0644\u0649 \u0627\u0644\u0631\u0633\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a: \u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u0645\u0624\u0634\u0631\u0627\u062a \u0623\u0648 \u0625\u0632\u0627\u0644\u062a\u0647\u0627\u060c \u0648\u0627\u062e\u062a\u064a\u0627\u0631 \u0623\u062f\u0627\u0629 \u0631\u0633\u0645\u060c \u0648\u0625\u062f\u0627\u0631\u0629 \u0627\u0644\u062a\u0631\u0627\u0643\u0628\u0627\u062a\u060c \u0648\u062a\u0628\u062f\u064a\u0644 \u0627\u0644\u0633\u0645\u0629\u060c \u0648\u062d\u0641\u0638 \u0627\u0644\u062a\u062e\u0637\u064a\u0637 \u0623\u0648 \u062a\u062d\u0645\u064a\u0644\u0647. \u062a\u062a\u0637\u0644\u0628 \u0627\u0644\u0645\u0643\u062a\u0628\u0629 \u0646\u0638\u0627\u0645 Windows \u0648.NET SDK 8.0 \u0623\u0648 \u0623\u062d\u062f\u062b \u0644\u0644\u0628\u0646\u0627\u0621\u061b \u0648\u064a\u0633\u062a\u0639\u064a\u062f NuGet \u0645\u0643\u062a\u0628\u0629 SkiaSharp \u062a\u0644\u0642\u0627\u0626\u064a\u064b\u0627. \u0648\u064a\u064f\u0631\u0641\u0642 \u062a\u0637\u0628\u064a\u0642 \u062a\u062c\u0631\u064a\u0628\u064a \u0642\u0627\u0628\u0644 \u0644\u0644\u062a\u0634\u063a\u064a\u0644 \u0645\u0639 \u0623\u0633\u0639\u0627\u0631 \u0644\u062d\u0638\u064a\u0629 \u0645\u062d\u0627\u0643\u0627\u0629.<\/p>\n<div class=\"dev-note\"><strong>\u0627\u0633\u062a\u062e\u062f\u0627\u0645 BjfChart \u0641\u064a \u0645\u0646\u062a\u062c\u0643.<\/strong> \u0627\u0644\u0645\u0643\u062a\u0628\u0629 \u0645\u0631\u062e\u0651\u0635\u0629 \u0644\u0645\u0637\u0648\u0651\u0631\u064a SharpTrader \u0648\u0634\u0631\u0643\u0627\u0621 \u0627\u0644\u0639\u0644\u0627\u0645\u0629 \u0627\u0644\u0628\u064a\u0636\u0627\u0621 (white-label) \u0648\u0645\u0648\u0631\u0651\u062f\u064a \u0645\u0646\u0635\u0627\u062a \u0627\u0644\u062a\u062f\u0627\u0648\u0644 \u0645\u0646 \u0627\u0644\u0623\u0637\u0631\u0627\u0641 \u0627\u0644\u062b\u0627\u0644\u062b\u0629. \u0644\u0623\u0633\u0626\u0644\u0629 \u0627\u0644\u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0623\u0648 \u0634\u0631\u0648\u0637 \u0627\u0644\u062a\u0631\u062e\u064a\u0635 \u0623\u0648 \u0646\u0633\u062e\u0629 \u062a\u062c\u0631\u064a\u0628\u064a\u0629 \u0623\u0648 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629 \u0641\u064a \u062f\u0645\u062c\u0647\u0627 \u0645\u0639 \u0645\u0635\u062f\u0631 \u0628\u064a\u0627\u0646\u0627\u062a\u0643\u060c \u062a\u0648\u0627\u0635\u0644 \u0645\u0639\u0646\u0627 \u0645\u0628\u0627\u0634\u0631\u0629\u064b \u0639\u0628\u0631 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0623\u062f\u0646\u0627\u0647. \u0623\u062e\u0628\u0631\u0646\u0627 \u0628\u0647\u062f\u0641 .NET \u0627\u0644\u0630\u064a \u062a\u0633\u062a\u062e\u062f\u0645\u0647 \u0648\u0628\u0634\u0643\u0644 \u0645\u0635\u062f\u0631 \u0628\u064a\u0627\u0646\u0627\u062a\u0643\u060c \u0648\u0633\u0646\u0631\u062f \u062e\u0644\u0627\u0644 \u064a\u0648\u0645 \u0639\u0645\u0644 \u0648\u0627\u062d\u062f.<\/div>\n<p><!-- ============================================================ --><br \/>\n<!-- CONTACT                                                      --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"contact\">\u062c\u0647\u0627\u062a \u0627\u062a\u0635\u0627\u0644 \u0627\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646<\/h2>\n<p>\u062a\u0630\u0647\u0628 \u062c\u0645\u064a\u0639 \u0623\u0633\u0626\u0644\u0629 \u0627\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646 \u0625\u0644\u0649 \u0627\u0644\u0641\u0631\u064a\u0642 \u0646\u0641\u0633\u0647 \u0627\u0644\u0630\u064a \u064a\u0628\u0646\u064a \u0627\u0644\u0645\u0646\u0635\u0629. \u0644\u0623\u0633\u0626\u0644\u0629 \u0648\u0627\u062c\u0647\u0629 \u0627\u0644\u0631\u0648\u0628\u0648\u062a\u0627\u062a \u0648EasyFIX\u060c \u0627\u0630\u0643\u0631 \u0625\u0635\u062f\u0627\u0631 SharpTrader \u0648\u0646\u0648\u0639 \u062d\u0633\u0627\u0628\u0643\u061b \u0648\u0644\u0640 BjfChart\u060c \u0627\u0630\u0643\u0631 \u0647\u062f\u0641 .NET \u0648\u0645\u0635\u062f\u0631 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a.<\/p>\n<table class=\"dev-contact\">\n<tbody>\n<tr>\n<td><span class=\"k\">\u0627\u0644\u0628\u0631\u064a\u062f \u0627\u0644\u0625\u0644\u0643\u062a\u0631\u0648\u0646\u064a<\/span><span class=\"v\"><a href=\"mailto:support@bjftradinggroup.com\">support@bjftradinggroup.com<\/a><\/span><span class=\"s\">\u0627\u0644\u0623\u0646\u0633\u0628 \u0644\u0623\u0645\u062b\u0644\u0629 \u0627\u0644\u0634\u064a\u0641\u0631\u0629 \u0648\u0627\u0644\u0645\u0648\u0627\u0635\u0641\u0627\u062a \u0648\u0627\u0644\u062a\u0631\u062e\u064a\u0635<\/span><\/td>\n<td><span class=\"k\">\u0627\u0644\u0647\u0627\u062a\u0641<\/span><span class=\"v\"><a href=\"tel:+19055995507\">+1 (905) 599-5507<\/a><\/span><span class=\"s\">\u0645\u0646 \u0627\u0644\u0625\u062b\u0646\u064a\u0646 \u0625\u0644\u0649 \u0627\u0644\u062c\u0645\u0639\u0629\u060c 9:00 \u0625\u0644\u0649 18:00 \u0628\u062a\u0648\u0642\u064a\u062a \u0627\u0644\u0634\u0631\u0642 \u0627\u0644\u0623\u0645\u0631\u064a\u0643\u064a (\u062a\u0648\u0631\u0648\u0646\u062a\u0648)<\/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\">\u0644\u0644\u0623\u0633\u0626\u0644\u0629 \u0627\u0644\u0633\u0631\u064a\u0639\u0629 \u0648\u0627\u0644\u0645\u062a\u0627\u0628\u0639\u0627\u062a<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>BJF Trading Group Inc., 3397 Mistwell Crescent, Oakville, ON, L6L 0A2, Canada. \u0644\u0644\u0627\u0633\u062a\u0641\u0633\u0627\u0631\u0627\u062a \u0627\u0644\u0639\u0627\u0645\u0629: <a href=\"https:\/\/bjftradinggroup.com\/contacts\/\">\u0635\u0641\u062d\u0629 \u0627\u0644\u0627\u062a\u0635\u0627\u0644<\/a>.<\/p>\n<p><!-- ============================================================ --><br \/>\n<!-- FAQ                                                          --><br \/>\n<!-- ============================================================ --><\/p>\n<h2 id=\"faq\">\u0627\u0644\u0623\u0633\u0626\u0644\u0629 \u0627\u0644\u0634\u0627\u0626\u0639\u0629<\/h2>\n<div class=\"dev-faq\">\n<details>\n<summary>\u0645\u0627 \u0627\u0644\u0644\u063a\u0629 \u0627\u0644\u062a\u064a \u062a\u0633\u062a\u062e\u062f\u0645\u0647\u0627 \u0631\u0648\u0628\u0648\u062a\u0627\u062a SharpTrader\u061f<\/summary>\n<div class=\"a\">C#. \u0627\u0644\u0631\u0648\u0628\u0648\u062a \u0635\u0646\u0641 \u064a\u0631\u062b \u0627\u0644\u0635\u0646\u0641 \u0627\u0644\u0623\u0633\u0627\u0633\u064a Bot \u0641\u064a \u0627\u0644\u0645\u0646\u0635\u0629 \u0648\u064a\u0646\u0641\u0651\u0630 \u0645\u0639\u0627\u0644\u062c\u0627\u062a \u0623\u062d\u062f\u0627\u062b \u0644\u0644\u062a\u0647\u064a\u0626\u0629 \u0648\u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0627\u0644\u0644\u062d\u0638\u064a\u0629 \u0648\u062a\u063a\u064a\u0651\u0631\u0627\u062a \u0627\u0644\u0645\u0631\u0627\u0643\u0632 \u0648\u062a\u062d\u062f\u064a\u062b\u0627\u062a \u062d\u0627\u0644\u0629 \u0627\u0644\u0623\u0648\u0627\u0645\u0631. \u064a\u064f\u062a\u0631\u062c\u064e\u0645 \u062f\u0627\u062e\u0644 SharpTrader \u0648\u064a\u0639\u0645\u0644 \u062c\u0646\u0628\u064b\u0627 \u0625\u0644\u0649 \u062c\u0646\u0628 \u0645\u0639 \u0627\u0644\u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a \u0627\u0644\u0645\u062f\u0645\u062c\u0629.<\/div>\n<\/details>\n<details>\n<summary>\u0647\u0644 \u064a\u0645\u0643\u0646 \u0644\u0631\u0648\u0628\u0648\u062a \u0648\u0627\u062d\u062f \u0627\u0644\u062a\u062f\u0627\u0648\u0644 \u0645\u0639 \u0639\u062f\u0629 \u0648\u0633\u0637\u0627\u0621 \u0623\u0648 \u0645\u0646\u0635\u0627\u062a \u0641\u064a \u0627\u0644\u0648\u0642\u062a \u0646\u0641\u0633\u0647\u061f<\/summary>\n<div class=\"a\">\u0646\u0639\u0645. \u0643\u0644 \u0627\u0633\u062a\u062f\u0639\u0627\u0621 \u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0633\u0648\u0642 \u0623\u0648 \u0644\u0644\u0623\u0648\u0627\u0645\u0631 \u064a\u0623\u062e\u0630 \u0631\u0642\u0645 \u062c\u0644\u0633\u0629\u060c \u0648\u0627\u0644\u062c\u0644\u0633\u0629 \u0647\u064a \u062d\u0633\u0627\u0628 \u0648\u0627\u062d\u062f \u0645\u062a\u0635\u0644 \u0644\u062f\u0649 \u0648\u0633\u064a\u0637 \u0623\u0648 \u0645\u0646\u0635\u0629. \u064a\u0645\u0643\u0646 \u0644\u0644\u0631\u0648\u0628\u0648\u062a \u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0645\u0646 \u062c\u0644\u0633\u0629 \u0648\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0625\u0644\u0649 \u0623\u062e\u0631\u0649\u060c \u0648\u0647\u0643\u0630\u0627 \u064a\u064f\u0643\u062a\u0628 \u0645\u0646\u0637\u0642 \u0627\u0644\u062a\u062f\u0627\u0648\u0644 \u0645\u062a\u0639\u062f\u062f \u0627\u0644\u0648\u0633\u0637\u0627\u0621 \u0648\u0639\u0628\u0631 \u0627\u0644\u0645\u0646\u0635\u0627\u062a.<\/div>\n<\/details>\n<details>\n<summary>\u0645\u0627 \u0647\u0648 EasyFIX API \u0648\u0644\u0645\u0646 \u0647\u0648 \u0645\u0648\u062c\u0651\u0647\u061f<\/summary>\n<div class=\"a\">EasyFIX \u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 FIX \u0645\u0628\u0633\u0651\u0637 \u064a\u062a\u064a\u062d \u0644\u0644\u0628\u0631\u0627\u0645\u062c \u0627\u0644\u062e\u0627\u0631\u062c\u064a\u0629 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0628\u0640 SharpTrader \u0643\u0628\u0648\u0627\u0628\u0629 \u062a\u0646\u0641\u064a\u0630. \u0648\u0647\u0648 \u0645\u0648\u062c\u0651\u0647 \u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646 \u0627\u0644\u0630\u064a\u0646 \u064a\u062d\u062a\u0641\u0638\u0648\u0646 \u0628\u0645\u062d\u0631\u0651\u0643\u0647\u0645 \u0627\u0644\u062e\u0627\u0635 \u062e\u0627\u0631\u062c \u0627\u0644\u0645\u0646\u0635\u0629 \u0648\u064a\u0631\u064a\u062f\u0648\u0646 \u0627\u0633\u062a\u0642\u0628\u0627\u0644 \u0627\u0644\u0623\u0633\u0639\u0627\u0631 \u0648\u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u0623\u0648\u0627\u0645\u0631 \u0639\u0628\u0631 \u0645\u0648\u0635\u0650\u0651\u0644\u0627\u062a SharpTrader \u0628\u0627\u0644\u0648\u0633\u0637\u0627\u0621 \u0648\u0627\u0644\u0645\u0646\u0635\u0627\u062a. \u062a\u064f\u0642\u062f\u064e\u0651\u0645 \u0627\u0644\u0645\u0648\u0627\u0635\u0641\u0627\u062a \u0648\u0627\u062a\u0635\u0627\u0644 \u062a\u062c\u0631\u064a\u0628\u064a \u0639\u0646\u062f \u0627\u0644\u0637\u0644\u0628.<\/div>\n<\/details>\n<details>\n<summary>\u0647\u0644 BjfChart \u0645\u062a\u0627\u062d\u0629 \u0628\u0634\u0643\u0644 \u0645\u0646\u0641\u0635\u0644 \u0639\u0646 SharpTrader\u061f<\/summary>\n<div class=\"a\">\u0646\u0639\u0645. BjfChart \u0645\u0643\u062a\u0628\u0629 .NET \u0645\u0633\u062a\u0642\u0644\u0629\u060c \u0645\u0644\u0641 DLL \u0648\u0627\u062d\u062f \u064a\u0633\u062a\u0647\u062f\u0641 net48 \u0648net8.0-windows\u060c \u0648\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 SkiaSharp. \u0648\u0647\u064a \u0645\u0631\u062e\u0651\u0635\u0629 \u0644\u0645\u0637\u0648\u0651\u0631\u064a SharpTrader \u0648\u0634\u0631\u0643\u0627\u0621 \u0627\u0644\u0639\u0644\u0627\u0645\u0629 \u0627\u0644\u0628\u064a\u0636\u0627\u0621 \u0648\u0645\u0648\u0631\u0651\u062f\u064a \u0645\u0646\u0635\u0627\u062a \u0627\u0644\u062a\u062f\u0627\u0648\u0644. \u062a\u0648\u0627\u0635\u0644 \u0645\u0639 support@bjftradinggroup.com \u0644\u0644\u0627\u0637\u0644\u0627\u0639 \u0639\u0644\u0649 \u0627\u0644\u0634\u0631\u0648\u0637 \u0648\u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0646\u0633\u062e\u0629 \u062a\u062c\u0631\u064a\u0628\u064a\u0629.<\/div>\n<\/details>\n<details>\n<summary>\u0647\u0644 \u062a\u0646\u0641\u0651\u0630 \u0644\u0648\u062d\u0629 \u0627\u0644\u062a\u062f\u0627\u0648\u0644 \u0641\u064a BjfChart \u0627\u0644\u0623\u0648\u0627\u0645\u0631\u061f<\/summary>\n<div class=\"a\">\u0644\u0627. \u062a\u0637\u0644\u0642 \u0627\u0644\u0644\u0648\u062d\u0629 \u0623\u062d\u062f\u0627\u062b\u064b\u0627 (\u0625\u0631\u0633\u0627\u0644 \u0623\u0645\u0631\u060c \u0637\u0644\u0628 \u0625\u063a\u0644\u0627\u0642 \u0645\u0631\u0643\u0632\u060c \u062a\u0639\u062f\u064a\u0644 \u0645\u0631\u0643\u0632 \u0628\u0639\u062f \u0633\u062d\u0628 \u062e\u0637 \u0648\u0642\u0641 \u0627\u0644\u062e\u0633\u0627\u0631\u0629 \u0623\u0648 \u062c\u0646\u064a \u0627\u0644\u0623\u0631\u0628\u0627\u062d) \u0648\u064a\u0648\u062c\u0651\u0647\u0647\u0627 \u0627\u0644\u062a\u0637\u0628\u064a\u0642 \u0627\u0644\u0645\u0636\u064a\u0641 \u0625\u0644\u0649 \u0637\u0628\u0642\u0629 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0647\u060c \u0645\u062b\u0644 \u062c\u0644\u0633\u0629 FIX API \u0623\u0648 \u062c\u0633\u0631 \u0645\u0639 \u0627\u0644\u0648\u0633\u064a\u0637 \u0623\u0648 SharpTrader \u0639\u0628\u0631 EasyFIX.<\/div>\n<\/details>\n<details>\n<summary>\u0647\u0644 \u064a\u0645\u0643\u0646\u0646\u064a \u0625\u0636\u0627\u0641\u0629 \u0645\u0624\u0634\u0631\u0627\u062a\u064a \u0627\u0644\u062e\u0627\u0635\u0629 \u0625\u0644\u0649 BjfChart\u061f<\/summary>\n<div class=\"a\">\u0646\u0639\u0645. \u0646\u0641\u0651\u0630 \u0627\u0644\u0648\u0627\u062c\u0647\u0629 IIndicator \u0623\u0648 \u0627\u0634\u062a\u0642 \u0645\u0646 IndicatorBase\u060c \u0648\u0623\u0639\u062f \u0633\u0644\u0633\u0644\u0629 \u0623\u0648 \u0623\u0643\u062b\u0631 \u0645\u062a\u0648\u0627\u0641\u0642\u0629 \u0645\u0639 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0634\u0645\u0648\u0639\u060c \u0648\u0627\u062e\u062a\u0631 \u0627\u0644\u0639\u0631\u0636 \u0643\u062a\u0631\u0627\u0643\u0628 \u0623\u0648 \u0641\u064a \u0644\u0648\u062d\u0629 \u0641\u0631\u0639\u064a\u0629\u060c \u0648\u0633\u062c\u0651\u0644 \u0627\u0644\u0645\u0624\u0634\u0631 \u0644\u064a\u0638\u0647\u0631 \u0641\u064a \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0646\u0642\u0631 \u0628\u0632\u0631 \u0627\u0644\u0641\u0623\u0631\u0629 \u0627\u0644\u0623\u064a\u0645\u0646 \u0648\u064a\u064f\u062d\u0641\u0638 \u0641\u064a \u0627\u0644\u062a\u062e\u0637\u064a\u0637\u0627\u062a.<\/div>\n<\/details>\n<details>\n<summary>\u0647\u0644 \u0627\u0644\u0634\u064a\u0641\u0631\u0629 \u0627\u0644\u0645\u0635\u062f\u0631\u064a\u0629 \u0644\u0640 SharpTrader \u0623\u0648 BjfChart \u0645\u0639\u0631\u0648\u0636\u0629 \u0644\u0644\u0628\u064a\u0639\u061f<\/summary>\n<div class=\"a\">\u0644\u0627. \u062a\u0631\u062e\u0651\u0635 BJF Trading Group \u0627\u0644\u0646\u0633\u062e \u0627\u0644\u0645\u062a\u0631\u062c\u064e\u0645\u0629 \u0648\u062a\u0648\u0641\u0651\u0631 \u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u0648\u0627\u062c\u0647\u0627\u062a \u0627\u0644\u0628\u0631\u0645\u062c\u064a\u0629 \u0648\u0627\u0644\u062a\u0648\u062b\u064a\u0642 \u0648\u0627\u0644\u062f\u0639\u0645. \u0644\u0627 \u062a\u064f\u0628\u0627\u0639 \u0627\u0644\u0634\u064a\u0641\u0631\u0629 \u0627\u0644\u0645\u0635\u062f\u0631\u064a\u0629 \u0648\u0644\u0627 \u064a\u064f\u0641\u0635\u062d \u0639\u0646\u0647\u0627 \u0636\u0645\u0646 \u0623\u064a \u0628\u0631\u0646\u0627\u0645\u062c.<\/div>\n<\/details>\n<\/div>\n<p><!-- ============================================================ --><br \/>\n<!-- Newsletter signup                                            --><br \/>\n<!-- ============================================================ --><\/p>\n<div class=\"dev-signup\">\n<h3>\u0627\u0634\u062a\u0631\u0643 \u0641\u064a \u0623\u0628\u062d\u0627\u062b \u0627\u0644\u062a\u062f\u0627\u0648\u0644 \u0645\u0646 BJF<\/h3>\n<p>\u0645\u0642\u0627\u0644\u0627\u062a \u062c\u062f\u064a\u062f\u0629 \u0648\u0623\u0648\u0631\u0627\u0642 \u0628\u062d\u062b\u064a\u0629 \u0648\u0625\u0635\u062f\u0627\u0631\u0627\u062a \u0645\u0646\u062a\u062c\u0627\u062a\u060c \u062a\u0635\u0644\u0643 \u0641\u0648\u0631 \u0646\u0634\u0631\u0647\u0627.<\/p>\n<div class='_form_31'><\/div><script type='text\/javascript' src='https:\/\/bjftradinggroup.activehosted.com\/f\/embed.php?static=0&id=31&6AC48F0F7F4A9&nostyles=0&preview=0'><\/script><\/div>\n<p><!-- ============================================================ --><br \/>\n<!-- FINAL CTA                                                    --><br \/>\n<!-- ============================================================ --><\/p>\n<div class=\"dev-cta\">\n<h2>\u0623\u062e\u0628\u0631\u0646\u0627 \u0628\u0645\u0627 \u062a\u0628\u0646\u064a\u0647<\/h2>\n<p>\u0631\u0648\u0628\u0648\u062a \u0644\u062e\u0635\u0648\u0635\u064a\u0629 \u0645\u0639\u064a\u0651\u0646\u0629 \u0644\u062f\u0649 \u0648\u0633\u064a\u0637\u060c \u0623\u0648 \u0645\u062d\u0631\u0651\u0643 \u062e\u0627\u0631\u062c\u064a \u064a\u062d\u062a\u0627\u062c \u0625\u0644\u0649 \u0628\u0648\u0627\u0628\u0629 \u062a\u0646\u0641\u064a\u0630\u060c \u0623\u0648 \u0645\u0646\u0635\u0629 \u062a\u062d\u062a\u0627\u062c \u0625\u0644\u0649 \u0631\u0633\u0648\u0645 \u0628\u064a\u0627\u0646\u064a\u0629 \u0628\u062d\u0644\u0648\u0644 \u064a\u0648\u0645 \u0627\u0644\u062c\u0645\u0639\u0629. \u0631\u0633\u0627\u0644\u0629 \u0628\u0631\u064a\u062f \u0625\u0644\u0643\u062a\u0631\u0648\u0646\u064a \u0648\u0627\u062d\u062f\u0629 \u0628\u0627\u0644\u062a\u0641\u0627\u0635\u064a\u0644\u060c \u0648\u0631\u062f \u0648\u0627\u062d\u062f \u0628\u0627\u0644\u062e\u0637\u0648\u0629 \u0627\u0644\u062a\u0627\u0644\u064a\u0629.<\/p>\n<p><a class=\"dev-btn\" href=\"mailto:support@bjftradinggroup.com\">\u0631\u0627\u0633\u0644 \u0641\u0631\u064a\u0642 \u0627\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646<\/a> <a class=\"dev-btn-ghost\" href=\"https:\/\/t.me\/bjftradinggroup\">\u0631\u0627\u0633\u0644\u0646\u0627 \u0639\u0644\u0649 Telegram<\/a><\/p>\n<\/div>\n<p class=\"dev-disc\">\u062a\u0637\u0648\u0651\u0631 BJF Trading Group Inc. \u0623\u062f\u0648\u0627\u062a \u0628\u0631\u0645\u062c\u064a\u0629 \u0644\u0644\u0645\u062a\u062f\u0627\u0648\u0644\u064a\u0646 \u0648\u0627\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646 \u0630\u0648\u064a \u0627\u0644\u062e\u0628\u0631\u0629. \u0644\u0633\u0646\u0627 \u0648\u0633\u064a\u0637\u064b\u0627 \u0648\u0644\u0627 \u0645\u0624\u0633\u0633\u0629 \u0645\u0627\u0644\u064a\u0629 \u0648\u0644\u0627 \u0645\u0633\u062a\u0634\u0627\u0631\u064b\u0627 \u0627\u0633\u062a\u062b\u0645\u0627\u0631\u064a\u064b\u0627\u060c \u0648\u0644\u0627 \u0646\u0646\u0641\u0651\u0630 \u0635\u0641\u0642\u0627\u062a \u0648\u0644\u0627 \u0646\u062f\u064a\u0631 \u0623\u0645\u0648\u0627\u0644\u064b\u0627. \u0623\u0645\u062b\u0644\u0629 \u0627\u0644\u0634\u064a\u0641\u0631\u0629 \u0641\u064a \u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062d\u0629 \u062a\u0648\u0636\u064a\u062d\u064a\u0629 \u0648\u0642\u062f \u062a\u062e\u062a\u0644\u0641 \u0639\u0646 \u0627\u0644\u0645\u0631\u062c\u0639 \u0627\u0644\u062d\u0627\u0644\u064a \u0644\u0644\u0645\u0643\u062a\u0628\u0629\u061b \u0631\u0627\u062c\u0639 \u062f\u0627\u0626\u0645\u064b\u0627 \u0627\u0644\u062a\u0648\u062b\u064a\u0642 \u0627\u0644\u062e\u0627\u0635 \u0628\u0625\u0635\u062f\u0627\u0631 \u0645\u0646\u0635\u062a\u0643. \u064a\u0646\u0637\u0648\u064a \u062a\u062f\u0627\u0648\u0644 \u0627\u0644\u0641\u0648\u0631\u0643\u0633 \u0648\u0639\u0642\u0648\u062f \u0627\u0644\u0641\u0631\u0648\u0642\u0627\u062a \u0648\u0627\u0644\u0639\u0645\u0644\u0627\u062a \u0627\u0644\u0645\u0634\u0641\u0631\u0629 \u0639\u0644\u0649 \u0645\u062e\u0627\u0637\u0631 \u0639\u0627\u0644\u064a\u0629 \u0644\u0644\u062e\u0633\u0627\u0631\u0629 \u0648\u0644\u0627 \u064a\u0646\u0627\u0633\u0628 \u062c\u0645\u064a\u0639 \u0627\u0644\u0645\u0633\u062a\u062b\u0645\u0631\u064a\u0646. \u0644\u0627 \u0634\u064a\u0621 \u0641\u064a \u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062d\u0629 \u064a\u064f\u0639\u062f\u0651 \u0646\u0635\u064a\u062d\u0629 \u0645\u0627\u0644\u064a\u0629 \u0623\u0648 \u0648\u0639\u062f\u064b\u0627 \u0628\u0627\u0644\u0631\u0628\u062d.<\/p>\n<\/div>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\"@type\":\"Question\",\"name\":\"Which language do SharpTrader bots use?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"C#. A bot is a class that inherits the platform's base Bot class and implements event handlers for initialization, ticks, position changes and order status updates. It is compiled inside SharpTrader and runs alongside the built-in strategies.\"}},\n    {\"@type\":\"Question\",\"name\":\"Can one SharpTrader bot trade several brokers or exchanges at the same time?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Every market data and order call takes a session index, and a session is one connected broker or exchange account. A bot can read quotes from one session and send orders to another.\"}},\n    {\"@type\":\"Question\",\"name\":\"What is the EasyFIX API and who is it for?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"EasyFIX is a simplified FIX protocol that lets external software connect to SharpTrader as an execution gateway, receiving quotes and sending orders through SharpTrader's broker and exchange connectors. The specification and a test connection are provided on request.\"}},\n    {\"@type\":\"Question\",\"name\":\"Is BjfChart available separately from SharpTrader?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. BjfChart is a standalone .NET charting library, a single DLL targeting net48 and net8.0-windows, built on SkiaSharp. It is licensed to SharpTrader developers, white-label partners and terminal vendors; contact support@bjftradinggroup.com for terms and a demo build.\"}},\n    {\"@type\":\"Question\",\"name\":\"Does the BjfChart trading panel execute orders?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"No. The panel raises events for order submission, position close and position modification, and the host application routes them to its own execution layer such as a FIX API session, a broker bridge or SharpTrader through EasyFIX.\"}},\n    {\"@type\":\"Question\",\"name\":\"Can I add my own indicators to BjfChart?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Implement the IIndicator interface or subclass IndicatorBase, return series aligned to the candle list, choose overlay or sub-panel rendering, and register the indicator so it appears in the menu and in saved layouts.\"}},\n    {\"@type\":\"Question\",\"name\":\"Is the source code of SharpTrader or BjfChart for sale?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"No. BJF Trading Group licenses compiled builds and provides API access, documentation and support. Source code is not sold or disclosed under any program.\"}}\n  ],\n  \"speakable\": {\"@type\":\"SpeakableSpecification\",\"cssSelector\":[\".dev-hero h1\",\".dev-tbl\"]}\n}\n<\/script><br \/>\n<\/p>","protected":false},"excerpt":{"rendered":"<p>\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646 &middot; \u0645\u0646\u0635\u0629 SharpTrader \u0627\u0628\u0646\u0650 \u0639\u0644\u0649 SharpTrader: \u0648\u0627\u062c\u0647\u0629 C# \u0644\u0644\u0631\u0648\u0628\u0648\u062a\u0627\u062a\u060c \u0648\u0627\u062a\u0635\u0627\u0644 EasyFIX\u060c \u0648\u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart SharpTrader \u0645\u0646\u0635\u0629 \u062a\u062f\u0627\u0648\u0644 \u0645\u0628\u0646\u064a\u0629 \u0644\u0644\u0645\u062a\u062f\u0627\u0648\u0644\u064a\u0646 \u0644\u0627 \u0644\u0644\u0648\u0633\u0637\u0627\u0621\u060c \u0648\u0647\u064a \u0645\u0641\u062a\u0648\u062d\u0629 \u0644\u0645\u0646 \u064a\u0643\u062a\u0628\u0648\u0646 \u0627\u0644\u0634\u064a\u0641\u0631\u0629 \u0627\u0644\u0628\u0631\u0645\u062c\u064a\u0629 \u0644\u0647\u0645. \u0627\u0643\u062a\u0628 \u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a\u0643 \u0627\u0644\u062e\u0627\u0635\u0629 \u0628\u0644\u063a\u0629 C# \u062f\u0627\u062e\u0644 \u0627\u0644\u0645\u0646\u0635\u0629\u060c \u0623\u0648 \u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0627\u0644\u062e\u0627\u0631\u062c\u064a\u0629 \u0628\u0645\u062d\u0631\u0651\u0643 \u0627\u0644\u062a\u0646\u0641\u064a\u0630 \u0641\u064a\u0647\u0627 \u0639\u0628\u0631 EasyFIX API\u060c \u0623\u0648 \u0623\u0636\u0641 \u0645\u0643\u062a\u0628\u062a\u0646\u0627 \u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0634\u0645\u0648\u0639 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 \u0627\u0644\u0645\u0633\u0631\u064e\u0651\u0639\u0629 \u0628\u0645\u0639\u0627\u0644\u062c \u0627\u0644\u0631\u0633\u0648\u0645\u064a\u0627\u062a (GPU) \u0625\u0644\u0649 \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u062e\u0627\u0635\u0629 \u0627\u0644\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 .NET. \u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0627\u062a C# \u0645\u0639 \u0623\u0633\u0639\u0627\u0631 \u0644\u062d\u0638\u064a\u0629 \u0648\u062c\u0644\u0633\u0627\u062a \u0645\u062a\u0639\u062f\u062f\u0629 \u0627\u0644\u0648\u0633\u0637\u0627\u0621 EasyFIX API: \u0623\u0643\u062b\u0631 \u0645\u0646&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.6 (Yoast SEO v28.6) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646<\/title>\n<meta name=\"description\" content=\"\u0627\u0628\u0646\u0650 \u0639\u0644\u0649 SharpTrader: \u0627\u0643\u062a\u0628 \u0631\u0648\u0628\u0648\u062a\u0627\u062a \u062a\u062f\u0627\u0648\u0644 \u0628\u0644\u063a\u0629 C#\u060c \u0648\u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0639\u0628\u0631 EasyFIX API\u060c \u0648\u0627\u062f\u0645\u062c \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart \u0641\u064a \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 .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\/ar\/developers\/\" \/>\n<meta property=\"og:locale\" content=\"ar_AR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646\" \/>\n<meta property=\"og:description\" content=\"\u0627\u0628\u0646\u0650 \u0639\u0644\u0649 SharpTrader: \u0627\u0643\u062a\u0628 \u0631\u0648\u0628\u0648\u062a\u0627\u062a \u062a\u062f\u0627\u0648\u0644 \u0628\u0644\u063a\u0629 C#\u060c \u0648\u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0639\u0628\u0631 EasyFIX API\u060c \u0648\u0627\u062f\u0645\u062c \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart \u0641\u064a \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 .NET.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bjftradinggroup.com\/ar\/developers\/\" \/>\n<meta property=\"og:site_name\" content=\"BJF Trading Group Inc - Software for Forex Traders\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-25T15:46:18+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=\"\u0648\u0642\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u064f\u0642\u062f\u0651\u0631\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u062f\u0642\u064a\u0642\u062a\u0627\u0646\" \/>\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\":\"\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646\",\"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-09-25T15:46:18+00:00\",\"description\":\"\u0627\u0628\u0646\u0650 \u0639\u0644\u0649 SharpTrader: \u0627\u0643\u062a\u0628 \u0631\u0648\u0628\u0648\u062a\u0627\u062a \u062a\u062f\u0627\u0648\u0644 \u0628\u0644\u063a\u0629 C#\u060c \u0648\u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0639\u0628\u0631 EasyFIX API\u060c \u0648\u0627\u062f\u0645\u062c \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart \u0641\u064a \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 .NET.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/#breadcrumb\"},\"inLanguage\":\"ar\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bjftradinggroup.com\\\/developers\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@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\":\"BJF Trading Group Inc - Software for Forex Traders\",\"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\":\"ar\"},{\"@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":"\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646","description":"\u0627\u0628\u0646\u0650 \u0639\u0644\u0649 SharpTrader: \u0627\u0643\u062a\u0628 \u0631\u0648\u0628\u0648\u062a\u0627\u062a \u062a\u062f\u0627\u0648\u0644 \u0628\u0644\u063a\u0629 C#\u060c \u0648\u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0639\u0628\u0631 EasyFIX API\u060c \u0648\u0627\u062f\u0645\u062c \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart \u0641\u064a \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 .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\/ar\/developers\/","og_locale":"ar_AR","og_type":"article","og_title":"\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646","og_description":"\u0627\u0628\u0646\u0650 \u0639\u0644\u0649 SharpTrader: \u0627\u0643\u062a\u0628 \u0631\u0648\u0628\u0648\u062a\u0627\u062a \u062a\u062f\u0627\u0648\u0644 \u0628\u0644\u063a\u0629 C#\u060c \u0648\u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0639\u0628\u0631 EasyFIX API\u060c \u0648\u0627\u062f\u0645\u062c \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart \u0641\u064a \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 .NET.","og_url":"https:\/\/bjftradinggroup.com\/ar\/developers\/","og_site_name":"BJF Trading Group Inc - Software for Forex Traders","article_modified_time":"2026-09-25T15:46:18+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":{"\u0648\u0642\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u064f\u0642\u062f\u0651\u0631":"\u062f\u0642\u064a\u0642\u062a\u0627\u0646"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/bjftradinggroup.com\/developers\/","url":"https:\/\/bjftradinggroup.com\/developers\/","name":"\u0644\u0644\u0645\u0637\u0648\u0651\u0631\u064a\u0646","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-09-25T15:46:18+00:00","description":"\u0627\u0628\u0646\u0650 \u0639\u0644\u0649 SharpTrader: \u0627\u0643\u062a\u0628 \u0631\u0648\u0628\u0648\u062a\u0627\u062a \u062a\u062f\u0627\u0648\u0644 \u0628\u0644\u063a\u0629 C#\u060c \u0648\u0627\u0631\u0628\u0637 \u0628\u0631\u0627\u0645\u062c\u0643 \u0639\u0628\u0631 EasyFIX API\u060c \u0648\u0627\u062f\u0645\u062c \u0645\u0643\u062a\u0628\u0629 \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064a\u0627\u0646\u064a\u0629 BjfChart \u0641\u064a \u0645\u0646\u0635\u062a\u0643 \u0627\u0644\u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 .NET.","breadcrumb":{"@id":"https:\/\/bjftradinggroup.com\/developers\/#breadcrumb"},"inLanguage":"ar","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bjftradinggroup.com\/developers\/"]}]},{"@type":"ImageObject","inLanguage":"ar","@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":"BJF Trading Group Inc - Software for Forex Traders","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":"ar"},{"@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\/ar\/wp-json\/wp\/v2\/pages\/8075","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bjftradinggroup.com\/ar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/bjftradinggroup.com\/ar\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/bjftradinggroup.com\/ar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bjftradinggroup.com\/ar\/wp-json\/wp\/v2\/comments?post=8075"}],"version-history":[{"count":8,"href":"https:\/\/bjftradinggroup.com\/ar\/wp-json\/wp\/v2\/pages\/8075\/revisions"}],"predecessor-version":[{"id":13910,"href":"https:\/\/bjftradinggroup.com\/ar\/wp-json\/wp\/v2\/pages\/8075\/revisions\/13910"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bjftradinggroup.com\/ar\/wp-json\/wp\/v2\/media\/8077"}],"wp:attachment":[{"href":"https:\/\/bjftradinggroup.com\/ar\/wp-json\/wp\/v2\/media?parent=8075"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}