A function to loop through open positions and make pairs of arrays of tickets then close each pair of array if greater than target profit

MQL4 Experts

Job finished

Execution time 6 minutes
Feedback from customer
very good!
Feedback from employee
Great customer! Thank you for the order!

Specification

This is for an MT4 EA.

I need a function to loop through all open positions and store them in arrays based on price levels.
Then from these arrays (i.e. @ price 1760 there are open orders and @ price 1770 there are open orders and so on).
I want to calculate the ongoing profit of pairs of 2 arrays (i.e. sell array i with buy array i+1     AND    buy array i with sell array i-1).
And if profit is greater than target, close orders of these pairs of arrays. Each array may contain more than 1 ticket and can go up to x tickets, and the function will close the arrays only if the pairs contain minimally an array in each level.
The function will loop through all the arrays crawling from initial price up and down.
An optional function can also close the pairs of arrays if the total tickets in these pairs are x (can be input).
Code is already written, but i currently have problem with :

void CalculateAndCloseOrderGroupsForBuyAndSell() {
    // Loop from the initial_index down to 1 (since i-1 sell for i=0 doesn't exist)
    for (int i = initial_index; i > 0; i--) {
        double totalProfit = 0.0;
        
        if (buyTicketCounts[i] > 0 && sellTicketCounts[i-1] > 0){
           // Calculate profit for all buy tickets at index i
           for (int j = 0; j < buyTicketCounts[i]; j++) {
               int ticket = buyTickets[i][j];
               totalProfit += ComputeProfitForOrder(ticket);
           }
   
           // Calculate profit for all sell tickets at index i-1
           for (int j = 0; j < sellTicketCounts[i - 1]; j++) {
               int ticket = sellTickets[i - 1][j];
               totalProfit += ComputeProfitForOrder(ticket);
           }
          }

        // If the combined profit meets or exceeds the target, close the tickets and remove them from arrays
        if (totalProfit >= profit_target) {
            // Close and remove buy tickets at index i
            for (int j = buyTicketCounts[i] - 1; j >= 0; j--) {
                CloseOrder(buyTickets[i][j]);
                // Shift tickets to remove the closed ticket from the array
                for (int k = j; k < buyTicketCounts[i] - 1; k++) {
                    buyTickets[i][k] = buyTickets[i][k + 1];
                }
                buyTicketCounts[i]--;
            }

            // Close and remove sell tickets at index i-1
            for (int j = sellTicketCounts[i - 1] - 1; j >= 0; j--) {
                CloseOrder(sellTickets[i - 1][j]);
                // Shift tickets to remove the closed ticket from the array
                for (int k = j; k < sellTicketCounts[i - 1] - 1; k++) {
                    sellTickets[i - 1][k] = sellTickets[i - 1][k + 1];
                }
                sellTicketCounts[i - 1]--;
            }

            Print("Closed and removed orders for buy zone ", i, " and sell zone ", i - 1, " with total profit: ", totalProfit);
        }
    }
}


it always gives me "out of array" error. I will give the whole set of code. the focus is to fix this part to overcome the "out of array" issue/ error.


Thank you.




Responded

1
Developer 1
Rating
(100)
Projects
125
23%
Arbitration
12
0% / 75%
Overdue
22
18%
Free
2
Developer 2
Rating
(72)
Projects
80
10%
Arbitration
38
8% / 58%
Overdue
6
8%
Free
3
Developer 3
Rating
(53)
Projects
91
52%
Arbitration
2
0% / 50%
Overdue
1
1%
Free
4
Developer 4
Rating
(23)
Projects
45
20%
Arbitration
25
28% / 48%
Overdue
12
27%
Free
5
Developer 5
Rating
(67)
Projects
97
35%
Arbitration
11
27% / 45%
Overdue
13
13%
Free
6
Developer 6
Rating
(620)
Projects
723
33%
Arbitration
46
48% / 41%
Overdue
14
2%
Busy
7
Developer 7
Rating
(6)
Projects
10
10%
Arbitration
9
0% / 89%
Overdue
1
10%
Free
8
Developer 8
Rating
(69)
Projects
146
34%
Arbitration
13
8% / 62%
Overdue
26
18%
Free
Published: 6 codes
9
Developer 9
Rating
(568)
Projects
641
41%
Arbitration
25
48% / 36%
Overdue
46
7%
Working
Similar orders
Subject: Looking for an Experienced MQL Developer for Long-Term Collaboration (Mechanical Strategy) Hello everyone, I am reposting my request from last year. Due to work commitments, I couldn't dedicate time to this project back then, but now I am fully ready to move forward. I am looking for a highly experienced, verified MQL4/MQL5 programmer to automate my trading strategy. About the project: Rule-based &
Should be as it but no alarms, also we need to add a deep search so he can see all the preves candles and a memory function so its not slowing down the indicator. for higher time frames daily 4h 1h around 365 days and for lower time frames we do up to 20k bars but both flexible so i can change it later. the memory is important so the indicator is not always recalculating everything when a new candle shows especially
Creating a bot using the Parabolic indicator with a simple interface.. I want a bot that uses the Parabolic SAR indicator only, with these orders attached to it. Boot name : HEMIN .FX Magic number : 000000 …………………………………………………. Trade behavior : regular OR inverse OR only long "buy" OR only short "sell" Timeframe : ………… Period: ……… ………………………………………………….. Lot size : ……………… Break even in points : …
I am looking for an experienced MQL5 EA developer to develop an MT5 EA by the observable trading behaviour from a supplied live XAUUSD trade history . The EA appears to use a simple grid/recovery/hedging strategy with alternating BUY/SELL positions and progressive lot sizes. I need the developer to Develop the EA for MT5 / XAUUSD . Reproduce the observed entry, grid/add-on, recovery/hedging, lot progression and
Project: Fix & Schedule My Dual Fibo Standard Fibonacci Bot I have an existing MQ4 expert advisor called "Dual Fibo Standard Fibonacci". It needs to process 1,000 clients. Right now it runs blindly with no schedule and takes way too long. I need you to optimize it so it runs like a professional business with a 50-100 batch printed stamp copy progress log. Please reply with your numbers for this simple layout: * Phase
Gold robot 30+ USD
Yes. This screen is asking you to write the Requirements Specification for your Gold/XAUUSD trading robot. Since you want your DEEPTHINK X10 institutional-style MT5 system , use this ready-to-paste specification: DEEPTHINK X10 GOLD ROBOT – MT5 EXPERT ADVISOR REQUIREMENTS Develop an advanced MetaTrader 5 Expert Advisor (EA) for XAUUSD (Gold) scalping based on a multi-factor DEEPTHINK X10 trading framework. 1. MARKET -
Need an MQL5 Expert Advisor for MT5 that automates my manual trading strategy. Entry logic: Enter only when trend direction, support/resistance level, and RSI all align (Triple Confirmation). Extra confluence from Smart Money Concepts (order blocks, Fair Value Gaps, BOS/CHoCH). Risk rules: 1% risk per trade, minimum 1:2 risk-reward, stop-loss at structure levels (not fixed pips). Must-haves: Works on Islamic
I am looking for a developer experienced in EAs, MT5 and trade management optimization to help me add an intelligent early-exit system to my existing XAUUSD trading robot. The EA is already fully functional and performs best on the M15 timeframe. The entry strategy, BUY/SELL logic, sessions and core structure are already implemented. The work should focus exclusively on adding early exits for trades that are
PHANTOM PROTOCOL V1 35 - 150 USD
PHANTOM PROTOCOL V1 – MT5 EXPERT ADVISOR SPECIFICATION Develop a professional MetaTrader 5 (MT5) Expert Advisor named “PHANTOM PROTOCOL V1”. PRIMARY MARKET: - XAUUSD (Gold) - Designed primarily for M15 and H1 timeframes. - The EA must work with both 3-digit and 2-digit gold pricing where applicable. TRADING LOGIC: Use pure price-action and market-structure analysis rather than relying on a single indicator. The EA
Wanna Create A Trading Robot That Uses Liquidity Sweep And Smart Money Concept EA That Works On PC. I want A Developer Who Can Program Exactly My Strategy That Will Be Shared on A Video Upon The Selection. it Should Follow My Rules .It has To be able To Read Price Action, followed By Liquidity Sweep Areas And Combine with Smart Money Concept Knowledge. We Will Talk about Parameters later on . The robot should be able

Project information

Budget
30 - 45 USD