Those errors are normal. MT5 allows only one position per pair. So every time you open a new position, it adds to the existing position. So if lot=1 is used per every trade and Vol = 1, it will be one trade executed. If lot=0.5 and vol = 1, the ea will be able to execute 2 trades (started by a trade condition) until it reaches 1. If you want to open a single trade of 0.1 you can use lot=0.1 and vol=0.1 max size of position = max vol = lot size * number of trades the ea can execute in the same direction (long or short) given the trade conditions "Can not execute new order for POSITION_TYPE_SELL for Symbol EURUSD. Maximum Volume 1 reached." means that the trade condition is true so the ea is ready to trade but it cannot since it already reached the max volume.
In MT5, getting the total open volume is more difficult than MT4. Sometimes the server does not respond quick enough. In these cases you may see this error "M-EURUSD Warning: Could not get position volume. Assigning volume of 0". It means the server is busy and cannot send the open volume or it has not finished processing the current transaction. In any case, the ea retry several times until it gets the right amount or it fails and assign a zero value.
|