Работа завершена
![](https://c.mql5.com/i/avatar/avatar_na2.png)
![](https://c.mql5.com/i/avatar/avatar_na2.png)
Техническое задание
I have an existing MQL4 EA that I need to enhance. The original EA was coded by a very good developer who is no longer available.
I need someone who will be able to understand the way the existing version works. I have provided the following below:
- The original EA specification used by the developer to develop version 1.0 of the EA
- The developers description of the solution he coded for me
- The changes I need
I will supply the code to the original EA once I choose the developer to do the job. If you are good I will use you regularly to code other EAs for me
I need someone who is experienced, has a good command of the English Language who can review and understand this information I provide make the changes I need.
To be honest the original developer did most of the hard work so this will be a pretty straightforward job for an experienced MQL4 developer who knows a little bit about trading.
Please do not apply unless you have a significant amount of experience and a good command of the English language. I have already wasted my time on a developer who said he was up to the job but delivered a hot mess of an EA to test.
So further information is as follows:
1. The original EA specification used by the developer to develop version 1.0 of the EA
EA summed up in a few words. I want an EA to accumulate positions in the direction I specify
So for example I want the EA to accumulate SELL positions on the US500 market at a gap of 10 points.
So the EA activates and immediately opens a SELL position @4476 the market moves against me to 4486 and it opens another sell position, the market continues to move against me to 4496 and it opens another sell position
Then my luck changes and it starts to sell off so the 3 SELL positions remain open and eventually hit profit, it will open the next SELL position at 4466 (10 points from the first trade) then continues to move in my favour opens the next one at 4456 - then changes direction again, maintains all existing trades and doesn’t open a new sell trade until it reaches 4506 (10 points from 4496).
So taking the example above the trade structure would look like this:
EA SETTINGS
Magic Number
ORDER SETTINGS
Lots
Risk % of Equity (0=Fixed Lots
TRADES MANAGEMENT
- ACCUMULATION STRATEGY: Sell or Buy
- MINIMUM GAP BETWEEN TRADES: X
- LOCK IN PROFIT % OF SUM OF ALL TRADES OPEN BY THIS EA: X% (IF 0 THIS FUNCTION IS DISABLED) - COULD DO WITH YOUR ADVICE WHETHER THIS IS THE BEST WAY TO LOOK IN PROFIT OR IF YOU THINK ANOTHER WAY IS BETTER ????
- MAXIMUM NUMBER OF SIMULTANEOUS OPEN TRADES ALLOWED: X (IF 0 THIS FUNCTION IS DISABLED)
SETTINGS TO BE ADDED TO COMMENTS
G - GAP between trades
LI - Lock in % of Profits
MST- Maximum Simultaneous trades
SETTINGS TO BE ADDED TO SCREEN INFORMATION
G - GAP between trades
LI - Lock in % of Profits
MST- Maximum Simultaneous trades
All time Profit & Loss
Day Profit & Loss
2. The developers description of the solution he coded for me
A couple of pointers to make things clear.
You'll see some visual aids on screen.
The colored lines mark median entry levels for each side. Calculation is made so that commission and swap are factored in, so it works even if you'll hold positions overnight, too, because those will get updated based on data that comes from the server (current prices and costs), not only the entry prices.
From the reference levels the trailing will eventually kick in to lock in profit once the price goes beyond them. The colored dots show you how far that trigger point is from the median entry price.
It's configured so that the trigger is 2/3 of the gap, whatever you'll be setting that to. The reason is that if the price goes beyond the first order placed, before placing a 2nd one, it should secure the one behind first. If that ratio would be bigger (more than the gap), you may end up with more positions stacked one on top of the others in the direction of a monster move, without having them secured, only to have them implode equally sudden.
The averaging magic happens on price retrace.
On bottom left you see how you stand at every moment. You get info about how many orders are active, on which direction, how heavy you're on every side and what the combined positions are worth on every tick.
You may choose from more than two (as specified) scenarios. You may trade one side only, both sides or neither of them. That may come in handy in the event you want to NOT enter any more trades on a particular direction and wait for them to close. Parameters may be changed on the fly. Default is "None", so make sure you change that while testing, otherwise you won't get any trades. It's not such a big head-scratcher, but you never know...
Other than that, everything else is pretty much self explanatory.
Let me know how it goes.
3. The changes I need
Please let me know if you have any questions.
Thanks,
Mark