指定
Hello,
I am looking for an experienced MQL4 developer to build a custom Grid Expert Advisor (EA) for MetaTrader 4 (MT4) with fully customizable parameters that can be set via the "Inputs" tab before running the EA.
Project Requirements:
1. Grid EA Logic:
Opens a grid of pending orders (both Buy and Sell orders) with customizable quantities and distances from the first price.
The EA should support both Buy and Sell grids, with the option to enable/disable each independently.
2. Input Parameters for the Grid:
Parameter | Explanation | Example |
Buy Grid Enable/Disable | Option to enable or disable the Buy grid. | True/False |
First price for Buy orders | The price level where the first Buy pending order will be placed. | 1700.00 |
Quantity of pending Up from First price | Number of Buy pending orders to be placed above the first price. | 5 |
Quantity of pending Down from First price | Number of Buy pending orders to be placed below the first price. | 5 |
Step between pending orders (in pips) | The distance in pips between each Buy pending order. | 100 pips |
Take Profit for Buy orders (in pips) | The Take Profit target for each Buy order, measured in pips. | 100 pips |
Lot size for each Buy order | The size of each Buy order. | 0.1 lots |
Secure Stop Loss after X amount of pips | After the price moves X amount of pips, move the Stop Loss to secure profit. | 50 pips |
Move Stop Loss to (open price + X pips) | Move the Stop Loss to the open price + X pips once profit is secured. | 10 pips |
Spread for Buy Grid | Additional spread added to the next order's placement after the Take Profit level is hit. | Step (e.g. 100 pips) + Spread |
Sell Grid Enable/Disable | Option to enable or disable the Sell grid. | True/False |
First price for Sell orders | The price level where the first Sell pending order will be placed. | 1700.00 |
Quantity of pending Sell orders above and below the first price | Number of Sell pending orders to be placed both above and below the first price. | 5 above, 5 below |
Step between pending Sell orders (in pips) | The distance in pips between each Sell pending order. | 100 pips |
Take Profit for Sell orders (in pips) | The Take Profit target for each Sell order, measured in pips. | 100 pips |
Lot size for each Sell order | The size of each Sell order. | 0.1 lots |
Secure Stop Loss after X amount of pips | After the price moves X amount of pips, move the Stop Loss to secure profit. | 50 pips |
Move Stop Loss to (open price + X pips) | Move the Stop Loss to the open price + X pips once profit is secured. | 10 pips |
Spread for Sell Grid | Additional spread added to the next order's placement after the Take Profit level is hit. | Step (e.g. 100 pips) + Spread |
Magic number | Used to uniquely identify the EA's orders and distinguish them from other EAs. | 12345 |
3. Additional Functionality:
- If a trade is active, the EA should hold all other trades from opening until the active trade hits the Take Profit (TP).
- The EA must adjust the Stop Loss after securing a certain amount of pips and move it to the open price + a customizable number of pips (based on user input).
- The EA should handle error checking for trading functions like OrderSend, OrderModify, OrderClose, etc.
- If the EA is removed from the chart, it should automatically delete all pending orders that were placed by the EA.
4. Performance:
The EA must be efficient, not consuming too many resources, and should not freeze or slow down the MT4 terminal during operation.
Deliverables:
- Fully functional .mq4 file with all the required input parameters and functionalities.
- Clear and well-commented code for easy future adjustments.
- A video demonstration showing the EA being tested on the MT4 platform.