Development of a Gold(XAUUSD) Grid EA for MT4 with Google Sheets Web Authentication and Korean Inputs

Specification

Hello. I need an expert MQL4 developer to create a professional Gold (XAUUSD) Grid/Martingale EA for MetaTrader 4 (MT4). 

This project requires high reliability, a clean visual dashboard, strict web-based license security, and native language input configurations.

====================================================================
1. CORE TRADING LOGIC (XAUUSD, M1 Timeframe)
====================================================================
- The EA executes bi-directional (Buy/Sell) grid trading depending on input toggles.
- Initial Entry: Opens the first trade with 'StartLot' size.
- Grid Layering: If the market moves against the open position, the EA opens consecutive entries at fixed intervals defined by 'GridDistancePoints'.
- Lot Multiplier: The lot size multiplication factor is controlled by 'LotMultiplier'. (If set to 1.0, it operates as a standard fixed-lot grid).
- Max Protection: Open orders in a single direction are strictly limited by 'MaxOrdersPerDir'.
- Basket Take Profit: Once multiple orders are active, the EA calculates the combined break-even price and applies a unified Basket TP target in points ('TakeProfitPoints') from the average price matrix.
- Basket Stop Loss: If the cumulative floating drawdown reaches 'BasketSLAmount' in account currency ($), the EA must immediately hard-close all active positions to protect equity.

* SPECIAL NOTE FOR BACKTESTING/LOGIC ANALYSIS: 
Please ignore the manual over-trading anomaly observed between 10:14:42 and 10:20:00 on May 29, 2026, in any user-provided statement histories. It was a manual UI test error. The core algorithm must strictly follow the automated rules mentioned above.

====================================================================
2. SECURITY & LICENSE MANAGEMENT (Web Authentication)
====================================================================
I am running a subscription-based business. The EA must include a Web License Security layer using Google Sheets via WebRequest().
- On Initialization (OnInit), the EA must query a Google Sheet CSV export URL.
- The Google Sheet contains Authorized MT4 Account Numbers (Column A) and Expiry Dates (Column B).
- If the current terminal 'AccountNumber()' is NOT found in the sheet, or if the current time 'TimeCurrent()' has passed the Expiry Date, the EA must:
  a) Display a large red text on the chart screen: "LICENSE ERROR: Unauthorized Account or Subscription Expired!"
  b) Trigger an Alert popup dialog box.
  c) Forcefully unload itself from the chart using 'ExpertRemove()'.
- If the WebRequest fails entirely (e.g., no internet connection), the EA must lock itself and remove itself for safety.

====================================================================
3. USER INTERFACE (UI) & GRAPHICAL DASHBOARD
====================================================================
- The EA must draw a sleek, modern visual panel overlay on the chart screen.
- It must dynamically display: Account Balance, Equity, Margin Level, Open Buy/Sell Lots, Net Floating Profit/Loss, and Subscription Status.
- Dashboard position and text styling must be adjustable via input variables.

====================================================================
4. MANDATORY INPUT PARAMETERS (With Native Comments)
====================================================================
To allow customizable setups directly via the MT4 properties window, you must implement the inputs EXACTLY with the specific native Korean comments provided below. MT4 uses these comments as labels, which is mandatory for my operations.

input string   _heading0           = "======= GOLD GALE EA ======="; // [ GOLD GALE EA ]
input int      MagicNumber         = 123456;                         // 매직 넘버 (Magic Number)
input string   _heading1           = "--- [1] 거래 방향 설정 ---";
input bool     AllowLong           = true;                           // Buy(매수) 진입 허용
input bool     AllowShort          = true;                           // Sell(매도) 진입 허용
input bool     ShowDashboard       = true;                           // 차트 대시보드 표시 여부
input string   _heading2           = "--- [2] 초기 진입 설정 ---";
input double   StartLot            = 0.02;                           // 첫 번째 진입 랏사이즈 (Start Lot)
input string   _heading3           = "--- [3] 익절 설정 ---";
input double   TakeProfitPoints    = 200.0;                          // 목표 익절 포인트 (Points)
input string   _heading4           = "--- [4] 마틴게일 / 그리드 설정 ---";
input double   LotMultiplier       = 1.0;                            // 랏 증가 배수 (1.0 = 고정 랏 그리드)
input int      GridDistancePoints  = 700;                            // 추가 진입 간격 (Grid Distance Points)
input int      MaxOrdersPerDir     = 5;                              // 한 방향당 최대 진입 횟수 (Max Layers)
input string   _heading5           = "--- [5] 청산 모드 및 리스크 관리 ---";
input bool     UseBasketTP         = true;                           // 전체 평단가 기준 바스켓 익절 사용
input int      CooldownSeconds     = 0;                              // 바스켓 청산 후 재진입 대기 시간 (초)
input double   BasketSLAmount      = 200.0;                          // 계좌 통화 기준 강제 손절 금액 ($)
input string   _heading6           = "--- [6] 시장 분석 필터 (ADX/ATR) ---";
input int      ADX_Period          = 14;                             // ADX 기간 설정
input int      ATR_Period          = 14;                             // ATR 기간 설정
input double   ADX_Threshold       = 25.0;                           // 추세/횡보 판단 기준값
input string   _heading7           = "--- [7] 대시보드 UI 디자인 ---";
input string   PanelPosition       = "Bottom_Right";                 // 패널 위치 (우측하단 기본)
input int      Panel_X_Offset      = 50;                             // 가로 여백 (X 오프셋)
input int      Panel_Y_Offset      = 30;                             // 세로 여백 (Y 오프셋)
input int      FontSize            = 9;                              // 글자 크기
input string   FontName            = "Consolas";                     // 글꼴 이름

====================================================================
5. INTELLECTUAL PROPERTY & DELIVERY TERMS
====================================================================
- 100% Full Source Code Delivery Required: You must provide both the compiled file (.ex4) and the fully unencrypted source code file (.mq4) with all comments preserved. Deliveries with only the .ex4 file will be rejected immediately.
- Clean Code Practices: Ensure proper decimal and point-digit tracking automatically for Gold spot symbols (e.g., auto-detecting 2-digit or 3-digit quote environments).
- Absolute Confidentiality: You are strictly prohibited from reselling, redistributing, or reusing this code or logic for other commercial projects.

Thank you. I look forward to working with a skilled professional. Please provide your realistic cost estimation and delivery timeline.

Responded

1
Developer 1
Rating
(258)
Projects
322
30%
Arbitration
34
26% / 65%
Overdue
10
3%
Working
2
Developer 2
Rating
(3)
Projects
3
0%
Arbitration
1
0% / 100%
Overdue
0
Free
3
Developer 3
Rating
(159)
Projects
169
44%
Arbitration
3
33% / 33%
Overdue
1
1%
Loaded
4
Developer 4
Rating
(1303)
Projects
1732
49%
Arbitration
54
69% / 13%
Overdue
38
2%
Working
5
Developer 5
Rating
(633)
Projects
1001
47%
Arbitration
33
36% / 36%
Overdue
98
10%
Free
Published: 6 codes
6
Developer 6
Rating
(5)
Projects
8
13%
Arbitration
4
50% / 0%
Overdue
0
Working
Published: 3 articles, 32 codes
7
Developer 7
Rating
(268)
Projects
601
34%
Arbitration
64
20% / 58%
Overdue
147
24%
Working
Published: 1 article, 22 codes
8
Developer 8
Rating
(250)
Projects
460
26%
Arbitration
139
20% / 60%
Overdue
100
22%
Free
9
Developer 9
Rating
(4)
Projects
5
0%
Arbitration
1
100% / 0%
Overdue
1
20%
Loaded
10
Developer 10
Rating
(2)
Projects
2
0%
Arbitration
0
Overdue
0
Free
11
Developer 11
Rating
(17)
Projects
24
21%
Arbitration
4
50% / 25%
Overdue
4
17%
Working
12
Developer 12
Rating
(242)
Projects
285
77%
Arbitration
13
69% / 0%
Overdue
4
1%
Working
13
Developer 13
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
14
Developer 14
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
15
Developer 15
Rating
(5)
Projects
10
10%
Arbitration
2
0% / 50%
Overdue
2
20%
Working
16
Developer 16
Rating
(543)
Projects
824
62%
Arbitration
33
27% / 45%
Overdue
23
3%
Free
Published: 1 code
17
Developer 17
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
18
Developer 18
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
19
Developer 19
Rating
(2665)
Projects
3394
68%
Arbitration
77
48% / 14%
Overdue
342
10%
Free
Published: 1 code
20
Developer 20
Rating
(6)
Projects
5
0%
Arbitration
4
25% / 75%
Overdue
2
40%
Free
21
Developer 21
Rating
(6)
Projects
7
43%
Arbitration
1
0% / 100%
Overdue
0
Free
22
Developer 22
Rating
(258)
Projects
396
28%
Arbitration
69
19% / 49%
Overdue
121
31%
Working
23
Developer 23
Rating
(279)
Projects
376
72%
Arbitration
19
32% / 47%
Overdue
14
4%
Free
Published: 14 codes
24
Developer 24
Rating
(12)
Projects
13
23%
Arbitration
7
0% / 71%
Overdue
3
23%
Working
25
Developer 25
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
26
Developer 26
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Similar orders
I am looking for an experienced MQL4/MQL5 developer to build a custom MT4 indicator from scratch or cracking my ex4 file that i provide to you. I already have an existing indicator (EX4) which produces highly accurate buy/sell signals. I want a similar indicator developed based on its observable behavior and signal structure. my existing indicator is pc id protected so you have to do PC ID security bypass and source
Patricia Ukawilu 6:43 PM I need help creating an EA to optimize my trade. I already have a preliminary pine script which I will want optimized and create an EA from it to optimize my trade on MT4. I also subscribed to a signal app. I’m looking to automate the execution of the signal from the app so as not to miss out on good trades

Project information

Budget
50 - 150 USD
Deadline
from 2 to 7 day(s)