Skip to main content
Glama

MCP Trader Server

by Af7007
trading_guide.md3.26 kB
# Trading Guide for MetaTrader 5 API This guide provides information on how to place and manage trades using the MetaTrader 5 API. ## Order Types - **Market Orders**: - `ORDER_TYPE_BUY`: Buy at market price - `ORDER_TYPE_SELL`: Sell at market price - **Pending Orders**: - `ORDER_TYPE_BUY_LIMIT`: Buy at specified price (lower than current price) - `ORDER_TYPE_SELL_LIMIT`: Sell at specified price (higher than current price) - `ORDER_TYPE_BUY_STOP`: Buy at specified price (higher than current price) - `ORDER_TYPE_SELL_STOP`: Sell at specified price (lower than current price) - `ORDER_TYPE_BUY_STOP_LIMIT`: Buy stop limit order - `ORDER_TYPE_SELL_STOP_LIMIT`: Sell stop limit order ## Trade Actions - `TRADE_ACTION_DEAL`: Place a market order - `TRADE_ACTION_PENDING`: Place a pending order - `TRADE_ACTION_SLTP`: Modify stop loss and take profit levels - `TRADE_ACTION_MODIFY`: Modify an existing order - `TRADE_ACTION_REMOVE`: Remove a pending order - `TRADE_ACTION_CLOSE_BY`: Close a position by an opposite one ## Example: Placing a Market Buy Order ```python from mt5_server import OrderRequest # Create an order request request = OrderRequest( action=mt5.TRADE_ACTION_DEAL, symbol="EURUSD", volume=0.1, type=mt5.ORDER_TYPE_BUY, price=mt5.symbol_info_tick("EURUSD").ask, deviation=20, magic=123456, comment="Buy order", type_time=mt5.ORDER_TIME_GTC, type_filling=mt5.ORDER_FILLING_IOC ) # Send the order result = order_send(request) ``` ## Example: Placing a Pending Order ```python from mt5_server import OrderRequest # Create a pending order request request = OrderRequest( action=mt5.TRADE_ACTION_PENDING, symbol="EURUSD", volume=0.1, type=mt5.ORDER_TYPE_BUY_LIMIT, price=1.08, # Price to buy at sl=1.07, # Stop loss tp=1.09, # Take profit deviation=20, magic=123456, comment="Buy limit order", type_time=mt5.ORDER_TIME_GTC, type_filling=mt5.ORDER_FILLING_IOC ) # Send the order result = order_send(request) ``` ## Example: Modifying an Existing Position ```python from mt5_server import OrderRequest # Get the position position = positions_get_by_ticket(ticket=123456) # Create a request to modify stop loss and take profit request = OrderRequest( action=mt5.TRADE_ACTION_SLTP, symbol=position.symbol, sl=1.07, # New stop loss tp=1.09, # New take profit position=position.ticket ) # Send the order result = order_send(request) ``` ## Example: Closing a Position ```python from mt5_server import OrderRequest # Get the position position = positions_get_by_ticket(ticket=123456) # Create a request to close the position request = OrderRequest( action=mt5.TRADE_ACTION_DEAL, symbol=position.symbol, volume=position.volume, type=mt5.ORDER_TYPE_SELL if position.type == mt5.ORDER_TYPE_BUY else mt5.ORDER_TYPE_BUY, price=mt5.symbol_info_tick(position.symbol).bid if position.type == mt5.ORDER_TYPE_BUY else mt5.symbol_info_tick(position.symbol).ask, position=position.ticket, deviation=20, magic=123456, comment="Close position", type_time=mt5.ORDER_TIME_GTC, type_filling=mt5.ORDER_FILLING_IOC ) # Send the order result = order_send(request) ```

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Af7007/mcp-trader'

If you have feedback or need assistance with the MCP directory API, please join our Discord server