MetaTrader 5 trading platform is now available for AMP Futures clients wanting to trade futures
AMP Futures has officially announced the launch of the MetaTrader 5 platform
for trading futures. AMP Futures is a US regulated Chicago-based
Futures Commission Merchant (FCM) providing access to the global
electronic futures markets for individual traders, as well as US and
foreign Introducing Brokerages from 150+ countries around the world.
AMP Futures offers over a 100 regulated futures contracts on the following futures exchanges:
- Chicago Mercantile Exchange (CME)
- Chicago Board of Trade (CBOT)
- New York Mercantile Exchange (NYMEX and COMEX)
- Intercontinental Exchange (ICE-US, ICE-UK and ICE-LIFFE)
- European Exchange (EUREX)
- Osaka - Japan (JPX)
- Singapore Exchange (SGX)
- Australian Securities Exchange (ASX).
If you would like to try for free, real-time demo of futures markets trading using MetaTrader 5, sign up here.
In metatrader5 of AMP Futures, your program is going to work in demo account issuing BUY LIMIT or SELL LIMIT. But in Real account this may not work.
The reason being is the type_filling is defaulted to 0 (Fill or Kill). You have to use ORDER_FILLING_RETURN in order for you to park your BUY LIMIT or SELL LIMIT orders. Otherwise, your orders are usually cancelled by the system.
Here is an example of a BUY LIMIT order.
//+------------------------------------------------------------------+ //| Buy using OrderSendAsync() asynchronous function | //+------------------------------------------------------------------+ string BuyAsync(double volume, double zd_price, string zs_type, double zd_volume) // zd_volume is for display only { //--- prepare the request MqlTradeRequest req={0}; ZeroMemory(req); req.action =TRADE_ACTION_PENDING; req.symbol =_Symbol; req.magic =xi_Magic; req.volume =volume; req.type =ORDER_TYPE_BUY_LIMIT; req.type_filling = ORDER_FILLING_RETURN; req.price = zd_price; //SymbolInfoDouble(_Symbol,SYMBOL_ASK); req.deviation =0; MqlTradeResult res={0}; ZeroMemory(res); string zs_comment=s_comment; req.comment=zs_comment; if(!OrderSendAsync(req,res)) { Print(__FUNCSIG__,": error ",GetLastError(),",retcode=",res.retcode, ",",zs_comment); } return(zs_comment); //--- } // end of BuyAsync

- www.mql5.com
In metatrader5 of AMP Futures, your program is going to work in demo account issuing BUY LIMIT or SELL LIMIT. But in Real account this may not work.
The reason being is the type_filling is defaulted to 0 (Fill or Kill). You have to use ORDER_FILLING_RETURN in order for you to park your BUY LIMIT or SELL LIMIT orders. Otherwise, your orders are usually cancelled by the system.
Here is an example of a BUY LIMIT order.
Both filling modes are supported. It is just that in demo mode, FOK is really not FOK. It is RETURN mode. In demo account, your limit orders are not killed if not filled. They are parked.
In REAL account, your FOK limit orders are killed immediately if not filled. So if you want to park a LIMIT order, use RETURN filling mode.
In metatrader 5 of AMP Futures, removing orders sometimes do not work.
I am removing LIMIT orders that are far from the current price. Sometimes they work. Sometimes they do not.
The two RemoveOrders with the errors were the farthest from the current price. The other tickets were closer and yet those orders were removed.
Why would it work sometimes (all of them getting removed by the system) and sometimes they do not work. Like the example below. I am attaching the code below.
This is happening in AMP Futures metatrader5 REAL account.
06:31:29.934 void RemoveOrder(ulong,string): error 4756, retcode=10013
06:31:29.934 void RemoveOrder(ulong,string): error 4756, retcode=10013
06:31:30.026 void RemoveOrder(ulong,string): Order placed, retcode=10008,REMOVED B2 ticket=1937262
06:31:30.026 void RemoveOrder(ulong,string): Order placed, retcode=10008,REMOVED B3 ticket=1937263
06:31:30.026 void RemoveOrder(ulong,string): Order placed, retcode=10008,REMOVED B3 ticket=1937264
06:31:30.026 void RemoveOrder(ulong,string): Order placed, retcode=10008,REMOVED B3 ticket=1937265
void RemoveOrder(ulong order_ticket, string zs_comment) { MqlTradeResult result={0}; MqlTradeRequest request={0}; request.order=order_ticket; request.action=TRADE_ACTION_REMOVE; request.comment=zs_comment; if(!OrderSend(request,result)) { Print(__FUNCSIG__,": error ",GetLastError(),", retcode=",result.retcode,",",zs_comment, " ticket=",order_ticket ,",Mgc=",IntegerToString(xi_Magic) ); } else Print(__FUNCSIG__,": ",result.comment,", retcode=",result.retcode, ",",zs_comment, " ticket=",order_ticket ,",Mgc=",IntegerToString(xi_Magic) ); }
In metatrader 5 of AMP Futures, removing orders sometimes do not work.
I am removing LIMIT orders that are far from the current price. Sometimes they work. Sometimes they do not.
The two RemoveOrders with the errors were the farthest from the current price. The other tickets were closer and yet those orders were removed.
Why would it work sometimes (all of them getting removed by the system) and sometimes they do not work. Like the example below. I am attaching the code below.
This is happening in AMP Futures metatrader5 REAL account.
06:31:29.934 void RemoveOrder(ulong,string): error 4756, retcode=10013
06:31:29.934 void RemoveOrder(ulong,string): error 4756, retcode=10013
06:31:30.026 void RemoveOrder(ulong,string): Order placed, retcode=10008,REMOVED B2 ticket=1937262
06:31:30.026 void RemoveOrder(ulong,string): Order placed, retcode=10008,REMOVED B3 ticket=1937263
06:31:30.026 void RemoveOrder(ulong,string): Order placed, retcode=10008,REMOVED B3 ticket=1937264
06:31:30.026 void RemoveOrder(ulong,string): Order placed, retcode=10008,REMOVED B3 ticket=1937265
AMP Futures has officially announced the launch of the MetaTrader 5 platform
for trading futures. AMP Futures is a US regulated Chicago-based
Futures Commission Merchant (FCM) providing access to the global
electronic futures markets for individual traders, as well as US and
foreign Introducing Brokerages from 150+ countries around the world.
AMP Futures offers over a 100 regulated futures contracts on the following futures exchanges:
- Chicago Mercantile Exchange (CME)
- Chicago Board of Trade (CBOT)
- New York Mercantile Exchange (NYMEX and COMEX)
- Intercontinental Exchange (ICE-US, ICE-UK and ICE-LIFFE)
- European Exchange (EUREX)
- Osaka - Japan (JPX)
- Singapore Exchange (SGX)
- Australian Securities Exchange (ASX).
If you would like to try for free, real-time demo of futures markets trading using MetaTrader 5, sign up here.
Can I use mt5 to trade the S&P 500 emini and/or the S&P ticker SPY? Thanks, Russell
Yes, you can.
But the symbols (S&P 500, Dax, or EUR/USD< and so on) depends on the broker you selected. I mean: you are trading everything which is the broker is proposed to trade.
Can I use mt5 to trade the S&P 500 emini and/or the S&P ticker SPY? Thanks, Russell
With AMP Futures or Optimus, you can trade S&P 500 emini. But not SPY.
Metatrader 5 in the US is currently being offered only by AMP Futures or through Optimus Futures.
Here are some articles on Metatrader 5 and AMP Futures.
Can you access tick information, for example the 512 tick chart, and market depth information (i.e., NYSE TICK, $DJT, BANK, ADD, /CL, etc.) so it can be used in your trading algo? I'm guessing this data is provided by AMP's CQG connection, but not sure.
Also are you able to trade YM (Dow Jones Futures), NQ (Nasdaq 100 futures), CL (crude oil) and GC (gold)?
Thanks,
Brian

- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
AMP Futures has officially announced the launch of the MetaTrader 5 platform for trading futures. AMP Futures is a US regulated Chicago-based Futures Commission Merchant (FCM) providing access to the global electronic futures markets for individual traders, as well as US and foreign Introducing Brokerages from 150+ countries around the world.
AMP Futures offers over a 100 regulated futures contracts on the following futures exchanges:
If you would like to try for free, real-time demo of futures markets trading using MetaTrader 5, sign up here.