{"id":3912,"date":"2025-04-04T07:37:01","date_gmt":"2025-04-04T07:37:01","guid":{"rendered":"https:\/\/finpros.com\/ngoai-hoi-3\/"},"modified":"2025-06-24T11:01:25","modified_gmt":"2025-06-24T11:01:25","slug":"ngoai-hoi","status":"publish","type":"page","link":"https:\/\/finpros.com\/vi\/ngoai-hoi\/","title":{"rendered":"Ngo\u1ea1i h\u1ed1i"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3912\" class=\"elementor elementor-3912 elementor-3910\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-514f29bf e-con-full calculator-sub-banner e-flex e-con e-parent\" data-id=\"514f29bf\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-30eed3a2 e-con-full e-flex e-con e-child\" data-id=\"30eed3a2\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6a6ca28b elementor-widget elementor-widget-heading\" data-id=\"6a6ca28b\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Ngo\u1ea1i h\u1ed1i<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-57a15859 elementor-widget elementor-widget-heading\" data-id=\"57a15859\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Ti\u1ebfp c\u1eadn th\u1ecb tr\u01b0\u1eddng ti\u1ec1n t\u1ec7 to\u00e0n c\u1ea7u v\u1edbi t\u1ed1c \u0111\u1ed9 th\u1ef1c hi\u1ec7n nhanh ch\u00f3ng v\u00e0 ch\u00eanh l\u1ec7ch gi\u00e1 c\u00f4ng b\u1eb1ng<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-34317d48 e-con-full e-flex e-con e-child\" data-id=\"34317d48\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-2683f422 e-flex e-con-boxed e-con e-child\" data-id=\"2683f422\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-70596323 elementor-align-left calc-banner-link bread-links elementor-widget elementor-widget-breadcrumbs\" data-id=\"70596323\" data-element_type=\"widget\" data-widget_type=\"breadcrumbs.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p id=\"breadcrumbs\"><span><span><a href=\"https:\/\/finpros.com\/\">Trang ch\u1ee7<\/a><\/span><\/span><\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-82cac15 e-flex e-con-boxed e-con e-parent\" data-id=\"82cac15\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-4cfa9f9 e-con-full e-flex e-con e-child\" data-id=\"4cfa9f9\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-035247e elementor-widget elementor-widget-heading\" data-id=\"035247e\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">V\u1ec1 <span>giao d\u1ecbch ngo\u1ea1i h\u1ed1i<\/span><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ba5d5b3 elementor-widget elementor-widget-text-editor\" data-id=\"ba5d5b3\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Forex, hay ngo\u1ea1i h\u1ed1i, l\u00e0 th\u1ecb tr\u01b0\u1eddng t\u00e0i ch\u00ednh l\u1edbn nh\u1ea5t th\u1ebf gi\u1edbi. Theo Ng\u00e2n h\u00e0ng Thanh to\u00e1n Qu\u1ed1c t\u1ebf (BIS), kh\u1ed1i l\u01b0\u1ee3ng giao d\u1ecbch to\u00e0n c\u1ea7u h\u00e0ng ng\u00e0y \u0111\u1ea1t 7,51 ngh\u00ecn t\u1ef7 \u0111\u00f4 la v\u00e0o th\u00e1ng 4 n\u0103m 2022\u2014v\u00e0 v\u1eabn \u0111ang t\u0103ng l\u00ean. <br><br>C\u00e1c c\u1eb7p ti\u1ec1n t\u1ec7 th\u01b0\u1eddng \u0111\u01b0\u1ee3c ph\u00e2n lo\u1ea1i th\u00e0nh ch\u00ednh, ph\u1ee5 ho\u1eb7c ngo\u1ea1i lai.<br><br>C\u00e1c c\u1eb7p ti\u1ec1n t\u1ec7 ch\u00ednh bao g\u1ed3m c\u00e1c lo\u1ea1i ti\u1ec1n t\u1ec7 \u0111\u01b0\u1ee3c giao d\u1ecbch nhi\u1ec1u nh\u1ea5t tr\u00ean to\u00e0n c\u1ea7u, lu\u00f4n bao g\u1ed3m USD\u2014ch\u1eb3ng h\u1ea1n nh\u01b0 EUR\/USD, GBP\/USD ho\u1eb7c USD\/JPY. C\u00e1c c\u1eb7p ti\u1ec1n t\u1ec7 ph\u1ee5 bao g\u1ed3m c\u00e1c lo\u1ea1i ti\u1ec1n t\u1ec7 ch\u00ednh \u0111\u01b0\u1ee3c gh\u00e9p n\u1ed1i m\u00e0 kh\u00f4ng c\u00f3 USD\u2014ch\u1eb3ng h\u1ea1n nh\u01b0 EUR\/GBP, GBP\/JPY ho\u1eb7c AUD\/CAD. <br><br>C\u00e1c c\u1eb7p ti\u1ec1n t\u1ec7 ngo\u1ea1i lai k\u1ebft h\u1ee3p m\u1ed9t lo\u1ea1i ti\u1ec1n t\u1ec7 ch\u00ednh v\u1edbi m\u1ed9t lo\u1ea1i ti\u1ec1n t\u1ec7 t\u1eeb th\u1ecb tr\u01b0\u1eddng \u0111ang ph\u00e1t tri\u1ec3n ho\u1eb7c \u00edt \u0111\u01b0\u1ee3c giao d\u1ecbch\u2014ch\u1eb3ng h\u1ea1n nh\u01b0 USD\/TRY, USD\/MXN ho\u1eb7c EUR\/HUF.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-71694de elementor-align-left elementor-widget__width-auto btn-arrow-rotate elementor-widget elementor-widget-button\" data-id=\"71694de\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/my.finpros.com\/register\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t<span class=\"elementor-button-icon\">\n\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-arrow-right\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z\"><\/path><\/svg>\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">B\u1eaft \u0111\u1ea7u ngay<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-368c841 e-con-full e-flex e-con e-child\" data-id=\"368c841\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c9c4a38 elementor-widget elementor-widget-image\" data-id=\"c9c4a38\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"525\" height=\"362\" src=\"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png\" class=\"attachment-large size-large wp-image-10114\" alt=\"\" srcset=\"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png 571w, https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1-300x207.png 300w\" sizes=\"(max-width: 525px) 100vw, 525px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-651f743 e-con-full e-flex e-con e-parent\" data-id=\"651f743\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0dbe799 elementor-widget elementor-widget-heading\" data-id=\"0dbe799\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Giao d\u1ecbch ngo\u1ea1i h\u1ed1i<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1b89ca2 elementor-widget elementor-widget-text-editor\" data-id=\"1b89ca2\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>B\u1ea3ng <b>gi\u00e1<\/b> h\u00e0ng \u0111\u1ea7u tr\u00ean th\u1ecb tr\u01b0\u1eddng<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-3366d57 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"3366d57\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b9a34a2\" data-id=\"b9a34a2\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8e30713 new-table-cs elementor-widget elementor-widget-shortcode\" data-id=\"8e30713\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<!-- Chart Library -->\n<script src=\"https:\/\/unpkg.com\/lightweight-charts@3.8.0\/dist\/lightweight-charts.standalone.production.js\"><\/script>\n\n<!-- Custom CSS for full-width tabs -->\n<style type=\"text\/css\">\n    \/* Make tabs cover full length *\/\n    .mt5-data-viewer-container .category-tabs {\n        display: flex;\n        width: 100%;\n        margin-bottom: 15px;\n        border-bottom: 1px solid #ddd;\n    }\n    \n    .mt5-data-viewer-container .category-tab {\n        flex: 1;\n        text-align: center;\n        padding: 10px 5px;\n        background-color: #f8f8f8;\n        border: 1px solid #ddd;\n        border-bottom: none;\n        cursor: pointer;\n        margin: 0 2px;\n        border-radius: 5px 5px 0 0;\n        font-weight: normal;\n        transition: all 0.3s ease;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n    }\n    \n    \/* Category Icon Styles *\/\n    .mt5-data-viewer-container .category-icon {\n        width: 20px;\n        height: 20px;\n        margin-right: 7px;\n        display: inline-block;\n        background-size: contain;\n        background-position: center;\n        background-repeat: no-repeat;\n        vertical-align: middle;\n        filter: brightness(0); \/* Make icons take their color from parent *\/\n    }\n    \n    .mt5-data-viewer-container .icon-popular {\n        background-image: url('https:\/\/finpros.com\/wp-content\/plugins\/mt5-data-viewer\/assets\/icons\/popular.svg');\n    }\n    \n    .mt5-data-viewer-container .icon-forex {\n        background-image: url('https:\/\/finpros.com\/wp-content\/plugins\/mt5-data-viewer\/assets\/icons\/forex.svg');\n    }\n    \n    .mt5-data-viewer-container .icon-metals {\n        background-image: url('https:\/\/finpros.com\/wp-content\/plugins\/mt5-data-viewer\/assets\/icons\/metals.svg');\n    }\n    \n    .mt5-data-viewer-container .icon-energy {\n        background-image: url('https:\/\/finpros.com\/wp-content\/plugins\/mt5-data-viewer\/assets\/icons\/energy.svg');\n    }\n    \n    .mt5-data-viewer-container .icon-indices {\n        background-image: url('https:\/\/finpros.com\/wp-content\/plugins\/mt5-data-viewer\/assets\/icons\/indices.svg');\n    }\n    \n    .mt5-data-viewer-container .icon-crypto {\n        background-image: url('https:\/\/finpros.com\/wp-content\/plugins\/mt5-data-viewer\/assets\/icons\/crypto.svg');\n    }\n    \n    .mt5-data-viewer-container .icon-stocks {\n        background-image: url('https:\/\/finpros.com\/wp-content\/plugins\/mt5-data-viewer\/assets\/icons\/stocks.svg');\n    }\n    \n    \/* Tab States *\/\n    .mt5-data-viewer-container .category-tab {\n        color: #555;\n    }\n    \n    .mt5-data-viewer-container .category-tab:hover {\n        color: #333;\n        background-color: #f0f0f0;\n    }\n    \n    .mt5-data-viewer-container .category-tab.active {\n        color: #0073aa;\n        background-color: #ffffff;\n        border-bottom: 2px solid #0073aa;\n        font-weight: bold;\n    }\n    \n    .mt5-data-viewer-container .category-tab:hover .category-icon {\n        filter: brightness(0); \/* Black for hover *\/\n    }\n    \n    .mt5-data-viewer-container .category-tab.active .category-icon {\n        filter: brightness(0) invert(48%) sepia(85%) saturate(2245%) hue-rotate(175deg) brightness(90%) contrast(101%); \/* Blue color for active *\/\n    }\n    \n    \/* Make timeframe tabs cover full length *\/\n    .mt5-data-viewer-container .timeframe-selector {\n        display: flex;\n        width: 100%;\n        margin: 10px 0;\n    }\n    \n    .mt5-data-viewer-container .timeframe-btn {\n        flex: 1;\n        text-align: center;\n        padding: 6px 3px;\n        background-color: #f8f8f8;\n        border: 1px solid #ddd;\n        cursor: pointer;\n        margin: 0 2px;\n        border-radius: 3px;\n        font-size: 13px;\n        transition: all 0.3s ease;\n    }\n    \n    .mt5-data-viewer-container .timeframe-btn:hover {\n        background-color: #f0f0f0;\n    }\n    \n    .mt5-data-viewer-container .timeframe-btn.active {\n        background-color: #0073aa;\n        color: white;\n        border-color: #0073aa;\n    }\n    \n    \/* Improve table styling *\/\n    .mt5-data-viewer-container .mt5-market-table {\n        width: 100%;\n        border-collapse: collapse;\n    }\n    \n    .mt5-data-viewer-container .mt5-market-table th {\n        background-color: #f2f2f2;\n        padding: 10px;\n        text-align: left;\n        border-bottom: 2px solid #ddd;\n    }\n    \n    .mt5-data-viewer-container .mt5-market-table td {\n        padding: 8px 10px;\n        border-bottom: 1px solid #eee;\n    }\n    \n    .mt5-data-viewer-container .mt5-market-table tr:hover {\n        background-color: #f9f9f9;\n    }\n    \n    \/* Style for graph buttons *\/\n    .mt5-data-viewer-container .view-chart-btn,\n    .mt5-data-viewer-container .trade-btn {\n        display: inline-block;\n        background-color: #0073aa;\n        color: white;\n        border: none;\n        padding: 6px 12px;\n        border-radius: 4px;\n        cursor: pointer;\n        width: 100%;\n        box-sizing: border-box;\n        text-align: center;\n    }\n    \n    .mt5-data-viewer-container .view-chart-btn:hover,\n    .mt5-data-viewer-container .trade-btn:hover {\n        background-color: #005177;\n    }\n    \n    \/* Loading overlay for market data *\/\n    .mt5-data-viewer-container .loading-overlay {\n        position: absolute;\n        top: 0;\n        left: 0;\n        right: 0;\n        bottom: 0;\n        background-color: rgba(255, 255, 255, 0.9);\n        display: flex;\n        flex-direction: column;\n        justify-content: center;\n        align-items: center;\n        z-index: 10;\n        min-height: 200px;\n    }\n    \n    .mt5-data-viewer-container .market-data-container {\n        position: relative;\n        min-height: 200px;\n    }\n    \n    .mt5-data-viewer-container .loading-overlay .spinner {\n        width: 40px;\n        height: 40px;\n        border: 3px solid rgba(0, 115, 170, 0.3);\n        border-radius: 50%;\n        border-top-color: #0073aa;\n        animation: spin 1s ease-in-out infinite;\n        margin-bottom: 15px;\n    }\n    \n    .mt5-data-viewer-container .loading-overlay p {\n        margin: 0;\n        color: #555;\n        font-size: 14px;\n    }\n    \n    @keyframes spin {\n        to { transform: rotate(360deg); }\n    }\n\n    \/* Loading spinner for chart *\/\n    .mt5-data-viewer-container .chart-spinner {\n        display: inline-block;\n        width: 40px;\n        height: 40px;\n        margin: 40px auto;\n        border: 3px solid rgba(0, 115, 170, 0.3);\n        border-radius: 50%;\n        border-top-color: #0073aa;\n        animation: chart-spin 1s ease-in-out infinite;\n    }\n    \n    @keyframes chart-spin {\n        to { transform: rotate(360deg); }\n    }\n    \n    .mt5-data-viewer-container .chart-loading-container {\n        width: 100%;\n        height: 200px;\n        display: flex;\n        justify-content: center;\n        align-items: center;\n        background-color: rgba(255, 255, 255, 0.8);\n    }\n    \n    \/* Responsive styles for smaller screens *\/\n    @media (max-width: 768px) {\n        .mt5-data-viewer-container .category-tab {\n            padding: 8px 5px;\n            font-size: 14px;\n        }\n        \n        .mt5-data-viewer-container .category-icon {\n            width: 16px;\n            height: 16px;\n            margin-right: 5px;\n        }\n    }\n    \n    @media (max-width: 480px) {\n        .mt5-data-viewer-container .category-tab {\n            padding: 8px 3px;\n            font-size: 12px;\n        }\n        \n        .mt5-data-viewer-container .category-icon {\n            width: 14px;\n            height: 14px;\n            margin-right: 3px;\n        }\n    }\n<\/style>\n\n<div id=\"mt5-data-viewer-69e0217b1e2fc\" class=\"mt5-data-viewer-container\">\n    \n    <!-- Category Tabs -->\n    <div class=\"category-tabs\"><button class=\"category-tab active\" data-category=\"forex\"><span class=\"category-icon icon-forex\"><\/span>Ngo\u1ea1i h\u1ed1i<\/button><\/div>    \n    <!-- Market Data Table -->\n    <div class=\"market-data-container\">\n        <div class=\"loading-overlay\">\n            <div class=\"spinner\"><\/div>\n            <p>\u0110ang t\u1ea3i d\u1eef li\u1ec7u th\u1ecb tr\u01b0\u1eddng...<\/p>\n        <\/div>\n        <div class=\"market-data-content\"><\/div>\n    <\/div>\n    \n        <!-- Chart Container -->\n    <div class=\"chart-container\" style=\"display: none;\">\n        <div class=\"chart-header\">\n            <h3 class=\"chart-symbol-name\"><\/h3>\n            <button class=\"close-chart-btn\">&times;<\/button>\n        <\/div>\n        \n        <!-- Timeframe Selector -->\n        <div class=\"timeframe-selector\"><button class=\"timeframe-btn\" data-timeframe=\"M1\">M1<\/button><button class=\"timeframe-btn\" data-timeframe=\"M5\">M5<\/button><button class=\"timeframe-btn\" data-timeframe=\"M15\">M15<\/button><button class=\"timeframe-btn\" data-timeframe=\"M30\">M30<\/button><button class=\"timeframe-btn\" data-timeframe=\"H1\">H1<\/button><button class=\"timeframe-btn\" data-timeframe=\"H4\">H4<\/button><button class=\"timeframe-btn active\" data-timeframe=\"D1\">D1<\/button><button class=\"timeframe-btn\" data-timeframe=\"W1\">W1<\/button><button class=\"timeframe-btn\" data-timeframe=\"MN\">MN<\/button><\/div>        \n        <!-- Chart Element -->\n        <div class=\"chart-element\"><\/div>\n        \n        <!-- Update Status -->\n        <div class=\"chart-update-status\" style=\"text-align: right; font-size: 12px; color: #888; padding: 5px;\"><\/div>\n    <\/div>\n        \n    <!-- Error Message Container -->\n    <div class=\"error-message\" style=\"display: none;\"><\/div>\n<\/div>\n\n<script type=\"text\/javascript\">\n\/* <![CDATA[ *\/\njQuery(document).ready(function($) {\n    \/\/ Configuration variables from PHP - directly included without escaping\n    var containerId = 'mt5-data-viewer-69e0217b1e2fc';\n    var container = $('#' + containerId);\n    var defaultCategory = 'forex';\n    var ajaxUrl = 'https:\/\/finpros.com\/wp-admin\/admin-ajax.php';\n    var nonce = 'fb112200ae';\n    var refreshRate = 3000;\n    var defaultTimeframe = 'D1';\n    \n    \/\/ Chart-related variables\n    var activeSymbol = null;\n    var activeTimeframe = null;\n    var chartObj = null;\n    var candleSeriesObj = null;\n    var updaterTimer = null;\n    var lastUpdateTime = 0;\n    \n    \/\/ Initialize market data\n    loadMarketData(defaultCategory);\n    \n    \/\/ === EVENT HANDLERS ===\n    \n    \/\/ Category tabs\n    container.find('.category-tab').on('click', function() {\n        var category = $(this).data('category');\n        container.find('.category-tab').removeClass('active');\n        $(this).addClass('active');\n        loadMarketData(category);\n    });\n    \n    \/\/ View chart button\n    container.on('click', '.view-chart-btn', function() {\n        var symbol = $(this).data('symbol');\n        displayChart(symbol);\n    });\n    \n    \/\/ Close chart button\n    container.find('.close-chart-btn').on('click', function() {\n        closeChart();\n    });\n    \n    \/\/ Timeframe selector\n    container.find('.timeframe-btn').on('click', function() {\n        var timeframe = $(this).data('timeframe');\n        container.find('.timeframe-btn').removeClass('active');\n        $(this).addClass('active');\n        \n        if (activeSymbol) {\n            activeTimeframe = timeframe;\n            \/\/ Use the stored digit count from window.currentSymbolDigits\n            var digits = window.currentSymbolDigits || 5;\n            loadChartData(activeSymbol, timeframe, digits);\n            updateChartStatus(window.MT5DataViewer_getString('timeframeChanged') + ' ' + timeframe);\n        }\n    });\n    \n    \/\/ === MARKET DATA FUNCTIONS ===\n    \n    \/\/ Load market data for category\n    function loadMarketData(category) {\n        container.find('.loading-overlay').show();\n        \n        $.ajax({\n            url: ajaxUrl,\n            type: 'GET',\n            data: {\n                action: 'get_mt5_data',\n                nonce: nonce,\n                category: category\n            },\n            success: function(response) {\n                container.find('.loading-overlay').hide();\n                \n                if (response.success) {\n                    if (response.data) {\n                        var tableHtml = generateMarketTable(response.data);\n                        container.find('.market-data-content').html(tableHtml);\n                        startPriceUpdates();\n                    } else {\n                        showError(window.MT5DataViewer_getString('errorLoadingData') + ': ' + window.MT5DataViewer_getString('noDataAvailable'));\n                    }\n                } else {\n                    showError(window.MT5DataViewer_getString('errorLoadingData') + ': ' + (response.message || window.MT5DataViewer_getString('noDataAvailable')));\n                }\n            },\n            error: function(xhr, status, error) {\n                container.find('.loading-overlay').hide();\n                showError(window.MT5DataViewer_getString('ajaxError') + ': ' + error);\n            }\n        });\n    }\n    \n    \/\/ Generate market table HTML\n    function generateMarketTable(data) {\n        var tableHtml = '<table class=\"mt5-market-table\"><thead><tr><th>Symbol<\/th><th>Bid<\/th><th>Ask<\/th><th>Change<\/th><th>Graph<\/th><th>Action<\/th><\/tr><\/thead><tbody>';\n        \n        for (var symbol in data) {\n            \n            var symbolData = data[symbol];\n            var digits = symbolData.digit || 5;\n            \n            \/\/ Remove . suffix from display name\n            var displaySymbol = symbol.replace(\/\\.$\/, '');\n            \n            tableHtml += '<tr data-symbol=\"' + symbol + '\" data-digit=\"' + digits + '\">';\n            tableHtml += '<td class=\"symbol-name\">' + displaySymbol + '<\/td>';\n            tableHtml += '<td class=\"bid-price\">' + formatPrice(symbolData.bid, digits) + '<\/td>';\n            tableHtml += '<td class=\"ask-price\">' + formatPrice(symbolData.ask, digits) + '<\/td>';\n            tableHtml += '<td class=\"price-change-cell\">' + formatPriceChange(symbolData.bid, symbolData.previous_close) + '<\/td>';\n            tableHtml += '<td class=\"chart-action\"><button class=\"view-chart-btn\" data-symbol=\"' + symbol + '\">Chart<\/button><\/td>';\n            tableHtml += '<td class=\"trade-action\"><button class=\"trade-btn\" data-symbol=\"' + symbol + '\" onclick=\"window.open(\\'https:\/\/my.finpros.com\/login\\', \\'_blank\\')\">Trade<\/button><\/td>';\n            tableHtml += '<\/tr>';\n        }\n        \n        tableHtml += '<\/tbody><\/table>';\n        return tableHtml;\n    }\n    \n    \/\/ Format price with decimals\n    function formatPrice(price, decimals) {\n        return parseFloat(price).toFixed(decimals);\n    }\n    \n    \/\/ Format price change\n    function formatPriceChange(price, previousPrice) {\n        var change = price - previousPrice;\n        var changePercent = previousPrice > 0 ? (change \/ previousPrice) * 100 : 0;\n        \n        var className = change >= 0 ? 'positive' : 'negative';\n        var arrow = change >= 0 ? '\u25b2' : '\u25bc';\n        \n        return '<span class=\"price-change ' + className + '\">' + arrow + ' ' + \n               Math.abs(changePercent).toFixed(2) + '%<\/span>';\n    }\n    \n    \/\/ Start price updates\n    function startPriceUpdates() {\n        if (window.priceUpdateTimer) {\n            clearInterval(window.priceUpdateTimer);\n        }\n        \n        window.priceUpdateTimer = setInterval(function() {\n            updateMarketPrices();\n        }, refreshRate);\n    }\n    \n    \/\/ Update market prices\n    function updateMarketPrices() {\n        var category = container.find('.category-tab.active').data('category');\n        \n        $.ajax({\n            url: ajaxUrl,\n            type: 'GET',\n            data: {\n                action: 'get_mt5_data',\n                nonce: nonce,\n                category: category\n            },\n            success: function(response) {\n                if (response.success) {\n                    if (response.data) {\n                        for (var symbol in response.data) {\n                            var row = container.find('tr[data-symbol=\"' + symbol + '\"]');\n                            var symbolData = response.data[symbol];\n                            \n                            if (row.length) {\n                                if (symbolData) {\n                                    var currentBid = parseFloat(row.find('.bid-price').text()) || 0;\n                                    var currentAsk = parseFloat(row.find('.ask-price').text()) || 0;\n                                    var newBid = formatPrice(symbolData.bid, symbolData.digit || 5);\n                                    var newAsk = formatPrice(symbolData.ask, symbolData.digit || 5);\n                                    \n                                    var bidCell = row.find('.bid-price');\n                                    bidCell.removeClass('price-up price-down');\n                                    if (symbolData.bid > currentBid) {\n                                        bidCell.addClass('price-up');\n                                    } else if (symbolData.bid < currentBid) {\n                                        bidCell.addClass('price-down');\n                                    }\n                                    bidCell.text(newBid);\n                                    \n                                    var askCell = row.find('.ask-price');\n                                    askCell.removeClass('price-up price-down');\n                                    if (symbolData.ask > currentAsk) {\n                                        askCell.addClass('price-up');\n                                    } else if (symbolData.ask < currentAsk) {\n                                        askCell.addClass('price-down');\n                                    }\n                                    askCell.text(newAsk);\n                                    \n                                    row.find('.price-change-cell').html(formatPriceChange(symbolData.bid, symbolData.previous_close));\n                                    \n                                    setTimeout(function(b, a) {\n                                        return function() {\n                                            b.removeClass('price-up price-down');\n                                            a.removeClass('price-up price-down');\n                                        };\n                                    }(bidCell, askCell), 1000);\n                                }\n                            }\n                        }\n                    }\n                }\n            }\n        });\n    }\n    \n    \/\/ === CHART FUNCTIONS ===\n    \n    \/\/ Display chart for symbol\n    function displayChart(symbol) {\n        \/\/ Set active symbol and timeframe\n        activeSymbol = symbol;\n        activeTimeframe = container.find('.timeframe-btn.active').data('timeframe') || defaultTimeframe;\n        \n        \/\/ Determine decimal places from the bid price\n        var digits = 5; \/\/ Default\n        try {\n            var row = container.find('tr[data-symbol=\"' + symbol + '\"]');\n            if (row.length) {\n                var bidPriceCell = row.find('.bid-price');\n                if (bidPriceCell.length) {\n                    var priceText = bidPriceCell.text();\n                    \n                    \/\/ Get digit count from the symbol data if available\n                    var symbolData = row.data('digit');\n                    if (symbolData) {\n                        digits = parseInt(symbolData);\n                    } else {\n                        \/\/ Fallback to counting digits from the price\n                        var dotIndex = priceText.indexOf('.');\n                        if (dotIndex >= 0) {\n                            digits = priceText.length - dotIndex - 1;\n                        }\n                    }\n                }\n            }\n        } catch (error) {\n            console.error(\"Error detecting decimal places:\", error);\n        }\n        \n        \/\/ Ensure digits is a reasonable value between 1 and 10\n        digits = Math.max(1, Math.min(10, digits));\n        \n        \/\/ Store for later use\n        window.currentSymbolDigits = digits;\n        \n        \/\/ Show chart\n        container.find('.chart-container').show();\n        \n        \/\/ Remove . suffix from display name\n        var displaySymbol = symbol.replace('.', '');\n        container.find('.chart-symbol-name').text(displaySymbol);\n        \n        \/\/ Clear chart area\n        container.find('.chart-element').empty();\n        \n        \/\/ Load data\n        loadChartData(symbol, activeTimeframe, digits);\n        \n        \/\/ Start updates\n        startChartUpdater();\n    }\n    \n    \/\/ Close the chart\n    function closeChart() {\n        container.find('.chart-container').hide();\n        \n        \/\/ Clear update timer\n        if (updaterTimer) {\n            clearInterval(updaterTimer);\n            updaterTimer = null;\n        }\n        \n        \/\/ Clear chart\n        if (chartObj) {\n            chartObj.remove();\n            chartObj = null;\n            candleSeriesObj = null;\n        }\n        \n        activeSymbol = null;\n        activeTimeframe = null;\n    }\n    \n    \/\/ Load chart data\n    function loadChartData(symbol, timeframe, digits) {\n        $.ajax({\n            url: ajaxUrl,\n            type: 'GET',\n            data: {\n                action: 'get_mt5_chart_data',\n                nonce: nonce,\n                symbol: symbol,\n                timeframe: timeframe,\n                count: 300\n            },\n            success: function(response) {\n                if (response.success) {\n                    if (response.data) {\n                        if (Array.isArray(response.data)) {\n                            renderChart(response.data, digits);\n                            lastUpdateTime = new Date().getTime();\n                            updateChartStatus(window.MT5DataViewer_getString('chartLoaded'));\n                        } else {\n                            container.find('.chart-element').html('<div style=\"text-align:center;padding:20px;\">' + window.MT5DataViewer_getString('noDataAvailable') + '<\/div>');\n                            updateChartStatus(window.MT5DataViewer_getString('invalidChartData'));\n                        }\n                    } else {\n                        container.find('.chart-element').html('<div style=\"text-align:center;padding:20px;\">' + window.MT5DataViewer_getString('noDataAvailable') + '<\/div>');\n                        updateChartStatus(window.MT5DataViewer_getString('noChartData'));\n                    }\n                } else {\n                    container.find('.chart-element').html('<div style=\"text-align:center;padding:20px;\">' + window.MT5DataViewer_getString('noDataAvailable') + '<\/div>');\n                    updateChartStatus(window.MT5DataViewer_getString('failedToLoadChart'));\n                }\n            },\n            error: function(xhr, status, error) {\n                showError(window.MT5DataViewer_getString('errorLoadingChart') + ': ' + error);\n                updateChartStatus(window.MT5DataViewer_getString('errorLoadingChart'));\n            }\n        });\n    }\n    \n    \/\/ Render chart with data\n    function renderChart(chartData, digits) {\n        var chartElement = container.find('.chart-element')[0];\n        \n        \/\/ Check if library is loaded\n        if (typeof LightweightCharts === 'undefined') {\n            container.find('.chart-element').html('<div style=\"text-align:center;padding:20px;\">' + window.MT5DataViewer_getString('chartLibraryNotLoaded') + '<\/div>');\n            return;\n        }\n        \n        \/\/ Clear previous chart if exists\n        if (chartObj) {\n            chartObj.remove();\n            chartObj = null;\n            candleSeriesObj = null;\n        }\n        \n        \/\/ Determine minMove based on digits (e.g., 0.00001 for 5 digits)\n        var minMove = Math.pow(10, -digits);\n        \n        try {\n            \/\/ Create new chart\n            chartObj = LightweightCharts.createChart(chartElement, {\n                width: chartElement.clientWidth,\n                height: 400,\n                timeScale: {\n                    timeVisible: true,\n                    borderColor: '#D1D4DC',\n                    secondsVisible: false\n                },\n                rightPriceScale: {\n                    borderColor: '#D1D4DC',\n                    entireTextOnly: false,\n                    autoScale: true,\n                    mode: LightweightCharts.PriceScaleMode.Normal,\n                    ticksVisible: true,\n                    minMove: minMove\n                },\n                layout: {\n                    backgroundColor: '#ffffff',\n                    textColor: '#191919',\n                    fontSize: 12\n                },\n                grid: {\n                    horzLines: {\n                        color: '#F0F3FA',\n                    },\n                    vertLines: {\n                        color: '#F0F3FA',\n                    },\n                },\n                crosshair: {\n                    mode: LightweightCharts.CrosshairMode.Normal\n                }\n            });\n            \n            \/\/ Add candlestick series\n            candleSeriesObj = chartObj.addCandlestickSeries({\n                upColor: '#26a69a',\n                downColor: '#ef5350',\n                borderVisible: false,\n                wickUpColor: '#26a69a',\n                wickDownColor: '#ef5350',\n                priceScaleId: 'right',\n                priceFormat: {\n                    type: 'custom',\n                    minMove: minMove,\n                    formatter: function(price) {\n                        \/\/ Format to fixed number of decimal places to maintain trailing zeros\n                        var result = price.toFixed(digits);\n                        return result;\n                    }\n                }\n            });\n            \n            \/\/ Format data\n            var formattedData = formatChartData(chartData);\n            \n            \/\/ Set data\n            candleSeriesObj.setData(formattedData);\n            \n            \/\/ Make responsive\n            window.addEventListener('resize', function() {\n                if (chartObj) {\n                    chartObj.resize(chartElement.clientWidth, 400);\n                }\n            });\n        } catch (err) {\n            showError(window.MT5DataViewer_getString('errorCreatingChart') + ': ' + err.message);\n        }\n    }\n    \n    \/\/ Format chart data\n    function formatChartData(data) {\n        var formattedData = [];\n        \n        for (var i = 0; i < data.length; i++) {\n            var item = data[i];\n            formattedData.push({\n                time: parseInt(item.time, 10),\n                open: parseFloat(item.open),\n                high: parseFloat(item.high),\n                low: parseFloat(item.low),\n                close: parseFloat(item.close)\n            });\n        }\n        \n        return formattedData;\n    }\n    \n    \/\/ Start chart updater\n    function startChartUpdater() {\n        \/\/ Clear previous timer if exists\n        if (updaterTimer) {\n            clearInterval(updaterTimer);\n        }\n        \n        \/\/ Set a new timer\n        updaterTimer = setInterval(function() {\n            if (activeSymbol) {\n                if (activeTimeframe) {\n                    if (chartObj) {\n                        if (candleSeriesObj) {\n                            refreshChartData();\n                        }\n                    }\n                }\n            }\n        }, 3000); \/\/ 3 seconds\n    }\n    \n    \/\/ Refresh chart data\n    function refreshChartData() {\n        \/\/ Get current digits from stored value\n        var digits = window.currentSymbolDigits || 5;\n        \n        $.ajax({\n            url: ajaxUrl,\n            type: 'GET',\n            data: {\n                action: 'get_mt5_chart_data',\n                nonce: nonce,\n                symbol: activeSymbol,\n                timeframe: activeTimeframe,\n                count: 20 \/\/ Just get the most recent candles\n            },\n            success: function(response) {\n                if (response.success) {\n                    if (response.data) {\n                        if (Array.isArray(response.data)) {\n                            if (response.data.length > 0) {\n                                try {\n                                    \/\/ Sort data by time (newest first)\n                                    var sortedData = response.data.sort(function(a, b) {\n                                        return parseInt(b.time, 10) - parseInt(a.time, 10);\n                                    });\n                                    \n                                    \/\/ Only get the newest candle\n                                    var newestCandle = sortedData[0];\n                                    \n                                    if (newestCandle) {\n                                        \/\/ Format the newest candle\n                                        var formattedCandle = {\n                                            time: parseInt(newestCandle.time, 10),\n                                            open: parseFloat(newestCandle.open),\n                                            high: parseFloat(newestCandle.high),\n                                            low: parseFloat(newestCandle.low),\n                                            close: parseFloat(newestCandle.close)\n                                        };\n                                        \n                                        \/\/ Update only the newest candle\n                                        candleSeriesObj.update(formattedCandle);\n                                        \n                                        \/\/ Update status\n                                        lastUpdateTime = new Date().getTime();\n                                        updateChartStatus('Updated ' + timeAgo(lastUpdateTime));\n                                    }\n                                } catch (err) {\n                                    \/\/ Keep this console.error for troubleshooting chart issues\n                                    console.error('Chart update error:', err);\n                                    \n                                    \/\/ If update fails, try to reload the entire chart\n                                    if (err.message && err.message.includes('Cannot update oldest data')) {\n                                        loadChartData(activeSymbol, activeTimeframe, digits);\n                                    }\n                                }\n                            }\n                        }\n                    }\n                }\n            }\n        });\n    }\n    \n    \/\/ Update chart status text\n    function updateChartStatus(message) {\n        var statusEl = container.find('.chart-update-status');\n        statusEl.text(message);\n    }\n    \n    \/\/ Time ago formatter for status updates\n    function timeAgo(timestamp) {\n        var now = new Date().getTime();\n        var diff = Math.floor((now - timestamp) \/ 1000);\n        \n        if (diff < 5) return 'just now';\n        if (diff < 60) return diff + ' seconds ago';\n        \n        return 'recently';\n    }\n    \n    \/\/ Show error message\n    function showError(message) {\n        var errorElement = container.find('.error-message');\n        errorElement.text(message).show();\n        setTimeout(function() {\n            errorElement.hide();\n        }, 5000);\n    }\n});\n\/* ]]> *\/\n<\/script>\n\n <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-cd6b5fc e-flex e-con-boxed e-con e-parent\" data-id=\"cd6b5fc\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dc6e252 elementor-widget elementor-widget-heading\" data-id=\"dc6e252\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">T\u00ecm <span>c\u00e2u tr\u1ea3 l\u1eddi<\/span> cho c\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p<br><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bf287f5 elementor-widget__width-initial elementor-widget elementor-widget-shortcode\" data-id=\"bf287f5\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">            <div class=\"qae-faqs-container qae-faqs-toggle-container\">\n\t\t\t\t\t\t<div id=\"qaef-13509\" class=\"qe-faq-toggle giao-dich\">\n\t\t\t<div class=\"qe-toggle-title\">\n\t\t\t\t<h4>\n\t\t\t\t\t<i class=\"fa fa-minus-circle\"><\/i> L\u00e0m th\u1ebf n\u00e0o \u0111\u1ec3 t\u00f4i thay \u0111\u1ed5i m\u1eadt kh\u1ea9u?\t\t\t\t<\/h4>\n\t\t\t<\/div>\n\t\t\t<div class=\"qe-toggle-content\">\n\t\t\t\t<ul>\n<li>Nh\u1ea5n v\u00e0o n\u00fat \u201c\u0110\u0103ng nh\u1eadp\u201d r\u1ed3i \u201cQu\u00ean m\u1eadt kh\u1ea9u\u201d<\/li>\n<li>Nh\u1eadp email b\u1ea1n \u0111\u00e3 \u0111\u0103ng k\u00fd v\u00e0o tr\u01b0\u1eddng b\u1eaft bu\u1ed9c v\u00e0 nh\u1ea5n n\u00fat \u201cG\u1eedi\u201d.<\/li>\n<li>Ch\u00fang t\u00f4i s\u1ebd g\u1eedi cho b\u1ea1n li\u00ean k\u1ebft qua email \u0111\u1ec3 thay \u0111\u1ed5i m\u1eadt kh\u1ea9u.<\/li>\n<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div id=\"qaef-13506\" class=\"qe-faq-toggle giao-dich\">\n\t\t\t<div class=\"qe-toggle-title\">\n\t\t\t\t<h4>\n\t\t\t\t\t<i class=\"fa fa-minus-circle\"><\/i> L\u00e0m th\u1ebf n\u00e0o \u0111\u1ec3 t\u00f4i c\u00f3 th\u1ec3 thay \u0111\u1ed5i th\u00f4ng tin t\u00e0i kho\u1ea3n c\u1ee7a m\u00ecnh?\t\t\t\t<\/h4>\n\t\t\t<\/div>\n\t\t\t<div class=\"qe-toggle-content\">\n\t\t\t\t<ul style=\"margin-left: -15px\">\n<li>Nh\u1ea5n v\u00e0o tab \u201cT\u00e0i kho\u1ea3n\u201d \u1edf g\u00f3c d\u01b0\u1edbi b\u00ean ph\u1ea3i, sau \u0111\u00f3 nh\u1ea5n v\u00e0o \u201cCh\u1ec9nh s\u1eeda h\u1ed3 s\u01a1\u201d.<\/li>\n<li>Tr\u00ean trang n\u00e0y, b\u1ea1n c\u00f3 th\u1ec3 ch\u1ec9nh s\u1eeda \u201cX\u1eed l\u00fd t\u00ecm ki\u1ebfm\u201d, \u201cT\u00ean t\u00edn hi\u1ec7u\u201d v\u00e0 \u201cH\u01b0\u1edbng d\u1eabn v\u1ed1n ch\u1ee7 s\u1edf h\u1eefu\u201d c\u1ee7a m\u00ecnh<\/li>\n<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div id=\"qaef-13508\" class=\"qe-faq-toggle giao-dich\">\n\t\t\t<div class=\"qe-toggle-title\">\n\t\t\t\t<h4>\n\t\t\t\t\t<i class=\"fa fa-minus-circle\"><\/i> L\u00e0m th\u1ebf n\u00e0o \u0111\u1ec3 chuy\u1ec3n \u0111\u1ed5i t\u00e0i kho\u1ea3n giao d\u1ecbch c\u1ee7a t\u00f4i?\t\t\t\t<\/h4>\n\t\t\t<\/div>\n\t\t\t<div class=\"qe-toggle-content\">\n\t\t\t\t<ul style=\"margin-left: -15px\">\n<li>Nh\u1ea5n v\u00e0o tab \u201cT\u00e0i kho\u1ea3n\u201d \u1edf g\u00f3c d\u01b0\u1edbi b\u00ean ph\u1ea3i.<\/li>\n<li>Cu\u1ed9n xu\u1ed1ng d\u01b0\u1edbi c\u00f9ng v\u00e0 ch\u1ea1m v\u00e0o n\u00fat \u201cLi\u00ean k\u1ebft t\u00e0i kho\u1ea3n\u201d.<\/li>\n<li>Nh\u1eadp th\u00f4ng tin t\u00e0i kho\u1ea3n giao d\u1ecbch m\u1edbi c\u1ee7a b\u1ea1n.<\/li>\n<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t            <\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-09ad42d elementor-align-center elementor-widget__width-auto read-more-link elementor-widget elementor-widget-button\" data-id=\"09ad42d\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/finpros.com\/vi\/cau-hoi-thuong-gap\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t<span class=\"elementor-button-icon\">\n\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-arrow-right\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z\"><\/path><\/svg>\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u0110\u1ecdc th\u00eam<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Ti\u1ebfp c\u1eadn th\u1ecb tr\u01b0\u1eddng ti\u1ec1n t\u1ec7 to\u00e0n c\u1ea7u v\u1edbi t\u1ed1c \u0111\u1ed9 th\u1ef1c hi\u1ec7n nhanh ch\u00f3ng v\u00e0 ch\u00eanh l\u1ec7ch gi\u00e1 c\u00f4ng b\u1eb1ng V\u1ec1 giao d\u1ecbch ngo\u1ea1i h\u1ed1i Forex, hay ngo\u1ea1i h\u1ed1i, l\u00e0 th\u1ecb tr\u01b0\u1eddng t\u00e0i ch\u00ednh l\u1edbn nh\u1ea5t th\u1ebf gi\u1edbi. Theo Ng\u00e2n h\u00e0ng Thanh to\u00e1n Qu\u1ed1c t\u1ebf (BIS), kh\u1ed1i l\u01b0\u1ee3ng giao d\u1ecbch to\u00e0n c\u1ea7u h\u00e0ng ng\u00e0y [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"tpl-default-elementor.php","meta":{"footnotes":""},"class_list":["post-3912","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ngo\u1ea1i h\u1ed1i - FinPros<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/finpros.com\/vi\/ngoai-hoi\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ngo\u1ea1i h\u1ed1i - FinPros\" \/>\n<meta property=\"og:description\" content=\"Ti\u1ebfp c\u1eadn th\u1ecb tr\u01b0\u1eddng ti\u1ec1n t\u1ec7 to\u00e0n c\u1ea7u v\u1edbi t\u1ed1c \u0111\u1ed9 th\u1ef1c hi\u1ec7n nhanh ch\u00f3ng v\u00e0 ch\u00eanh l\u1ec7ch gi\u00e1 c\u00f4ng b\u1eb1ng V\u1ec1 giao d\u1ecbch ngo\u1ea1i h\u1ed1i Forex, hay ngo\u1ea1i h\u1ed1i, l\u00e0 th\u1ecb tr\u01b0\u1eddng t\u00e0i ch\u00ednh l\u1edbn nh\u1ea5t th\u1ebf gi\u1edbi. Theo Ng\u00e2n h\u00e0ng Thanh to\u00e1n Qu\u1ed1c t\u1ebf (BIS), kh\u1ed1i l\u01b0\u1ee3ng giao d\u1ecbch to\u00e0n c\u1ea7u h\u00e0ng ng\u00e0y [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/finpros.com\/vi\/ngoai-hoi\/\" \/>\n<meta property=\"og:site_name\" content=\"FinPros\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-24T11:01:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"571\" \/>\n\t<meta property=\"og:image:height\" content=\"394\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\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:\/\/finpros.com\/vi\/ngoai-hoi\/\",\"url\":\"https:\/\/finpros.com\/vi\/ngoai-hoi\/\",\"name\":\"Ngo\u1ea1i h\u1ed1i - FinPros\",\"isPartOf\":{\"@id\":\"https:\/\/finpros.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/finpros.com\/vi\/ngoai-hoi\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/finpros.com\/vi\/ngoai-hoi\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png\",\"datePublished\":\"2025-04-04T07:37:01+00:00\",\"dateModified\":\"2025-06-24T11:01:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/finpros.com\/vi\/ngoai-hoi\/#breadcrumb\"},\"inLanguage\":\"vi-VN\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/finpros.com\/vi\/ngoai-hoi\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"vi-VN\",\"@id\":\"https:\/\/finpros.com\/vi\/ngoai-hoi\/#primaryimage\",\"url\":\"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png\",\"contentUrl\":\"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/finpros.com\/vi\/ngoai-hoi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Trang ch\u1ee7\",\"item\":\"https:\/\/finpros.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ngo\u1ea1i h\u1ed1i\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/finpros.com\/#website\",\"url\":\"https:\/\/finpros.com\/\",\"name\":\"FinPros\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/finpros.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/finpros.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"vi-VN\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/finpros.com\/#organization\",\"name\":\"FinPros\",\"url\":\"https:\/\/finpros.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"vi-VN\",\"@id\":\"https:\/\/finpros.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/finpros.com\/wp-content\/uploads\/2025\/03\/FinPros-PNG-1.png\",\"contentUrl\":\"https:\/\/finpros.com\/wp-content\/uploads\/2025\/03\/FinPros-PNG-1.png\",\"width\":1050,\"height\":369,\"caption\":\"FinPros\"},\"image\":{\"@id\":\"https:\/\/finpros.com\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Ngo\u1ea1i h\u1ed1i - FinPros","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:\/\/finpros.com\/vi\/ngoai-hoi\/","og_locale":"vi_VN","og_type":"article","og_title":"Ngo\u1ea1i h\u1ed1i - FinPros","og_description":"Ti\u1ebfp c\u1eadn th\u1ecb tr\u01b0\u1eddng ti\u1ec1n t\u1ec7 to\u00e0n c\u1ea7u v\u1edbi t\u1ed1c \u0111\u1ed9 th\u1ef1c hi\u1ec7n nhanh ch\u00f3ng v\u00e0 ch\u00eanh l\u1ec7ch gi\u00e1 c\u00f4ng b\u1eb1ng V\u1ec1 giao d\u1ecbch ngo\u1ea1i h\u1ed1i Forex, hay ngo\u1ea1i h\u1ed1i, l\u00e0 th\u1ecb tr\u01b0\u1eddng t\u00e0i ch\u00ednh l\u1edbn nh\u1ea5t th\u1ebf gi\u1edbi. Theo Ng\u00e2n h\u00e0ng Thanh to\u00e1n Qu\u1ed1c t\u1ebf (BIS), kh\u1ed1i l\u01b0\u1ee3ng giao d\u1ecbch to\u00e0n c\u1ea7u h\u00e0ng ng\u00e0y [&hellip;]","og_url":"https:\/\/finpros.com\/vi\/ngoai-hoi\/","og_site_name":"FinPros","article_modified_time":"2025-06-24T11:01:25+00:00","og_image":[{"width":571,"height":394,"url":"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/finpros.com\/vi\/ngoai-hoi\/","url":"https:\/\/finpros.com\/vi\/ngoai-hoi\/","name":"Ngo\u1ea1i h\u1ed1i - FinPros","isPartOf":{"@id":"https:\/\/finpros.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/finpros.com\/vi\/ngoai-hoi\/#primaryimage"},"image":{"@id":"https:\/\/finpros.com\/vi\/ngoai-hoi\/#primaryimage"},"thumbnailUrl":"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png","datePublished":"2025-04-04T07:37:01+00:00","dateModified":"2025-06-24T11:01:25+00:00","breadcrumb":{"@id":"https:\/\/finpros.com\/vi\/ngoai-hoi\/#breadcrumb"},"inLanguage":"vi-VN","potentialAction":[{"@type":"ReadAction","target":["https:\/\/finpros.com\/vi\/ngoai-hoi\/"]}]},{"@type":"ImageObject","inLanguage":"vi-VN","@id":"https:\/\/finpros.com\/vi\/ngoai-hoi\/#primaryimage","url":"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png","contentUrl":"https:\/\/finpros.com\/wp-content\/uploads\/2025\/05\/Rectangle-1.png"},{"@type":"BreadcrumbList","@id":"https:\/\/finpros.com\/vi\/ngoai-hoi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Trang ch\u1ee7","item":"https:\/\/finpros.com\/"},{"@type":"ListItem","position":2,"name":"Ngo\u1ea1i h\u1ed1i"}]},{"@type":"WebSite","@id":"https:\/\/finpros.com\/#website","url":"https:\/\/finpros.com\/","name":"FinPros","description":"","publisher":{"@id":"https:\/\/finpros.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/finpros.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"vi-VN"},{"@type":"Organization","@id":"https:\/\/finpros.com\/#organization","name":"FinPros","url":"https:\/\/finpros.com\/","logo":{"@type":"ImageObject","inLanguage":"vi-VN","@id":"https:\/\/finpros.com\/#\/schema\/logo\/image\/","url":"https:\/\/finpros.com\/wp-content\/uploads\/2025\/03\/FinPros-PNG-1.png","contentUrl":"https:\/\/finpros.com\/wp-content\/uploads\/2025\/03\/FinPros-PNG-1.png","width":1050,"height":369,"caption":"FinPros"},"image":{"@id":"https:\/\/finpros.com\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/finpros.com\/vi\/wp-json\/wp\/v2\/pages\/3912","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/finpros.com\/vi\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/finpros.com\/vi\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/finpros.com\/vi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/finpros.com\/vi\/wp-json\/wp\/v2\/comments?post=3912"}],"version-history":[{"count":2,"href":"https:\/\/finpros.com\/vi\/wp-json\/wp\/v2\/pages\/3912\/revisions"}],"predecessor-version":[{"id":18240,"href":"https:\/\/finpros.com\/vi\/wp-json\/wp\/v2\/pages\/3912\/revisions\/18240"}],"wp:attachment":[{"href":"https:\/\/finpros.com\/vi\/wp-json\/wp\/v2\/media?parent=3912"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}