Release note · Expert Advisor XAUUSDRelease note · XAUUSD Expert Advisor

GoldenRobber 1.42 · build b2

Admin chỉnh cấu hình trên web là EA áp gần như ngay, và có thêm lệnh đóng toàn bộ lệnh của EA chỉ bằng một lựa chọn trong Manual Init. When an admin changes the configuration on the web the EA applies it almost immediately, and a single Manual Init option now closes every order the EA holds.

  • Cập nhậtUpdated 18/09/2026
  • Ngày phát hànhRelease date 12/09/2026
  • File GoldenRobber-1.42.ex5
  • Tách từForked from 1.41.4 b21.1
  • Đã thay bằng 1.42 b3Superseded by 1.42 b3
  • NguồnSource RELEASES.md §2c · EA-HOTRELOAD-STANDARD.md §9

Tóm tắtSummary

Mới ở b2New in b2

Manual Init = Close all

Đóng hết lệnh của EA trên chart, sau đó đứng yên như Pause.

Closes every EA order on the chart, then stays idle like Pause.

Mới ở b1New in b1

EA Link

Đổi config trên web, EA áp trong khoảng 1 giây thay vì 10–30 giây.

Change the config on the web and the EA applies it in about 1 second instead of 10–30 seconds.

Kế thừa b21.1Inherited from b21.1

Manual Init = Pause

Chặn mở round mới; round đang mở vẫn được quản lý tới khi đóng.

Blocks new rounds; rounds already open are still managed until they close.

Logic giao dịch (init, DCA, TP, Tia, hedge, lot balance) giữ nguyên như production b21. Bản này không có Manual Init Auto, PivotGuard (b22–b28) hay StrongMove fakeout-exit (1.41.5). Xem sơ đồ nhánh build.

Trading logic (init, DCA, TP, Tia, hedge, lot balance) is unchanged from production b21. This build does not contain Manual Init Auto, PivotGuard (b22–b28) or StrongMove fakeout-exit (1.41.5). See the build lineage.

Close allClose all manual_init = 5

Chọn Close all (close EA orders + pause) ở mục Manual Init trên /admin/easupported/goldenrobber, hoặc đặt InpManualInit=5 trong file .set.

Choose Close all (close EA orders + pause) under Manual Init on /admin/easupported/goldenrobber, or set InpManualInit=5 in the .set file.

Đóng những lệnh nàoWhich orders are closed Mọi lệnh của EA trên chart: đúng symbol và magic, gồm cả lệnh Hedge. Lệnh tay và lệnh của EA khác không bị đụng.Every EA order on the chart: matching symbol and magic, including Hedge orders. Manual orders and orders from other EAs are not touched.
Trong lúc bậtWhile active EA không mở thêm gì: không init, add DCA, hedge, lot balance, balance cuối tuần hay flash crash; Global TP/SL và Tia cũng tạm dừng.The EA opens nothing: no init, add DCA, hedge, lot balance, weekend or flash-crash balance; Global TP/SL and Tia are paused as well.
Lệnh đóng bị lỗiA close order fails Requote, đóng cửa thị trường…: EA kiểm tra kết quả từng lệnh và thử lại tối đa 1 lần mỗi giây. Log ghi lượt đầu và mỗi 10 lượt.Requote, market closed…: the EA checks the result of every order and retries at most once per second. The log records the first pass and every 10th pass.
Khi đã đóng hếtOnce everything is closed Log [ManualInit] CLOSE ALL: đã đóng hết lệnh sau N lượt, sau đó EA đứng yên như Pause cho tới khi đổi Manual Init về OFF.Log [ManualInit] CLOSE ALL: đã đóng hết lệnh sau N lượt ("all orders closed after N passes"), after which the EA stays idle like Pause until Manual Init is set back to OFF.
Nhiều VPS cùng tài khoảnSeveral VPSes on one account Chỉ node LEADER đóng lệnh; follower không gửi lệnh.Only the LEADER node closes orders; followers send no orders.
Thời điểm đóngWhen closing happens Ở tick kế tiếp sau khi EA nhận config. Thị trường không có tick thì chưa đóng.On the next tick after the EA receives the config. With no market ticks nothing is closed yet.
Minh hoạ các dòng liên quan trên info panel khi Close all đang bật. Số liệu là ví dụ.Illustration of the relevant info panel lines while Close all is active. The figures are examples.
Không hoàn tác đượcCannot be undone

Trang web chưa hỏi xác nhận trước khi Apply. Chọn nhầm account là đóng cả rổ lệnh của account đó. Kiểm tra lại danh sách account trước khi bấm.

The web page does not ask for confirmation before Apply yet. Selecting the wrong account closes that account's entire basket of orders. Double-check the account list before clicking.

Trước đây EA chỉ nhận config mới ở lần heartbeat HTTP kế tiếp (chu kỳ 10–30 giây). Từ 1.42, EA giữ thêm một kết nối tới EaLinkBroker để được báo ngay khi admin Apply hoặc Clear.

Previously the EA only received a new config on its next HTTP heartbeat (a 10–30 second cycle). From 1.42 the EA keeps an extra connection to EaLinkBroker so it is notified as soon as an admin clicks Apply or Clear.

  1. Admin bấm Apply hoặc Clear trên trang easupported.
  2. fxconsole báo cho EaLinkBroker; broker gửi tín hiệu “config đã đổi” xuống đúng account.
  3. EA đọc tín hiệu trong vòng 200 ms rồi gọi heartbeat HTTPS để lấy config mới.
  4. EA áp config, ghi log [EaLink] cfg rev=… đã áp trong N ms. Thường mất dưới 1 giây.

Kết nối Link chỉ mang tín hiệu, không mang giá trị config hay token; giá trị luôn đi qua HTTPS có kiểm chứng chỉ. Broker không chạy hoặc mất mạng thì EA vẫn giao dịch và nhận config theo chu kỳ heartbeat như cũ.

  1. The admin clicks Apply or Clear on the easupported page.
  2. fxconsole notifies EaLinkBroker; the broker sends a “config changed” signal to exactly that account.
  3. The EA reads the signal within 200 ms, then calls the HTTPS heartbeat to fetch the new config.
  4. The EA applies the config and logs [EaLink] cfg rev=… đã áp trong N ms ("applied in N ms"). It usually takes under 1 second.

The Link connection carries only the signal, never config values or the token; values always travel over certificate-verified HTTPS. If the broker is down or the network drops, the EA keeps trading and receives config on the heartbeat cycle as before.

Input Mặc địnhDefault Ý nghĩaMeaning
InpLinkModeHYBRID HYBRID: heartbeat + Link. HTTP only: như bản cũ.HYBRID: heartbeat + Link. HTTP only: same as older builds.
InpLinkHost"" Để trống thì dùng host trong InpCloudMyApiDomain.When empty, the host from InpCloudMyApiDomain is used.
InpLinkPort9607 Cổng của EaLinkBroker.EaLinkBroker's port.

Slug và token lấy từ InpCloudMyApiDomain và InpCloudBearerToken sẵn có, nên file .set của b21 / b21.1 dùng lại được mà không phải sửa.

The slug and token come from the existing InpCloudMyApiDomain and InpCloudBearerToken, so b21 / b21.1 .set files can be reused without edits.

Panel hiệnPanel shows Nghĩa làMeaning
Link: UP host:9607 (Ns) | cfg Ns ago Đã kết nối và xác thực; lần cuối áp config qua Link cách N giây.Connected and authenticated; the last config applied via Link was N seconds ago.
Link: DOWN, retry Ns Không tới được broker; EA tự thử lại, giãn dần từ 2 tới 60 giây.Cannot reach the broker; the EA retries on its own, backing off from 2 to 60 seconds.
Link: AUTH FAIL: bad_sig Sai InpCloudBearerToken; thử lại sau 5 phút.Wrong InpCloudBearerToken; retries after 5 minutes.
Link: AUTH FAIL: unknown_ea Slug trong InpCloudMyApiDomain không có trên web.The slug in InpCloudMyApiDomain does not exist on the web.
Link: HTTP only InpLinkMode = HTTP only hoặc đang backtest.InpLinkMode = HTTP only, or running in a backtest.

Manual Init theo từng buildManual Init by build

Mọi build GoldenRobber dùng chung trang web goldenrobber. Build nào không hiểu một giá trị sẽ bỏ qua và giữ giá trị cũ, không tự về OFF.

Every GoldenRobber build shares the goldenrobber web page. A build that does not understand a value ignores it and keeps its previous value; it does not fall back to OFF.

Giá trịValue TênName b21 (prod) b21.1 1.41.4 b28 1.42 b2
0OFF cóyes cóyes cóyes cóyes
1Only BUY cóyes cóyes cóyes cóyes
2Only SELL cóyes cóyes cóyes cóyes
3Auto bỏ quaignored bỏ quaignored chỉ .set.set only bỏ quaignored
4Pause bỏ quaignored cóyes bỏ quaignored cóyes
5Close all bỏ quaignored bỏ quaignored bỏ quaignored mớinew
Khi nhiều build chạy cùng lúcWhen several builds run at once

Chọn Close all cho một account đang chạy b21, b21.1 hoặc b28 thì account đó không đóng lệnh. Kiểm tra tiêu đề panel có v1.42 (b2) trước khi dùng.

Choosing Close all for an account running b21, b21.1 or b28 closes no orders on that account. Check that the panel title contains v1.42 (b2) before using it.

Nâng cấpUpgrading

Phía server (làm một lần)Server side (one-off)

  1. Mở cổng TCP 9607 trên firewall OVH và port forward IPFire tới máy Docker.
  2. Trên server chạy git pull origin main rồi bash deploy.sh. Script tự tạo .env cho EaLinkBroker và điền kết nối DB từ fxconsole.
  3. Kiểm tra docker logs fxconsole-ea-link-broker có dòng settings DB: on, và /admin/settings hiện version 2026.09.12.3 trở lên.
  1. Open TCP port 9607 on the OVH firewall and port-forward it on IPFire to the Docker host.
  2. On the server run git pull origin main, then bash deploy.sh. The script creates the EaLinkBroker .env and fills in the DB connection from fxconsole.
  3. Check that docker logs fxconsole-ea-link-broker contains the line settings DB: on, and that /admin/settings shows version 2026.09.12.3 or later.
git pull origin main
bash deploy.sh
docker logs fxconsole-ea-link-broker
Không cần mở trang admin sau deployNo admin page visit needed after deploying

Hai thay đổi phía server được hoàn tất sau khi release note này được viết:

  • Commit cb272d5 (fxconsole 2026.09.12.3): các broker đọc broker_internal_secret thẳng từ bảng settings trong MySQL (cache 30 giây), sau đó mới tới Redis app_config:broker_internal_secret và BROKER_INTERNAL_SECRET trong .env.
  • Commit 15b70c3: deploy.sh tự tạo .env của broker từ .env.example và điền các biến DB_* từ fxconsole/.env.

Vì vậy chỉ cần git pull + bash deploy.sh; không phải mở /admin/settings hay trang admin nào để broker lấy được secret. Chi tiết: Các broker realtime · Hướng dẫn deploy.

Two server-side changes landed after this release note was written:

  • Commit cb272d5 (fxconsole 2026.09.12.3): the brokers read broker_internal_secret directly from the MySQL settings table (30-second cache), falling back to Redis app_config:broker_internal_secret and then BROKER_INTERNAL_SECRET in .env.
  • Commit 15b70c3: deploy.sh creates each broker's .env from .env.example and fills the DB_* variables from fxconsole/.env.

So git pull + bash deploy.sh is enough; there is no need to open /admin/settings or any admin page for the broker to obtain its secret. Details: Realtime brokers · Deployment guide.

Trên MT5On MT5

  1. Copy GoldenRobber-1.42.ex5 vào thư mục MQL5\Experts.
  2. Gỡ EA đang chạy khỏi chart rồi gắn 1.42, dùng lại file .set hiện tại. Không dùng F7 khi EA đang gắn. Nếu MT5 hiện hộp thoại LiveUpdate, chọn Later.
  3. Kiểm tra panel: tiêu đề GoldenRobber v1.42 (b2), Server: CONNECTED, Link: UP. Trang easupported hiện badge Link cho account.
  4. Thử trên tài khoản demo: Apply manual_init = Pause, log phải có hot-reload từ server: 0 -> 4 trong khoảng 1–2 giây; Clear để về OFF.

Gói deploy .zip hiện tại vẫn trỏ tới GoldenRobber-1.41.4.ex5. Muốn cài 1.42 hàng loạt qua vps-agent cần đóng gói lại.

  1. Copy GoldenRobber-1.42.ex5 into the MQL5\Experts folder.
  2. Remove the running EA from the chart, then attach 1.42 reusing the current .set file. Do not use F7 while the EA is attached. If MT5 shows the LiveUpdate dialog, choose Later.
  3. Check the panel: title GoldenRobber v1.42 (b2), Server: CONNECTED, Link: UP. The easupported page shows a Link badge for the account.
  4. Test on a demo account: Apply manual_init = Pause; the log must show hot-reload từ server: 0 -> 4 within about 1–2 seconds; Clear to return to OFF.

The current deploy .zip still points to GoldenRobber-1.41.4.ex5. Installing 1.42 in bulk through vps-agent requires repackaging.

Hạn chế đã biếtKnown limitations

  • Bản DEV: đã compile 0 lỗi, 0 cảnh báo nhưng chưa chạy trên demo hay live.
  • Close all chưa có hộp thoại xác nhận trên web.
  • Close all chỉ đóng lệnh khi có tick; cuối tuần sẽ chờ tới lúc thị trường mở.
  • Số giây ở dòng Server: tính theo giờ quote cuối, nên đứng yên khi đóng cửa thị trường. Dòng Link: không bị ảnh hưởng.
  • Trong backtest với InpManualInit=5, panel không cập nhật trong lúc Close all.
  • Trang web hiển thị danh sách lựa chọn của build gửi heartbeat gần nhất, nên khi chạy lẫn nhiều build, option Close all có lúc không hiện.
  • DEV build: compiled with 0 errors and 0 warnings but not yet run on demo or live.
  • Close all has no confirmation dialog on the web yet.
  • Close all only closes orders when ticks arrive; at the weekend it waits until the market opens.
  • The seconds on the Server: line are based on the last quote time, so they freeze while the market is closed. The Link: line is not affected.
  • In a backtest with InpManualInit=5, the panel does not update during Close all.
  • The web page shows the option list of the build that sent the most recent heartbeat, so with mixed builds the Close all option is sometimes missing.

Quay lại bản cũRolling back

Gỡ 1.42 khỏi chart và gắn lại GoldenRobber-1.41.4 b21 (production) hoặc b21.1. Dùng lại file .set như cũ; các input Link sẽ được MT5 bỏ qua. Có thể dừng riêng EaLinkBroker bằng docker compose down trong monitor/EaLinkBroker mà không ảnh hưởng dịch vụ khác. Cách lấy lại binary b21: Build & release, mục 2.

Remove 1.42 from the chart and re-attach GoldenRobber-1.41.4 b21 (production) or b21.1. Reuse the same .set file; MT5 ignores the Link inputs. EaLinkBroker can be stopped on its own with docker compose down in monitor/EaLinkBroker without affecting other services. Recovering the b21 binary: Builds & releases, section 2.

CommitCommits

51b2864
GoldenRobber 1.42 b2 — Manual Init Close all
1967099
GoldenRobber 1.42 b1 — EA Link, EaLinkBroker, fxconsole 2026.09.12.1
cb272d5
Broker đọc secret từ bảng settings (MySQL), fxconsole 2026.09.12.3Brokers read secrets from the settings table (MySQL), fxconsole 2026.09.12.3
15b70c3
deploy.sh tự tạo .env cho brokerdeploy.sh creates the brokers' .env automatically
77b12cd
GoldenRobber 1.41.4 b21.1 — Manual Init Pause

Chi tiết kỹ thuật: Build & release, mục 2c (RELEASES.md) và Chuẩn tích hợp EA §9 (EA-HOTRELOAD-STANDARD.md).

Technical details: Builds & releases, section 2c (RELEASES.md) and EA integration standard §9 (EA-HOTRELOAD-STANDARD.md).