Last Order
Info
The Last Order is a Script for MetaTrader 4 that the header file contains functions for searching the last and previous orders in the trade pool. Functions:get_last_order()Returns the ticket number of the last order.
Usage
This tool is typically used for enhancing chart analysis and decision making.
Platform
This Script works exclusively on MetaTrader 4 (both build 600+ and newer versions).
Setup
Place the downloaded file in MQL4/Scripts folder via File ? Open Data Folder in MetaTrader 4.
How to Install and Use Last Order
1. Installation: Move your script file into the MQL/Scripts directory and restart the platform.
2. Execution: Drag the script onto a chart; it will perform a one-time action, such as closing all open orders or clearing chart objects.
3. Editing: Use MetaEditor (F4) to modify code, click "Compile," and verify no errors appear in the terminal before running.
4. Removing: Scripts stop automatically, but you can remove them manually by right-clicking the chart and choosing "Remove Script."
Frequently Asked Questions
Q: How are scripts different from EAs? A: Scripts execute a single action and then stop; EAs monitor the market and trade continuously.
Q: Can I assign a hotkey to a script? A: Yes, right-click the script in the Navigator, select "Set Hotkey," and define your preferred keyboard shortcut.
Q: Why did my script stop? A: Scripts are designed to stop immediately after finishing their programmed command; this is normal behavior.
What this tool does
The header file contains functions for searching the last and previous orders in the trade pool.
Typical Use Case
This Script excels in automated trading and technical analysis on MetaTrader 4.
Compatible Platform & Setup
This Script works on MetaTrader 4. Place the file in the MQL4/Scripts folder and restart the terminal.
Description & Settings
Related: order information indicator - another powerful script for MetaTrader 4 traders.
The header file contains functions for searching the last and previous orders in the trade pool.Also recommended: script to close all orders - similar script with strong performance on MetaTrader 4.
Functions:
get_last_order()
Returns the ticket number of the last order. If no last order is found, the function returns -1.
Arguments:
magic - Magic number ID for filtering orders. If 0, it is not used.
type - Order type (buy, sell, sell limit, buy limit, sell stop, buy stop) for filtering. Default is -1.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
get_first_order()
Returns the ticket number of the first order. If no first order is found, the function returns -1.
Arguments:
magic - Magic number ID for filtering orders. If 0, it is not used.
type - Order type (buy, sell, sell limit, buy limit, sell stop, buy stop) for filtering. Default is -1.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
order_lots()
Returns the trade volume for a given ticket number.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
order_comment()
Returns the comment string of the order by ticket number.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
order_type()
Returns the type of the order by ticket number.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
order_open_price()
Returns the open price of the order by ticket number.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
order_close_price()
Returns the close price of the order by ticket number.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
order_open_time()
Returns the open time of the order by ticket number.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
order_close_time()
Returns the close time of the order by ticket number.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
close_by()
Returns the trigger for closing the order: takeprofit (1), stoploss (-1), or manual (0), based on the order comment.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
close_by2()
Returns the trigger for closing the order: takeprofit (1), stoploss (-1), or manual (0), based on the close and open prices of the order.
Arguments:
ticket - Ticket number of the order.
mode - Order pool: mode_trades for trade orders, mode_history for closed orders.
orders_count()
Returns the count of opened orders.
Arguments:
magic - Magic number ID for filtering orders. If 0, it is not used.
type - Order type (buy, sell, sell limit, buy limit, sell stop, buy stop) for filtering. If -1, it is not used.
comment - Comment string of the orders. If empty, it is not used.
You may also like: automated market order execution script - excellent alternative for script users on MetaTrader 4.
Source Code
#property copyright "robotfx"
#property link "https://robotfx.org"
#property strict
#property version "1.01"
int get_last_order( int magic, int type = -1, int mode = mode_trades )
{
int orders_total = 0, ticket = -1;
string symbol = symbol();
datetime opn_time = 0, ord_time = 0;
if( mode == mode_history )
.......
⚠ Limitations & Risk Warning
- This tool is provided for educational and testing purposes only.
- Past performance does not guarantee future results.
- Trading involves substantial risk of loss. Use on a demo account first.
- Results may vary depending on market conditions, broker, and settings.
- We recommend thorough backtesting and forward testing before using with real funds.