How to work correctly in MT5 with OrderSend - page 12 1...5678910111213 New comment Maxim Kuznetsov 2017.02.26 19:14 #111 prostotrader: Answering the question"How to work correctly in MT5 with OrderSend"There is a simple answer.Until the developers fix the problem, thenulong pre_ticket; //Предварительный тикетulong order_ticket; //Тикет ордера//---if(OrderSend(request,result)) { if(result.retcode==TRADE_RETCODE_DONE) { pre_ticket=result.order; } }//----------------------------------------------------------------+//| TradeTransaction function |//+------------------------------------------------------------------+void OnTradeTransaction(const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result) { switch(trans.type) { case TRADE_TRANSACTION_ORDER_UPDATE: if((pre_ticket>0) && (trans.order==pre_ticket)) { switch(trans.order_state) { case ORDER_STATE_PLACED: order_ticket = pre_ticket; break; } } break; } }When they do, thenulong order_ticket; //Тикет ордера//---if(OrderSend(request,result)) { if(result.retcode==TRADE_RETCODE_DONE) { order_ticket=result.order; } } I have the general impression that 5 is raw, raw... prostotrader 2017.02.26 19:20 #112 Maxim Kuznetsov: I have the general impression that the 5 is raw, raw...No one is immune to mistakes.Another thing is that mistakes take a very long time to correct. fxsaber 2017.02.26 19:28 #113 prostotrader:Answering the question"How to work correctly in MT5 with OrderSend"There is a simple answer.Until the developers fix itulong pre_ticket; //Предварительный тикетulong order_ticket; //Тикет ордера//---if(OrderSend(request,result)) { if(result.retcode==TRADE_RETCODE_DONE) { pre_ticket=result.order; } }//----------------------------------------------------------------+//| TradeTransaction function |//+------------------------------------------------------------------+void OnTradeTransaction(const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result) { switch(trans.type) { case TRADE_TRANSACTION_ORDER_UPDATE: if((pre_ticket>0) && (trans.order==pre_ticket)) { switch(trans.order_state) { case ORDER_STATE_PLACED: order_ticket = pre_ticket; break; } } break; } }What if the OrderSend bundle?And when it is fixed, then They won't. It's a chip. prostotrader 2017.02.26 19:29 #114 fxsaber: What if an OrderSend pack? Whoever takes a Bundle of tickets gets a Bundle of Water! prostotrader 2017.02.26 19:57 #115 For lovers of PACHEulong pre_ticket = 0; //Претикет ордераulong order_ticket_1 = 0; //Тикет ордераulong order_ticket_2 = 0; //Тикет ордераulong order_ticket_3 = 0; //Тикет ордераulong order_ticket_4 = 0; //Тикет ордераulong order_ticket_5 = 0; //Тикет ордераuint num_order = 0;//---if(OrderSend(request,result)) { if(result.retcode==TRADE_RETCODE_DONE) { pre_ticket=result.order; num_order++; } }//----------------------------------------------------------------+//| TradeTransaction function |//+------------------------------------------------------------------+void OnTradeTransaction(const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result) { switch(trans.type) { case TRADE_TRANSACTION_ORDER_UPDATE: if((pre_ticket>0) && (trans.order==pre_ticket)) { switch(trans.order_state) { case ORDER_STATE_PLACED: switch(num_order) { case 1: order_ticket_1 = pre_ticket; pre_ticket = 0; break; case 2: order_ticket_2 = pre_ticket; pre_ticket = 0; break; case 3: order_ticket_3 = pre_ticket; pre_ticket = 0; break; case 4: order_ticket_4 = pre_ticket; pre_ticket = 0; break; case 5: order_ticket_5 = pre_ticket; pre_ticket = 0; break; } break; } } break; } }void OnTick(){ if(pre_ticket == 0) { OrderSend();//////// }} OnTradeTransaction How do I open Typical mistakes and how prostotrader 2017.02.26 20:12 #116 Or like thisulong pre_ticket = 0; //Претикет ордераulong order_ticket_1 = 0; //Тикет ордераulong order_ticket_2 = 0; //Тикет ордераulong order_ticket_3 = 0; //Тикет ордераulong order_ticket_4 = 0; //Тикет ордераulong order_ticket_5 = 0; //Тикет ордераuint num_order = 0;//---if(OrderSend(request,result)) { if(result.retcode==TRADE_RETCODE_DONE) { pre_ticket=result.order; num_order++; } }//----------------------------------------------------------------+//| TradeTransaction function |//+------------------------------------------------------------------+void OnTradeTransaction(const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result){ switch(trans.type) { case TRADE_TRANSACTION_ORDER_UPDATE: if((pre_ticket>0) && (trans.order==pre_ticket)) { switch(trans.order_state) { case ORDER_STATE_PLACED: switch(num_order) { case 1: order_ticket_1 = pre_ticket; pre_ticket = 0; OrderSend(); break; case 2: order_ticket_2 = pre_ticket; pre_ticket = 0; OrderSend(); break; case 3: order_ticket_3 = pre_ticket; pre_ticket = 0; OrderSend(); break; case 4: order_ticket_4 = pre_ticket; pre_ticket = 0; OrderSend(); break; case 5: order_ticket_5 = pre_ticket; pre_ticket = 0; break; } break; } } break; }} OnTradeTransaction How do I open Typical mistakes and how prostotrader 2017.02.26 20:30 #117 fxsaber:They won't. It's a chip.It's a pity the developers don't comment on OrderSend() situation.Is it a "chip" or will they fix it? prostotrader 2017.02.28 12:35 #118 fxsaber:They won't. It's a chip. SD said that from the next build OrderSend() will work properly :) fxsaber 2017.02.28 12:54 #119 prostotrader: SD replies that OrderSend() will work properly in the next build :) What fun they have there open positions the complete structure of the trade or position". prostotrader 2017.02.28 12:56 #120 Nevertheless, I got the answer I wrote above.Maybe you didn't write very convincingly or you didn't make the argument about the lack of function. 1...5678910111213 New comment
Answering the question"How to work correctly in MT5 with OrderSend"
There is a simple answer.
Until the developers fix the problem, then
ulong order_ticket; //Тикет ордера
//---
if(OrderSend(request,result))
{
if(result.retcode==TRADE_RETCODE_DONE)
{
pre_ticket=result.order;
}
}
//----------------------------------------------------------------+
//| TradeTransaction function |
//+------------------------------------------------------------------+
void OnTradeTransaction(const MqlTradeTransaction &trans,
const MqlTradeRequest &request,
const MqlTradeResult &result)
{
switch(trans.type)
{
case TRADE_TRANSACTION_ORDER_UPDATE:
if((pre_ticket>0) && (trans.order==pre_ticket))
{
switch(trans.order_state)
{
case ORDER_STATE_PLACED:
order_ticket = pre_ticket;
break;
}
}
break;
}
}
When they do, then
//---
if(OrderSend(request,result))
{
if(result.retcode==TRADE_RETCODE_DONE)
{
order_ticket=result.order;
}
}
I have the general impression that the 5 is raw, raw...
No one is immune to mistakes.
Another thing is that mistakes take a very long time to correct.
Answering the question"How to work correctly in MT5 with OrderSend"
There is a simple answer.
Until the developers fix it
ulong order_ticket; //Тикет ордера
//---
if(OrderSend(request,result))
{
if(result.retcode==TRADE_RETCODE_DONE)
{
pre_ticket=result.order;
}
}
//----------------------------------------------------------------+
//| TradeTransaction function |
//+------------------------------------------------------------------+
void OnTradeTransaction(const MqlTradeTransaction &trans,
const MqlTradeRequest &request,
const MqlTradeResult &result)
{
switch(trans.type)
{
case TRADE_TRANSACTION_ORDER_UPDATE:
if((pre_ticket>0) && (trans.order==pre_ticket))
{
switch(trans.order_state)
{
case ORDER_STATE_PLACED:
order_ticket = pre_ticket;
break;
}
}
break;
}
}
What if the OrderSend bundle?
And when it is fixed, then
What if an OrderSend pack?
For lovers of PACHE
ulong order_ticket_1 = 0; //Тикет ордера
ulong order_ticket_2 = 0; //Тикет ордера
ulong order_ticket_3 = 0; //Тикет ордера
ulong order_ticket_4 = 0; //Тикет ордера
ulong order_ticket_5 = 0; //Тикет ордера
uint num_order = 0;
//---
if(OrderSend(request,result))
{
if(result.retcode==TRADE_RETCODE_DONE)
{
pre_ticket=result.order;
num_order++;
}
}
//----------------------------------------------------------------+
//| TradeTransaction function |
//+------------------------------------------------------------------+
void OnTradeTransaction(const MqlTradeTransaction &trans,
const MqlTradeRequest &request,
const MqlTradeResult &result)
{
switch(trans.type)
{
case TRADE_TRANSACTION_ORDER_UPDATE:
if((pre_ticket>0) && (trans.order==pre_ticket))
{
switch(trans.order_state)
{
case ORDER_STATE_PLACED:
switch(num_order)
{
case 1:
order_ticket_1 = pre_ticket;
pre_ticket = 0;
break;
case 2:
order_ticket_2 = pre_ticket;
pre_ticket = 0;
break;
case 3:
order_ticket_3 = pre_ticket;
pre_ticket = 0;
break;
case 4:
order_ticket_4 = pre_ticket;
pre_ticket = 0;
break;
case 5:
order_ticket_5 = pre_ticket;
pre_ticket = 0;
break;
}
break;
}
}
break;
}
}
void OnTick()
{
if(pre_ticket == 0)
{
OrderSend();////////
}
}
Or like this
ulong pre_ticket = 0; //Претикет ордера
ulong order_ticket_1 = 0; //Тикет ордера
ulong order_ticket_2 = 0; //Тикет ордера
ulong order_ticket_3 = 0; //Тикет ордера
ulong order_ticket_4 = 0; //Тикет ордера
ulong order_ticket_5 = 0; //Тикет ордера
uint num_order = 0;
//---
if(OrderSend(request,result))
{
if(result.retcode==TRADE_RETCODE_DONE)
{
pre_ticket=result.order;
num_order++;
}
}
//----------------------------------------------------------------+
//| TradeTransaction function |
//+------------------------------------------------------------------+
void OnTradeTransaction(const MqlTradeTransaction &trans,
const MqlTradeRequest &request,
const MqlTradeResult &result)
{
switch(trans.type)
{
case TRADE_TRANSACTION_ORDER_UPDATE:
if((pre_ticket>0) && (trans.order==pre_ticket))
{
switch(trans.order_state)
{
case ORDER_STATE_PLACED:
switch(num_order)
{
case 1:
order_ticket_1 = pre_ticket;
pre_ticket = 0;
OrderSend();
break;
case 2:
order_ticket_2 = pre_ticket;
pre_ticket = 0;
OrderSend();
break;
case 3:
order_ticket_3 = pre_ticket;
pre_ticket = 0;
OrderSend();
break;case 4:
order_ticket_4 = pre_ticket;
pre_ticket = 0;
OrderSend();
break;
case 5:
order_ticket_5 = pre_ticket;
pre_ticket = 0;
break;
}
break;
}
}
break;
}
}
They won't. It's a chip.
It's a pity the developers don't comment on OrderSend() situation.
Is it a "chip" or will they fix it?
They won't. It's a chip.
SD replies that OrderSend() will work properly in the next build :)
open positions the complete structure of the trade or position".
Nevertheless, I got the answer I wrote above.
Maybe you didn't write very convincingly or you didn't make the argument about the lack of function.