Verdure OCO EA
- Utilities
- Olawale Adenagbe
- Version: 3.0
- Updated: 24 March 2020
- Activations: 5
Overview
A One-Cancels-the-Other Order (OCO) is a pair of orders stipulating that if one order is executed, then the other order is automatically cancelled.
Verdure OCO EA brings this functionality to MT4.
This EA is a robust implementation of the popular One-Cancels-the-Other Order (OCO) but with added benefits, features and options. It is an EA that helps with trade management and especially useful for traders who use stop and reverse trading systems, traders who look for opportunities around pivot points, Fibonacci levels, support and resistance levels and those who use trading systems that heavily rely on pending orders. It is also an indispensable tool for news traders.
Application Scenarios
Stop and Reverse trading
If you like to trade using stop and reverse trading systems (especially in highly volatile market when there is no time to quickly close an open order before placing a reverse order), Verdure OCO EA takes one step away by automatically closing the opposite order once a new order is triggered. You would not need to close the open sell position before placing a buy order. Verdure OCO EA automatically and seamlessly closes your sell order once the buy order becomes a market order.
Trading around pivot point, Fibo level, Support and Resistance levels using pending orders
If you are a breakout trader who looks for trading opportunities around pivot levels, Fibo levels, support and resistance levels etc, you now have a perfect tool that would greatly help reduce time spent watching and managing positions. For example, you can place two pending orders: first - a buy stop order to buy if the price goes above a resistance level, and the second - a sell stop order to sell if the price goes below a support level.
You would usually want to delete the other order once any of the two orders get filled. With Verdure OCO EA, you don't need to sit watching the chart. Just place your two orders and go. Even more, you can just disable 'managependingorders' parameter so that the second other is not deleted should you want to take advantage of the opposite trade. You would usually want to do this only if you have included stop loss and/or take profit levels with your orders. In any case, Verdure OCO EA is up to the task.
Pending Orders
If you generally use pending orders to time trade executions, OCO orders can help you manage trade executions and also help reduce time spent watching charts.
Pending orders are very useful when you want to take advantage of a correction in a trend so that you buy the trough of the trend or sell the peak. Whichever is the case, Verdure OCO EA is quite a handy tool.
News Trading
If there is a major news event at say 9 am for USD and from your analysis, you reckon it would be bad for USD, you may want to place a BUY STOP order on EURUSD just before the event in anticipation for a long position on EURUSD should the market favor your analysis. However, considering market behavior especially during major news event, you may also want to place a SELL STOP order should the market go against your prediction.
If your analysis is right and the news release was actually bad for USD, it would force EURUSD to go up and your BUY STOP order would be filled. Verdure OCO EA would then delete your SELL STOP order as soon as your BUY STOP order becomes a market order. However, if your analysis was wrong and the news release was good for USD, it would force EURUSD to go down and your SELL STOP order would be filled. Verdure OCO EA would then delete your BUY STOP order as soon as your SELL STOP order becomes a market order.
Features and Benefits
- Reduce time spent managing and watching charts if you use pending orders.
- Option to detect and alert on orders for same instrument in same direction.
- Very useful for news traders.
- Option to work in GLOBAL mode or LOCAL mode. In global mode, it manages all orders on the account while in local mode, it only manages orders of the instrument on which the Expert Advisor is placed. See MODE section for more details.
- All activities by the EA are logged in the Expert tab for audit purpose (no secrets, everything is plain).
- Can be configured to send push notification of all activities to mobile terminal.
- Can be configured to send email of all activities.
- Can be configured to generate alert for all activities.
Input Parameters
- exclude_magic - a comma separated list of magic numbers to exclude from being processed by Verdure OCO EA. This is particularly useful if you don't want Verdure OCO EA to manage orders placed by another EA.
- mode - mode of operation of the EA (LOCAL or GLOBAL - see MODES section below).
- managependingorders - indicate whether pending orders should be managed or not (TRUE or FALSE - see MANAGING PENDING ORDERS section below).
- checkduplicateorders - indicate whether the EA should check if there is more than one order for the same instrument in the same direction, i.e. say two buy positions on EURUSD (TRUE or FALSE - see CHECKING DUPLICATE ORDERS section below).
- sendemail - send email to email address configured in MT4.
- pushnotification - push notification to the mobile terminal.
- alert - display and sound alert.
Modes
Local - in LOCAL mode, the EA manages positions of the chart symbol on which it is placed, i.e. if you place the EA on EURUSD, it will only manage open EURUSD positions. You would need to specify a different 'magicnumber' for every symbol you place the EA on in this mode.
Global - in GLOBAL mode, the EA manages ALL positions on the account irrespective of the chart it is placed on. You would need to specify a different 'magicnumber' if you place the indicator on more than one chart in this mode. It is HIGHLY recommended that you should not put the EA on multiple charts when the mode is set to GLOBAL.
The default mode is LOCAL.
Managing Pending Orders ('managependingorders' parameter - can be set to True or False. Default is True).
- Example, when set to FALSE: If you place a BUY order and there is a SELL STOP or SELL LIMIT pending order, the SELL STOP or SELL LIMIT would not be deleted because the EA does not check pending orders when managependingorders parameter is set to FALSE.
- Example, when set to TRUE: If you place a BUY order and there is a SELL STOP or SELL LIMIT pending order, the SELL STOP or SELL LIMIT would be deleted because the BUY order placed cancels the pending orders (they are in the opposite directions).
Checking Duplicate Orders ('checkduplicateorders' parameter - can be set to True or False. Default is False).
- Example, when set to FALSE: If there is already a SELL order for EURUSD and you place another SELL order for EURUSD, alert, email and/or notification would not be sent (the EA sees it as normal trading).
- Example, when set to TRUE: If there is already a SELL order for EURUSD and you place another SELL order for EURUSD, alert, email and/or notification would be sent (the EA sees it as an abnormal trading). The alert would help you to decide whether to close one or leave both trades running.
Note: If your trading system allows you to open more than one position in the same direction, simply set this parameter (checkduplicateorders) to False. See Comments tab for more information and resources on OCO orders.
This is an excellent product. It does just as I explained and looks to be the only working type available for Mt4. It is easily worth double the price as not having to watch the trades for hours and manually edit is a great relief. Thank you Olawale