Welcome Forex EA downloads & MT4/MT5 auto-trading resources — EAs, Gold EAs, quant tools and real-world automation.
Sign In Sign Up

Printing large amounts of information from the terminal (PrintXYZ) - MetaTrader 5 Library - MT4/MT5 Resources

author EAcpu | 6 reads | 0 comments |

Print massive information (PrintXYZ) from the terminal - library for MetaTrader 5

Print massive information (PrintXYZ) from the terminal - library for MetaTrader 5

a small A collection of functions that print large amounts of information from the terminal to the Expert tab.

This is most useful for printing (and debugging) trade account specifications, client properties, OpenCL devices, specific charts or symbols, MQL program information, or printing specific positions/trades/orders in the trading history. Printing all tester statistics can be used within the tester's OnTester() or OnDeinit().

Definitions of all enumeration types of the MQL5 language can also be pretty-printed in a universal way (no hard-coded enumerations, to ensure that all newly added values ​​are printed to MQL5) By using PrintEnum () , where T is an enumeration type, such as ENUM_TIMEFRAMES.

The print struct(var) function is used to pretty print struct variables (showing all their field names and values).

This printexpression(x) function-like macro prints the stringified expression along with its value and type. This is mainly useful for debugging expressions, variables or function calls. The output of this script can be sent to remote support or freelance developers to help detect and fix issues on the terminal.

 //+------------------------------------------------------------------+
//| Functions in the "PrintXYZ" library.                            |
//+------------------------------------------------------------------+
Blank print account(); Blank print terminal(); Blank PrintMQLInfo(); Blank print chart( long chart ID); Blank print object( long chart ID, string name); Blank print symbol( string symbol); Blank print series( string symbol, ENUM_TIMEFRAMES approximate time); Blank print position( oolong pos_ticket ); Blank print order ( own order ticket); Blank print transaction ( own transaction ticket); Blank print historical order ( own order ticket); Blank print OpenCL ( integer device); Blank PrintTesterStatistics(); Blank PrintEnum (); BlankPrintStruct (T& struct_var);
print expression(x); // macro


By including the "PrintXYZ" library in your project, the above functionality will be available in MetaEditor's autocomplete box wherever you type "Print". You can quickly compile the project file, print the results of MQL5 functions to the "Expert" tab, and then you can decide which MQL function / enumeration value combination best suits your requirements.

Print massive information (PrintXYZ) from the terminal - library for MetaTrader 5

//+------------------------------------------------------------------+
//|Test script |
//+------------------------------------------------------------------+
#include "printXYZ.mqh"

blank start ()
  { //--- Print massive information for debugging print account();
  printTerminal();
  Print OpenCL( 0 ); //By the index of the OpenCL device in the system //PrintOpenCL(CL_USE_GPU_ONLY); //By the type of OpenCL device

//--- Print information about the running program, a specific chart, symbol or series.  PrintMQLInfo();
  printchart( 0 );
  Print object ( 0 , "Horizontal line 54478" );
  printsym( _symbol );
  print_series( _symbol , PERIOD_CURRENT ); //--- print specific positions or pending orders. //Print location(925571424); //By location ticket Print location( locationGetTicket ( 0 )); //By location index [Add additional PositionGetTicket(index)] Print order( Order GetTicket ( 0 )); //--- Print a specific historical transaction or order. HistorySelect ( 0 , INT_MAX );
  Print transactions ( Historical transactions get tickets ( 0 )); // Print historical orders by transaction index ( Historical orders get tickets ( 0 )); //--- Print enumeration definitions, structural variables or expressions.  Print enumeration <ENUM_TIMEFRAMES> ();

Mql date time dt;
BuildTime ( timecurrent (), dt);
  printstructure(dt);

  Print expression( account information integer ( account login ));
  printExpression( _view );
  Print expression ( (( integer ) 1 << 16 ) | 0xFFF );
  }

Example output:

/*
 Example output:

 Account Information<<================================
 Account information integer (ENUM_ACCOUNT_INFO_INTEGER):
  Account login = 51986913
  Account Trading Mode = Account Trading Mode_Demo(0)
  Account transactions allowed = 1
  Account Trading Expert = 1
  Account Leverage = 1000
  ACCOUNT_MARGIN_SO_MODE = ACCOUNT_STOPOUT_MODE_PERCENT(0)
  Account Limit Orders = 200
  Account Margin Mode = Account Margin Mode Retail Hedging (2)
  ACCOUNT_CURRENCY_DIGITS = 2
  ACCOUNT_FIFO_CLOSED = 0
  ACCOUNT_HEDGE_ALLOWED = 1
 AccountInfoDouble(ENUM_ACCOUNT_INFO_DOUBLE):
  Account balance = 199.96
  Account Credit = 0.0
  Account profit = -0.38
  Account Equity = 199.58
  Account Margin = 1.05
  Account margin free = 198.53
  Account margin level = 19007.619047619046
  Account margin SO_CALL = 100.0
  Account Margin_SO_SO = 0.0
  Account margin initial = 0.0
  Account Margin Maintenance = 0.0
  Account Equity = 0.0
  Account Debt = 0.0
  Account commission blocked = 0.0
 Account information string (ENUM_ACCOUNT_INFO_STRING):
  ACCOUNT_NAME = Amr
  ACCOUNT_COMPANY = Raw Trading Co., Ltd. ACCOUNT_SERVER = ICMarketsSC-Demo ACCOUNT_CURRENCY = USDSymbolsTotal(true) = 2 [int]
 SymbolsTotal(false) = 2061 [int]
 Total positions() = 1 [int]
 OrderTotal() = 0 [int]
 HistoryDealsTotal() = 2 [int]
 HistoryOrdersTotal() = 1 [int]
 Terminal information<<================================
 Terminal information integer (ENUM_TERMINAL_INFO_INTEGER):
  terminal build = 4755
  Terminal connected = 1
  TERMINAL_DLLS_ALLOWED = 0
  Allowed terminal transactions = 0
  TERMINAL_EMAIL_ENABLED = 0
  TERMINAL_FTP_ENABLED = 0
  TERMINAL_MAXBARS = 500000
  terminal codepage = 0
  Terminal memory physics = 32609
  Total terminal memory = 65218
  Available terminal memory = 64457
  Terminal memory used = 761
  terminal_X64 = 1
  TERMINAL_OPENCL_SUPPORT = 65538
  Terminal disk space = 109612
  Terminal_CPU_Core=24
  Terminal MQID = 0
  TERMINAL_COMMUNITY_ACCOUNT = 0
  Terminal community connection = 0
  Terminal notifications enabled = 0
  Terminal screen DPI = 96
  TERMINAL_PING_LAST = 181490
  left terminal screen = 0
  Terminal screen top = 0
  Terminal screen width = 1920
  Terminal screen height = 1080
  left terminal = 476
  terminal top = 74
  right terminal = 1793
  terminal bottom = 876
  Terminal_VPS = 0
  TERMINAL_KEYSTATE_TAB = 0
  TERMINAL_KEYSTATE_ENTER = 0
  TERMINAL_KEYSTATE_SHIFT = 0
  TERMINAL_KEYSTATE_CONTROL = 0
  Terminal key status menu = 0
  TERMINAL_KEYSTATE_CAPSLOCK = 0
  TERMINAL_KEYSTATE_ESCAPE = 0
  TERMINAL_KEYSTATE_PAGEUP = 0
  TERMINAL_KEYSTATE_PAGEDOWN = 0
  TERMINAL_KEYSTATE_END = 0
  TERMINAL_KEYSTATE_HOME = 0
  TERMINAL_KEYSTATE_LEFT = 0
  TERMINAL_KEYSTATE_UP = 0
  TERMINAL_KEYSTATE_RIGHT = 0
  TERMINAL_KEYSTATE_DOWN = 0
  TERMINAL_KEYSTATE_INSERT = 0
  TERMINAL_KEYSTATE_DELETE = 0
  TERMINAL_KEYSTATE_NUMLOCK = 1
  TERMINAL_KEYSTATE_SCRLOCK = 0
 TerminalInfoDouble(ENUM_TERMINAL_INFO_DOUBLE):
  Terminal community balance = 0.0
  Terminal retransmission = 26.699029126213592 Terminal information string (ENUM_TERMINAL_INFO_STRING):
  TERMINAL_COMPANY = Raw Trading Co., Ltd. TERMINAL_NAME = MetaTrader 5 IC Markets (SC)
  TERMINAL_PATH = C:\Program Files\MetaTrader 5 IC Markets (SC)
  TERMINAL_DATA_PATH = C:\Users\Amr\AppData\Roaming\MetaQuotes\Terminal\1640F6577B1C4EC659BF41EA9F6C38ED
  TERMINAL_COMMONDATA_PATH = C:\Users\Amr\AppData\Roaming\MetaQuotes\Terminal\Common
  TERMINAL_LANGUAGE = English TERMINAL_CPU_NAME = 13th Generation Intel Core i7-13700KF
  TERMINAL_OS_VERSION = Windows 11 Build 22631
  terminal_cpu_architecture = AVX2 + FMA3
 Time zone information<<================================
 TimeTradeServer() = 2025.02.22 22:04:33 [date time]
 TimeCurrent() = 2025.02.21 23:56:59 [date time]
 TimeGMT() = 2025.02.22 20:04:33 [date time]
 TimeLocal() = 2025.02.22 23:04:33 [date time]
 TimeGMTOffset() = -10800 [int]
 TimeDaylightSavings() = 0 [int]
 OpenCL Information<<================================
 CLGetInfoInteger(cl_ctx,ENUM_OPENCL_PROPERTY_INTEGER):
  CL_LAST_ERROR = 0
  CL_DEVICE_COUNT = 1
  CL_DEVICE_TYPE = CL_DEVICE_GPU(4)
  CL_DEVICE_VENDOR_ID = 4098
  CL_DEVICE_MAX_COMPUTE_UNITS = 16
  CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS = 3
  CL_DEVICE_MAX_WORK_GROUP_SIZE = 256
  CL_DEVICE_MAX_WORK_ITEM_SIZES = -1
  CL_DEVICE_MAX_CLOCK_FREQUENCY = 1050
  CL_DEVICE_GLOBAL_MEM_SIZE = 3221225472
  CL_DEVICE_LOCAL_MEM_SIZE = 32768
  CL_DEVICE_DOUBLE_FP_CONFIG = 63
  CL_BUFFER_SIZE = 0
  CL_KERNEL_WORK_GROUP_SIZE = -1
  CL_KERNEL_LOCAL_MEM_SIZE = -1
  CL_KERNEL_PRIVATE_MEM_SIZE = -1
 CLGetInfoString(cl_ctx, ENUM_OPENCL_PROPERTY_STRING):
  CL_PLATFORM_PROFILE = FULL_PROFILE
  CL_PLATFORM_VERSION = OpenCL 2.1 AMD-APP (3075.13)
  CL_PLATFORM_NAME = AMD Accelerated Parallel Processing CL_PLATFORM_VENDOR = Advanced Micro Devices, Inc.
  CL_PLATFORM_EXTENSIONS = cl_khr_icd cl_khr_d3d10_sharing cl_khr_d3d11_sharing cl_khr_dx9_media_sharing cl_amd_event_callback cl_amd_offline_devices
  CL_ERROR_DESCRIPTION = Unknown OpenCL error 65536
  CL_DEVICE_NAME = Pitcairn CL_DEVICE_VENDOR = Advanced Micro Devices, Inc.
  CL_driverversion=3075.13
  CL_DEVICE_PROFILE = Full profile CL_DEVICE_VERSION = OpenCL 1.2 AMD-APP (3075.13) CL_DEVICE_EXTENSIONS = cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics ..... CL_DEVICE_OPENCL_C_VERSION = OpenCL C 1.2 CL_DEVICE_BUILT_IN_KERNELS = Program Information <<================================ Compiler version: 4755 (__MQLBUILD__), X64 General (__CPU_ARCHITECTURE__) MQLInfoInteger(ENUM_MQL_INFO_INTEGER): MQL_PROGRAM_TYPE = PROGRAM_SCRIPT(1) MQL_DLLS_ALLOWED = 0 MQL_TRADE_ALLOWED = 0 MQL_DEBUG = 0 MQL_Tester = 0 MQL_OPTIMIZATION = 0 MQL_VISUAL_MODE = 0 MQL_LICENSE_TYPE = LICENSE_FREE(0) MQL_PROFILER = 0 MQL_MEMORY_USED = 1 MQL_FRAME_MODE = 0 MQL_MEMORY_LIMIT = 8388608 MQL_SIGNALS_ALLOWED = 0 MQL_CodePage = 0 MQL_FORWARD = 0 MQL_HANDLES_USED = 0 MQL_STARTED_FROM_CONFIG = 0 MQL_GLOBAL_COUNTER = 15 MQLInfoString(ENUM_MQL_INFO_STRING): MQL_PROGRAM_NAME = PrintXYZ_demo MQL_PROGRAM_PATH = C:\Users\Amr\AppData\Roaming\MetaQuotes\Terminal\1640F6577B1C4EC659BF41EA9F6C38ED\MQL5\Scripts\PrintXYZ\PrintXYZ_demo.ex5 Chart information<<================================== Chart (EUR/USD, H1) ChartGetInteger(chart_id,ENUM_CHART_PROPERTY_INTEGER): Chart Mode = Chart Candles(1) Chart Foreground = 0 CHART_SHIFT = 1 Chart AutoScroll = 1 Chart Scale = 4 Chart Scale = 0 CHART_SCALEFIX_11 = 0 CHART_SCALE_PT_PER_BAR = 0 CHART_SHOW_OHLC = 0 CHART_SHOW_BID_LINE = 1 CHART_SHOW_ASK_LINE = 0 CHART_SHOW_LAST_LINE = 0 CHART_SHOW_PERIOD_SEP = 0 Chart display grid = 0 CHART_SHOW_VOLUMES = CHART_VOLUME_TICK(1) CHART_SHOW_OBJECT_DESCR = 0 CHART_COLOR_BACKGROUND = clrBlack CHART_COLOR_FOREGROUND = clrWhite CHART_COLOR_GRID = clrLightSlateGray CHART_COLOR_VOLUME = clrLimeGreen CHART_COLOR_CHART_UP = clrLime CHART_COLOR_CHART_DOWN = clrLime CHART_COLOR_CHART_LINE = clrLime CHART_COLOR_CANDLE_BULL = clrBlack CHART_COLOR_CANDLE_BEAR = clrWhite CHART_COLOR_BID = clrLightSlateGray CHART_COLOR_ASK = clrRed CHART_COLOR_LAST = 0,192,0 CHART_COLOR_STOP_LEVEL = clrRed CHART_SHOW_TRADE_LEVELS = 1 CHART_BRING_TO_TOP = 1 CHART_SHOW_DATE_SCALE = 1 CHART_SHOW_PRICE_SCALE = 1 CHART_EVENT_OBJECT_CREATE = 0 CHART_EVENT_OBJECT_DELETE = 0 CHART_EVENT_MOUSE_MOVE = 1 Chart mouse scroll = 1 CHART_DRAG_TRADE_LEVELS = 1 CHART_SHOW_ONE_CLICK = 1 CHART_QUICK_NAVIGATION = 1 Chart Display = 1 Chart Keyboard Control = 1 CHART_EVENT_MOUSE_WHEEL = 0 CHART_CROSSHAIR_TOOL = 1 CHART_CONTEXT_MENU = 1 CHART_IS_DOCKED = 1 CHART_FLOAT_LEFT = 0 CHART_FLOAT_TOP = 0 CHART_FLOAT_RIGHT = 0 CHART_FLOAT_BOTTOM = 0 CHART_SHOW_TRADE_HISTORY = 1 CHART_VISIBLE_BARS = 76 CHART_WINDOWS_TOTAL = 1 CHART_WINDOW_IS_VISIBLE = 1 Chart window handle = 8981358 CHART_FIRST_VISIBLE_BAR = 75 Bar chart width = 95 Chart width in pixels = 1506 CHART_HEIGHT_IN_PIXELS = 431 CHART_WINDOW_YDISTANCE = 0 CHART_IS_OBJECT = 0 CHART_IS_OFFLINE = 0 CHART_IS_MAXIMIZED = 1 CHART_IS_MINIMIZED = 0 CHART_SHOW_TICKER = 1 ChartGetDouble(chart_id,ENUM_CHART_PROPERTY_DOUBLE): CHART_SHIFT_SIZE = 20.371599203715988 CHART_FIXED_MAX = 1.051 CHART_FIXED_MIN = 1.0387 CHART_POINTS_PER_BAR = 1.0 Chart fixed position = 0.0 CHART_PRICE_MIN = 1.0387 CHART_PRICE_MAX = 1.051 ChartGetString(chart_id,ENUM_CHART_PROPERTY_STRING): Chart Comments = CHART_EXPERT_NAME = CHART_SCRIPT_NAME = PrintXYZ_demo ChartIndicatorName(0,0) = "iForexSessions" Chart Indicator Name(0,1) = "MA(10)" Object information <<================================ ObjectGetInteger(chart_id,objname,ENUM_OBJECT_PROPERTY_INTEGER): OBJPROP_COLOR = clrRed OBJPROP_STYLE = STYLE_SOLID(0) OBJPROP_WIDTH = 1 OBJPROP_BACK = 0 OBJPROP_SELECTED = 0 OBJPROP_TYPE = OBJ_HLINE(1) OBJPROP_TIME = 1970.01.01 00:00:00 OBJPROP_SELECTABLE = 1 OBJPROP_CREATETIME = 1970.01.01 00:00:00 OBJPROP_TIMEFRAMES = OBJ_ALL_PERIODS(2097151) OBJPROP_LEVELS = 0 OBJPROP_LEVLCOLOR = clrBlack OBJPROP_LEVELSTYLE = STYLE_SOLID(0) OBJPROP_LEVELWIDTH = 0 OBJPROP_ZORDER = 0 OBJPROP_HIDDEN = 0 OBJPROP_FONTSIZE =0 OBJPROP_DEGREE = ELLIOTT_GRAND_SUPERCYCLE(0) OBJPROP_DRAWLINES = 0 OBJPROP_STATE = 0 OBJPROP_XSIZE = 0 OBJPROP_YSIZE = 0 OBJPROP_PERIOD = PERIOD_CURRENT(0) OBJPROP_DATE_SCALE = 0 OBJPROP_PRICE_SCALE = 0 OBJPROP_BGCOLOR = clrBlack OBJPROP_CORNER = CORNER_LEFT_UPPER(0) OBJPROP_CHART_SCALE = 0 OBJPROP_READONLY = 0 OBJPROP_BORDER_TYPE = BORDER_FLAT(0) OBJPROP_CHART_ID = 0 OBJPROP_FILL = 0 OBJPROP_RAY = 0 OBJPROP_XOFFSET = 0 OBJPROP_YOFFSET = 0 OBJPROP_BORDER_COLOR = clrBlack OBJPROP_ALIGN = ALIGN_RIGHT(0) ObjectGetDouble(chart_id,objname,ENUM_OBJECT_PROPERTY_DOUBLE): OBJPROP_PRICE = 1.04291 OBJPROP_LEVELVALUE = 0.0 OBJPROP_SCALE = 0.0 OBJPROP_ANGLE = 0.0 OBJPROP_DEVIATION = 0.0 ObjectGetString(chart_id,objname,ENUM_OBJECT_PROPERTY_STRING): OBJPROP_NAME = Horizontal line 54478 OBJPROP_TEXT = OBJPROP_LEVELTEXT = OBJPROP_TOOLTIP = OBJPROP_FONT = OBJPROP_BMPFILE = OBJPROP_SYMBOL = Symbol information <<============================== EURUSD, EURUSD SymbolInfoInteger(symbol,ENUM_SYMBOL_INFO_INTEGER): Symbol selection = 1 Symbol volume = 0 SYMBOL_VOLUMEHIGH = 0 SYMBOL_VOLUMELOW = 0 Symbol time = 2025.02.21 23:56:59 SYMBOL_DIGITS = 5 Symbol distribution = 60 SYMBOL_TICKS_BOOKDEPTH = 10 SYMBOL_TRADE_CALC_MODE = SYMBOL_CALC_MODE_FOREX(0) SYMBOL_TRADE_MODE = SYMBOL_TRADE_MODE_FULL(4) SYMBOL_TRADE_STOPS_LEVEL = 0 SYMBOL_TRADE_FREEZE_LEVEL = 0 SYMBOL_TRADE_EXEMODE = SYMBOL_TRADE_EXECUTION_MARKET(2) SYMBOL_SWAP_MODE = SYMBOL_SWAP_MODE_POINTS(1) SYMBOL_SWAP_ROLLOVER3DAYS = Wednesday(3) SYMBOL_SPREAD_FLOAT = 1 SYMBOL_EXPIRATION_MODE = SYMBOL_EXPIRATION_ALL(15) SYMBOL_FILLING_MODE = SYMBOL_FILLING_IOC(2) SYMBOL_START_TIME = 1970.01.01 00:00:00 SYMBOL_EXPIRATION_TIME = 1970.01.01 00:00:00 SYMBOL_SESSION_DEALS = 0 SYMBOL_SESSION_BUY_ORDERS = 0 SYMBOL_SESSION_SELL_ORDERS = 0 SYMBOL_ORDER_MODE = SYMBOL_ALL_ORDERS(127) SYMBOL_OPTION_RIGHT = SYMBOL_OPTION_RIGHT_CALL(0) SYMBOL_OPTION_MODE = SYMBOL_OPTION_MODE_EUROPEAN(0) Symbol Visible = 1 Symbol_Customized = 0 Symbol Background Color = 255,255,81 SYMBOL_CHART_MODE = SYMBOL_CHART_MODE_BID(0) SYMBOL_ORDER_GTC_MODE = SYMBOL_ORDERS_GTC(0) SYMBOL_MARGIN_HEDGED_USE_LEG = 0 SYMBOL_EXISTS = 1 SYMBOL_TIME_MSC = 2025.02.21 23:56:59.637 SYMBOL_SECTOR = SECTOR_CURRENCY(12) SYMBOL_INDUSTRY = INDUSTRY_UNDEFINED(0) SYMBOL_SUBSCRIPTION_DELAY = 0 SymbolInfoDouble(symbol, ENUM_SYMBOL_INFO_DOUBLE): symbol_bid = 1.04572 SYMBOL_BIDHIGH = 1.05057 SYMBOL_BIDLOW = 1.04494 SYMBOL_ASK = 1.04632 SYMBOL_ASKHIGH = 1.05058 SYMBOL_ASKLOW = 1.04495 Symbol last = 0.0 SYMBOL_LASTHIGH = 0.0 SYMBOL_LASTLOW = 0.0 Symbol volume real = 0.0 SYMBOL_VOLUMEHIGH_REAL = 0.0 SYMBOL_VOLUMELOW_REAL = 0.0 Symbol point = 0.00001 SYMBOL_TRADE_TICK_VALUE = 1.0 SYMBOL_TRADE_TICK_SIZE = 0.00001 SYMBOL_TRADE_CONTRACT_SIZE = 100000.0 Symbol volume minimum = 0.01 Symbol volume maximum = 200.0 Symbol volume step = 0.01 SYMBOL_SWAP_LONG = -6.25 Symbol Swap Short = 2.56 Symbol_Margin_Initial = 100000.0 SYMBOL_MARGIN_MAINTENANCE = 0.0 SYMBOL_MARGIN_LONG = 0.0 SYMBOL_MARGIN_SHORT = 0.0 Symbol Margin Limit = 0.0 SYMBOL_MARGIN_STOP = 0.0 SYMBOL_MARGIN_STOPLIMIT = 0.0 SYMBOL_TRADE_TICK_VALUE_PROFIT = 1.0 SYMBOL_TRADE_TICK_VALUE_LOSS = 1.0 Symbol Volume Limit = 0.0 Symbol Session Volume = 0.0 SYMBOL_SESSION_TURNOVER = 0.0 Symbol Session Interest = 0.0 SYMBOL_SESSION_BUY_ORDERS_VOLUME = 0.0 SYMBOL_SESSION_SELL_ORDERS_VOLUME = 0.0 SYMBOL_SESSION_OPEN = 1.05008 SYMBOL_SESSION_CLOSE = 1.05012 SYMBOL_SESSION_AW = 0.0 SYMBOL_SESSION_Price_Settlement = 0.0 SYMBOL_SESSION_PRICE_LIMIT_MIN = 0.0 SYMBOL_SESSION_PRICE_LIMIT_MAX = 0.0 SYMBOL_OPTION_STRIKE = 0.0 SYMBOL_MARGIN_HEDGED = 0.0 SYMBOL_TRADE_LIQUIDITY_RATE = 0.0 SYMBOL_TRADE_FACE_VALUE = 0.0 SYMBOL_TRADE_ACCRUED_INTEREST = 0.0 Symbol Price Change= -0.419 Symbol Price Volatility = 0.0 Theoretical Symbol Price = 0.0 Symbol Price Increment = 0.0 Symbol Price THETA = 0.0 Symbol Price Gamma = 0.0 SYMBOL_PRICE_VEGA = 0.0 SYMBOL_PRICE_RHO = 0.0 Symbol Price Omega = 0.0 Symbol Price Sensitivity = 0.0 SYMBOL_SWAP_SUNDAY = 0.0 SYMBOL_SWAP_MONDAY = 1.0 SYMBOL_SWAP_TUESDAY = 1.0 SYMBOL_SWAP_WEDNESDAY = 3.0 SYMBOL_SWAP_THURSDAY = 1.0 SYMBOL_SWAP_FRIDAY = 1.0 SYMBOL_SWAP_SATURDAY = 0.0 SymbolInfoString (Symbol, ENUM_SYMBOL_INFO_STRING): Symbol Base = SYMBOL_DESCRIPTION = EUR/USD SYMBOL_PATH = Forex\Major Currencies\EUR/USD SYMBOL_CURRENCY_BASE = Euro SYMBOL_CURRENCY_PROFIT = US Dollar SYMBOL_CURRENCY_MARGIN = Euro Symbol_ISIN = Symbol Base= Symbol Page = Symbol Formula = Symbol Category = Symbol Exchange = Symbol Country = SYMBOL_SECTOR_NAME = Currency SYMBOL_INDUSTRY_NAME = Undefined SymbolInfoSessionTrade(): Symbol Trading Sessions Sunday: Monday: 00:01-23:59 Tuesday: 00:01-23:59Wednesday: 00:01-23:59 Thursday: 00:01-23:59 Friday: 00:01-23:57 Saturday: Order Calculation Margin (Buy, 1.0 Lots) = 104.63 USD SymbolIsSynchronized(Symbol) = true [Boolean] Series Information <<================================ SeriesInfoInteger (Symbol, Time Range, ENUM_SERIES_INFO_INTEGER): SERIES_BARS_COUNT = 169468 Series_FIRSTDATE = 1971.01.04 00:00:00 SERIES_SERVER_FIRSTDATE = 1971.01.04 00:00:00 SERIES_TERMINAL_FIRSTDATE = 1971.01.04 00:00:00 SERIES_SYNCHRONIZED = 1 SERIES_LASTBAR_DATE = 2025.02.21 23:00:00 Position information <<==================================PositionGetInteger(ENUM_POSITION_PROPERTY_INTEGER): POSITION_TIME = 2025.02.14 06:54:15 POSITION_TYPE = POSITION_TYPE_SELL(1) POSITION MAGIC = 0 POSITION_IDENTIFIER = 925571424 POSITION_TIME_MSC = 2025.02.14 06:54:15.641 POSITION_TIME_UPDATE = 2025.02.14 06:54:15 POSITION_TIME_UPDATE_MSC = 2025.02.14 06:54:15.641 POSITION_TICKET = 925571424 POSITION_REASON = POSITION_REASON_CLIENT(0) PositionGetDouble(ENUM_POSITION_PROPERTY_DOUBLE): Position Volume = 0.01 POSITION_PRICE_OPEN = 1.04571 Current Position Price = 1.04632 POSITION_SL = 0.0 Position_TP = 0.0 Position Exchange = 0.23 Position Profit = -0.61 PositionGetString(ENUM_POSITION_PROPERTY_STRING): POSITION_SYMBOL = EURUSD Position Comments = POSITION_EXTERNAL_ID = Transaction information <<================================ HistoryDealGetInteger(deal_ticket,ENUM_DEAL_PROPERTY_INTEGER): Transaction order = 0 Transaction time = 2024.10.06 23:42:08 Transaction type = Transaction type_Balance(2) DEAL_ENTRY = DEAL_ENTRY_IN(0) Transaction Magic = 0 DEAL_POSITION_ID = 0 DEAL_TIME_MSC = 2024.10.06 23:42:08.966 Transaction Ticket = 609261076 DEAL_REASON = DEAL_REASON_CLIENT(0) HistoryDealGetDouble(deal_ticket,ENUM_DEAL_PROPERTY_DOUBLE): Volume = 0.0 Transaction price = 0.0 Transaction commission = 0.0 Transaction exchange = 0.0 Transaction profit = 200.0 Transaction fee = 0.0 Transaction SL = 0.0 Transaction TP = 0.0 HistoryDealGetString(deal_ticket,ENUM_DEAL_PROPERTY_STRING): Transaction symbol = DEAL_COMMENT = Simulated deposit Transaction external ID = Historical order information <<================================ HistoryOrderGetInteger(order_ticket,ENUM_ORDER_PROPERTY_INTEGER): Order time setting = 2025.02.14 06:54:15 ORDER_TIME_EXPIRATION = 1970.01.01 00:00:00 ORDER_TIME_DONE = 2025.02.14 06:54:15 Order Type = Order Type_Sell(1) ORDER_TYPE_FILLING = ORDER_FILLING_IOC(1) ORDER_TYPE_TIME = ORDER_TIME_GTC(0) Order Status = Order Status_Filled(4) Order Magic = 0 Order Position ID = 925571424 ORDER_TIME_SETUP_MSC = 2025.02.14 06:54:15.389 ORDER_TIME_DONE_MSC = 2025.02.14 06:54:15.641 ORDER_POSITION_BY_ID = 0 Order ticket = 925571424 ORDER_REASON = ORDER_REASON_CLIENT(0) HistoryOrderGetDouble(order_ticket,ENUM_ORDER_PROPERTY_DOUBLE): Initial order volume = 0.01 Current order volume = 0.0 Order price_opening = 0.0 Current order price = 1.04571 ORDER_PRICE_STOPLIMIT = 0.0 Order SL = 0.0 Order TP = 0.0 HistoryOrderGetString(order_ticket,ENUM_ORDER_PROPERTY_STRING): ORDER_SYMBOL = EURUSD Order Comments = Order External ID = Enum ENUM_TIMEFRAMES { PERIOD_CURRENT = 0, PERIOD_M1 = 1, PERIOD_M2 = 2, PERIOD_M3 = 3, PERIOD_M4 = 4, PERIOD_M5 = 5, PERIOD_M6 = 6, PERIOD_M10 = 10, PERIOD_M12 = 12, PERIOD_M15 = 15, PERIOD_M20 = 20, PERIOD_M30 = 30, PERIOD_H1 = 16385, PERIOD_H2 = 16386, PERIOD_H3 = 16387, PERIOD_H4 = 16388, PERIOD_H6 = 16390, PERIOD_H8 = 16392, PERIOD_H12 = 16396, PERIOD_D1 = 16408, PERIOD_W1 = 32769, PERIOD_MN1 = 49153, }; [year] [Monday] [Day] [Hour] [Minute] [Second] [Day of the week] [Year and Day] [0] 2025 2 21 23 56 59 5 51 AccountInfoInteger(ACCOUNT_LOGIN) = 51986913 [Long] _Point = 0.00001 [Double] ((int)1 << 16) | ((int)1 << 16) | 0xFFF = 69631 [uint] */

renew :

2025.02.15 - v.1.20: Initial release.

2025.02.17 - v.1.30: Added function PrintTesterStatistics(). Output more information from existing functions.

2025.02.20 - v.1.40: Added function PrintOpenCL() - prints OpenCL device properties to the expert tab.

2025.02.21 - v.1.50: Added function-like macro PrintExpr() - prints a stringified expression along with its value and type.

2025.02.22 - v.1.52: Print enum parameters in function information output.


Attachment download

📎 printxyz.mqh (43.04 KB)

📎 printxyz_demo.mq5 (43.05 KB)

Source: MQL5 #56055

MT5 MQL5 CodeBase Print large amounts of information from the terminal PrintXYZ
Verification code Refresh