Good day Everyone, I have solved this problem. I only thought it right to share.
I could not develop a script but I found code needed to stop EA from opening past a maximum of x orders.
Included below is a snippet you should add to existing EA and where you should add it in your EA and EA can stop opening past a maximum of x orders
#include <Trade\PositionInfo.mqh> #include <Trade\Trade.mqh> CPositionInfo m_position; // trade position object CTrade m_trade; // trading object input int InpBuyMaxOrder = 2; input int InpSellMaxOrder = 2; void OnTick() { int count_buys = 0; double volumne_buys = 0.0; int count_sells = 0; double volumne_sells = 0.0; CalculateAllPositions(count_buys,volumne_buys,count_sells,volumne_sells); // you can then use InpBuyMaxOrder >= count_buys and InpSellMaxOrder >= count_sells as a condition to open trades return; } void CalculateAllPositions(int &count_buys,double &volumne_buys, int &count_sells,double &volumne_sells) { count_buys =0; volumne_buys = 0.0; count_sells =0; volumne_sells = 0.0; for(int i=PositionsTotal()-1;i>=0;i--) if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic) { if(m_position.PositionType()==POSITION_TYPE_BUY) { count_buys++; volumne_buys+=m_position.Volume(); continue; } else if(m_position.PositionType()==POSITION_TYPE_SELL) { count_sells++; volumne_sells+=m_position.Volume(); } } }
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Hi Everybody,
Request : I need a script/ code to add to EA to ensure EA opens a maximum of x orders (x buy/x sell) at a time.
If a script, it will make sure once x orders are reached on MT5 terminal, it can not open more until it decreases.
Back Story For transparency : I am currently optimizing an EA to a tick scalper. The EA opens orders per tick and takes minimum profit, sort of a ask/bid price hugger
The problem is that if left alone, the EA can open a lot of orders increasing margin requirement.
Before I came here, I performed due diligence in searching threads for the solution, I did not find. Most threads were left unanswered. Perhaps, it's not possible.
Kindly point out such if it exists already, Thanks a ton.
Attached is the EA code.