Develop and Implement a solution to handle groups of positions as a single entity and capture data for use by the main programme

MQL5 Experts Consultation

Specification

Introduction

Objective

I have developed a strategy concept that runs in MQL5 Hedging Mode, based on a concept of HOLDINGS (see below). I now require a programmer to change this concept into working code. The code needs to be easily read by me (I am not a programmer but have taught myself MQL5). I have some ideas on how this could be implemented via a new Class but am open to the Programmer determining the best method.

Main Functional Requirements

The main requirements are as follows:

1.       Have multiple Holdings open at any one time.

2.       Holdings can have from 1 to infinite positions

3.       Each Holding must have a unique identifier (Holding.index). It is important to be able to identify Holdings in respect to Symbol, Timeframe, Group and Type.

4.       Multiple Holdings will be active within any one main programme (i.e. same Magic Number).

5.       Each Holding will be of a particular Group (eg. Scalping, Trend, Retracement, etc). In practice we want to use a Group number to identify this (Holding.group)

6.       Each Holding will be of a Buy or Sell type (Holding.type)

7.       Scaling is the process of adding a new position to an existing Holding. Thus this changes a number of parameters

8.       Closing a Holding requires all positions within the Holding to beclosed.

9.       DrawTradeActivity is a functionality that needs to draw information on screen to allow for simple visualisation and status of Holdings that have been opened/closed.

Holdings are always opened with a Market Order (ECN Broker) for the first position

Data is captured and written to files and/or added to a string DataArray for use by the main programme for plotting on-screen to a data panel. The Data Panel is not part of this scope.

Style

The Customer is a not a programmer, although he has learnt rudimentary coding. Significantly, the customer has very little understanding of OOP and has found the implementation of the Array of Objects concept difficult to understand.

One of the requirements is that the code be written such that it is understandable and editable by the Customer. Therefore, it is important that:

  •            The code include commentary for clarification
  •            The code be structured logically as per the Specification unless it is otherwise agreed
  •            Coding shortcuts are avoided (eg: use if(x==false) rather than if(x!)

Unknowns Unknowns

Given the customer is not a programmer, he does not know what he doen’t know. It is therefore important that the Programmer consider the objectives of the Specification and discuss/clarify with the Customer as requried.

Holdings

We define a Holding as being a collection of linked positions that are treated as one single asset.

All positions within the Holding have the same direction (Buy/Sell), are of the same symbol and are placed by the same Trading Algorithm in the same Time Frame. However, the volume of positions within a Holding may differ.

Positions within a Holding are linked via a Holding Number. In practice, this is a counter that counts each Holding that has been opened by a particular Trading Algorithm. Each position is also provided with a Comment that uniquely identifies the Holding Number and the Position Number within the Holding. Thus, a position where the comment includes the number 14.003 means that this is the 3 rdposition of Holding #14.

In treating the Holding as a single asset, we aggregate:

  •            The Gross Profit
  •            The commissions of all positions
  •            The swap of all positions
  •            The Net Profit of all positions
  •            The volume of all positions

The Age of the Holding is calculated as the time elapsed from opening of the first position and once closed, the total age of the Holding is recorded as the time elapsed from the opening of the first position to the closing of the last position.

CTrade Class and Trade History Data

Obviously there is data available through existing classes and trade history.

These are available to be used. However, I require ALL data related to a Holding to be available in a single “container”. We do not want the main programme to pull data from different areas of MQL5/Terminal/Account etc.


SPECIFICATION


Responded

1
Developer 1
Rating
5
(1)
Projects
1
0%
Arbitration
0
Overdue
1
100%
Working
2
Developer 2
Rating
4.64
(14)
Projects
15
0%
Arbitration
4
0% / 50%
Overdue
3
20%
Working
3
Developer 3
Rating
5
(149)
Projects
153
67%
Arbitration
1
100% / 0%
Overdue
0
Loaded
4
Developer 4
Rating
4.85
(33)
Projects
66
8%
Arbitration
19
37% / 42%
Overdue
31
47%
Working
5
Developer 5
Rating
4.82
(507)
Projects
866
50%
Arbitration
291
59% / 25%
Overdue
117
14%
Working
Similar orders
Buy or Sell trades only Ea . In which i will specify the direction that the Ea will trade . But i will provide the other specs up on approval
Convert files 30+ USD
hello, are you manage to convert ex4 to mq4 source code file and unlock? Am looking for expert developer that will handle my project very well and I will be looking forward to deal with expert developer thanks
Need help creating a E.A, The indicator needs to be converted to MT4 then the 200 E.M.A needs to be added looking for a programmer with yrs of experience that knows how to navigate Tradingview
hello, I want an expert who automatically take a trade based on an indicator this indicator points lines up and down as you can see from my attached picture how to take the trade: SELL: if the red line traces (out) at the top, the expert takes a sell automatically on this candle where the line appeared (exit), not on the next candle no no no on the same candle. BUY: If the green line traces(appears) at the bottom
Hello, I'm looking for a dev who can dev a simple EA for mt4 based on the eFess Global indicator (I will provide the .ex4). video about the EA : https://www.youtube.com/watch?v=jyGs-ykW0io&amp ;t=1s The parameters of the EA : - comment - fixed lot size : (if I let it empty = use auto lot) - auto lot based on equity in % : (for ex : i can enter 0.5% and the EA calcule the size regarding my equity) - % equity stop
i have multiple strategies that i would like to use with this set of indicators. i would like to be able to adjust them and turn them on and off on different currency pairs
Hi, this is the algorithm for a Fibonacci robot, as for this robot this algorithm is created by myself, indtroduction of this robot i will give to freelanser after confirmation our contract Please contact with me by telegram +998912204879
Hey, We're looking for working latency arbitrage software. We know how it works, it's okay when accounts get banned - we can open new ones. We don't need arbitrage that only works with small scammy brokers :) We want to trade using regulated normal brokers. We need proof that you have one/ are capable of creating one. Are willing to pay between 10k USD - 20k USD for something that WORKS. Please only serious coders
Robin 50 USD
I would like a C# neural network script converted into a MQL4 EA. Most of the work is done already. The source code is well documented, there is also a very detailed video describing the functionality of the C# code. The C# scrips are both less than 200 lines long. My MQL4 EA is under 1000 lines, so most of the C# code already exists in MQL4, they are all functions. The functions need to be fixed, mostly the for
Looking for EA that trades GOLD - Looking to buy source code Looking for 10-20% a month Must have back testing results Must have trading history (preferably on live account) Interested in acquiring source code, please message if you have a XAUUSD ea with the above criteria

Project information

Budget
100 - 150 USD
For the developer
90 - 135 USD