Erros, bugs, perguntas - página 1311

[Excluído]  
Ivan Vagin:

Agora o site abre mas, nenhuma imagem é visível

E quando tento abrir o ficheiro anexo.

O problema persiste.

Infelizmente, os dispositivos mais antigos não suportam a ligação segura utilizada nos nossos servidores web.

Recomendamos as seguintes opções:

  1. se possível actualize a sua versão do Android
  2. Utilizar um navegador diferente (cromado, por exemplo)
  3. Actualize o seu dispositivo
 
Alexandr Bryzgalov:

Apenas em pares.

Aqui está o código (estilo antigo), ele pode ser melhorado:

Obrigado pela dica, mas o próprio guião está lá para fechar encomendas sobrepostas!

Estou interessado em realizar isto através da própria funcionalidade terminal!

Arquivos anexados:
[Excluído]  
murad:

Infelizmente as máquinas mais antigas não suportam a ligação segura utilizada nos nossos servidores web.

Recomendamos as seguintes opções:

  1. se possível actualize a sua versão do Android
  2. Utilizar um navegador diferente (cromado, por exemplo)
  3. actualize o seu dispositivo

Também não consigo ver os anúncios.

 
Quando a opção "Trace Trades on the Chart" está activada - o traço deve aparecer automaticamente no gráfico ou devo realizar acções adicionais? Terminal MetaTrader 5 construir 1135.
 

Tenho um corretor com execução de câmbio.

O meu Consultor Especialista utiliza uma biblioteca padrão.

Quando o corro, vejo no registo do meu Expert Advisor que foi accionado um comando

         trade.PositionOpen(_Symbol,// инструмент
                            ORDER_TYPE_BUY,// 
                            inLot,// количество лотов для торговли
                            ask,// последняя цена  ask
                            0.0,// Stop Loss
                            0.0,// Take Profit 
                            " ");                                             // без комментариев  

Mas não há nada no diário de bordo do terminal. Faço algumas escavações na biblioteca. Encontrei isto.

   if(!FillingCheck(symbol))
      return(false);

Despenha-se aqui.

Fiz mais pesquisas e cheguei a isto.

         //--- wrong filling policy, set error code
         m_result.retcode=TRADE_RETCODE_INVALID_FILL;
         return(false);

Regressei e encontrei isto

//--- get possible filling policy types by symbol
   uint filling=(uint)SymbolInfoInteger(symbol,SYMBOL_FILLING_MODE);

Devolve 0.

Tentei falar com o pessoal de apoio deste corretor.

Disseram-me eles.

"Se definir a execução da troca no seu Expert Advisor, desabilite a verificação do tipo.

Não sei o que fazer com ele. Devo perguntar ao meu corretor que tipo de erro tenho no meu negócio de corretagem.

 
Alexey Klenov:

Tenho um corretor com execução de câmbio.

O meu Consultor Especialista utiliza a biblioteca padrão.

Quando o corro, vejo no registo do meu Expert Advisor que foi accionado um comando

Mas não há nada no diário de bordo do terminal. Faço algumas escavações na biblioteca. Encontrei isto.

Despenha-se aqui.

Fiz mais pesquisas e cheguei a isto.

Regressei e encontrei isto

Devolve 0.

Recebeu um telefonema do pessoal de apoio deste corretor.

Disseram-me eles.

"Se definir a execução da troca no seu Expert Advisor, desactivar a verificação do tipo.

Não sei o que fazer com ele. Devo perguntar ao meu corretor que tipo de erro tenho no meu negócio de corretagem.

Tenteusar OrderSend() em vez detrade.PositionOpen()
 
Михаил:
Tenteusar OrderSend() em vez detrade.PositionOpen()
         MqlTradeRequest req;
         req.action=TRADE_ACTION_DEAL;       // Тип выполняемого действия
         req.symbol=_Symbol;                 // Имя торгового инструмента
         req.volume=inLot;                   //Запрашиваемый объем сделки в лотах
         req.type=ORDER_TYPE_BUY;            //Тип ордера
         //req.type_filling=ORDER_FILLING_FOK; // Тип ордера по исполнению
         //+------------------------------------------------------------------+
         //|                                                                  |
         //+------------------------------------------------------------------+
         MqlTradeResult rez;

         OrderSend(req,rez);

2015.05.20 23:01:55.387 Comércios '*********': compra de câmbio falhada 0.10 EURUSD no mercado [Modo de enchimento sem suporte]

com o comentado type_filling o resultado é o mesmo

 
Alexey Klenov:

2015.05.20 23:01:55.387 Comércios '*********': compra de câmbio falhada 0.10 EURUSD no mercado [Modo de enchimento sem suporte]

MqlTradeRequest request = {0};
  MqlTradeResult  result  = {0};
   
//--- Fill structure
  request.magic = 987654321;
  request.symbol = _Symbol;
  request.volume = inLot; 
  request.type_filling = ORDER_FILLING_IOC; //Взять то, что можно взять :)
  request.type_time = ORDER_TIME_DAY;
  request.action = TRADE_ACTION_DEAL;

 request.type = ORDER_TYPE_BUY;            //Тип ордера 

  request.comment = "Рыночный ордер...";
 
Михаил:
O resultado é o mesmo
 
Alexey Klenov:
O resultado é o mesmo

Corretores para a FUCK!

Sec, vou largar um cheque e você vai afixar os resultados.

//+------------------------------------------------------------------+
//| Expert Check Market Parametrs function                           |
//+------------------------------------------------------------------+
bool CheckMarketParam( const string a_symbol )
{
//--- Check for full mode
  long trade_mode = long( SymbolInfoInteger( a_symbol, SYMBOL_TRADE_MODE ) );
  
  if ( ( SYMBOL_TRADE_MODE_FULL & trade_mode ) != SYMBOL_TRADE_MODE_FULL )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает полную торговлю!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
//--- Check trade execution mode
  long market_info = long ( SymbolInfoInteger( a_symbol, SYMBOL_TRADE_EXEMODE ) );
    
  if ( market_info != SYMBOL_TRADE_EXECUTION_EXCHANGE )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает TRADE EXECUTION EXCHANGE режим!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
//--- Check orders mode
  int order_mode = int( SymbolInfoInteger( a_symbol, SYMBOL_ORDER_MODE ) );
  
  if ( ( SYMBOL_ORDER_MARKET & order_mode )!= SYMBOL_ORDER_MARKET )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает Market Execution режим установки ордеров!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
  
  if ( ( SYMBOL_ORDER_LIMIT & order_mode )!= SYMBOL_ORDER_LIMIT )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает Limit режим установки ордеров!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
  
  if ( ( SYMBOL_ORDER_STOP_LIMIT & order_mode ) != SYMBOL_ORDER_STOP_LIMIT )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает Stop Limit режим установки ордеров!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
  
  if ( ( SYMBOL_ORDER_STOP & order_mode )!= SYMBOL_ORDER_STOP )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает Stop режим установки ордеров!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
  
  if ( ( SYMBOL_ORDER_SL & order_mode) != SYMBOL_ORDER_SL )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает Stop Loss режим установки ордеров!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
  
  if ( ( SYMBOL_ORDER_TP & order_mode) != SYMBOL_ORDER_TP )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает Take Profit режим установки ордеров!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
//---Filing mode
  int filling_mode = int( SymbolInfoInteger( a_symbol, SYMBOL_FILLING_MODE ) );
  
  if ( ( SYMBOL_FILLING_IOC & filling_mode ) != SYMBOL_FILLING_IOC )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает filling IOC режим исполнения ордеров!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
  
  if ( ( SYMBOL_FILLING_FOK & filling_mode ) != SYMBOL_FILLING_FOK )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает filling IOC режим исполнения ордеров!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }      
//---Ckeck expiration
  int symbol_exp_type = int( SymbolInfoInteger( a_symbol, SYMBOL_EXPIRATION_MODE ) );
  
  if ( ( symbol_exp_type & SYMBOL_EXPIRATION_DAY ) != SYMBOL_EXPIRATION_DAY )
  {
    MessageBox( "Символ " + a_symbol + " не поддерживает экспирацию DAY!", "Ошибка", MB_OK | MB_ICONHAND );
    return( false );
  }
  return( true );
}