FORTES. Questões de aplicação da lei - página 75

 
prostotrader:

O buy-stop não é produzido para a troca, mas "em serviço" no servidor MT5, portanto,

Se houver um forte movimento no mercado de apostas, pode haver um deslizamento.

apenas as ordens limitadas são executadas pelo preço indicado?
 
Евгений:
apenas as ordens limitadas são executadas pelo preço indicado?

Sim, a um preço não pior do que o indicado no mandado, se não a tempo, então

nada é comprado (vendido).

Neste caso, o método de preenchimento de pedidos deve ser aplicado COI (tanto quanto tenha tempo de tomar)

request.type_filling=ORDER_FILLING_IOC;
 
prostotrader:

Sim, a um preço não pior do que o indicado no mandado, se não a tempo, então

nada é comprado (vendido).

Neste caso, vale a pena aplicar o método de preenchimento do pedido COI (tanto quanto tenha tempo para levar)

Esta abordagem é incorreta porque caracteres diferentes podem ter tipos de preenchimento diferentes.

//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                                      Copyright 2012, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
void OnStart()
  {
   for(int i=0;i<SymbolsTotal(false);i++)
     {
      ENUM_SYMBOL_CALC_MODE calc_mode=(ENUM_SYMBOL_CALC_MODE)SymbolInfoInteger(Symbol(),SYMBOL_TRADE_CALC_MODE);
      string name=SymbolName(i,false);
      //--- получим значение свойства, описывающего режим заполнения 
      int filling=(int)SymbolInfoInteger(name,SYMBOL_FILLING_MODE);
      Print(name,": ",EnumToString(calc_mode),
            ", filling: ",filling,
            ", SYMBOL_FILLING_FOK: ",IsFillingTypeAllowed(name,SYMBOL_FILLING_FOK),
            ", SYMBOL_FILLING_IOC: ",IsFillingTypeAllowed(name,SYMBOL_FILLING_IOC),
            ", Идентификатор отсутствует: ",IsFillingTypeAllowed(name,NULL));
     }
  }
//+------------------------------------------------------------------+ 
//| проверяет разрешенность указанного режима заполнения             | 
//+------------------------------------------------------------------+ 
bool IsFillingTypeAllowed(string symbol,int fill_type)
  {
//--- получим значение свойства, описывающего режим заполнения 
   int filling=(int)SymbolInfoInteger(symbol,SYMBOL_FILLING_MODE);
//--- вернем true, если режим fill_type разрешен 
   return((filling&fill_type)==fill_type);
  }
//+------------------------------------------------------------------+
Arquivos anexados:
Test_ru.mq5  4 kb
 
Karputov Vladimir:

Esta abordagem é errada, porque diferentes caracteres podem ter diferentes tipos de preenchimento.

Então?

Em caracteres de alto preenchimento, FOK não funcionará de forma alguma (só não terá tempo).

E o queENUM_SYMBOL_CALC_MODE tem a ver com seu código?

 

Você só tem que verificar:

//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                                      Copyright 2012, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
int OnInit()
  {
   for(int i=0;i<SymbolsTotal(true);i++)
     {
      string name=SymbolName(i,true);
      Print("Обрабатывается символ: ", name);
      //--- получим значение свойства, описывающего режим заполнения 
      int filling=(int)SymbolInfoInteger(name,SYMBOL_FILLING_MODE);
      if ((filling & SYMBOL_FILLING_IOC ) != SYMBOL_FILLING_IOC)
      Print("Символ ", name, " не поддерживает заливку SYMBOL_FILLING_IOC !" );
     }
     return(INIT_SUCCEEDED);
  }

O resultado:

2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: AUDU-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: AUDU-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: BR-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: BR-10.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: BR-11.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: BR-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: BR-1.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: CHMF-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: CHMF-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: CY-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: ED-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: ED-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Eu-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Eu-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Eu-3.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Eu-6.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Eu-9.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: FEES-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: FEES-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GAZR-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GAZR-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GAZR-3.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GBPU-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GBPU-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GMKR-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GMKR-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GOLD-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GOLD-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: GOLD-3.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: HYDR-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: HYDR-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: LKOH-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: LKOH-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: MGNT-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: MGNT-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: MOEX-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: MOEX-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: MTSI-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: MTSI-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: MXI-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: MXI-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: NOTK-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: NOTK-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: PLD-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: PLT-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: PLT-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: ROSN-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: ROSN-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTKM-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTKM-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTS-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTS-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTS-3.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTS-6.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTS-9.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTS-12.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTS-3.18
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: RTS-6.18
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SBPR-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SBPR-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SBRF-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SBRF-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SBRF-3.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Si-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Si-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Si-3.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Si-6.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Si-9.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Si-12.17
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: Si-3.18
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SILV-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SNGP-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SNGP-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SNGR-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: SNGR-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: TATN-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: TATN-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: TRNF-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: TRNF-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: UCAD-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: UCAD-12.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: UCHF-9.16
2016.08.22 18:58:35.272 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: UCHF-12.16
2016.08.22 18:58:35.273 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: UJPY-9.16
2016.08.22 18:58:35.273 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: UJPY-12.16
2016.08.22 18:58:35.273 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: VTBR-9.16
2016.08.22 18:58:35.273 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: VTBR-12.16
2016.08.22 18:58:35.273 Test_ticks (AUDU-9.16,M1)       Обрабатывается символ: USDFIX
2016.08.22 18:58:35.273 Test_ticks (AUDU-9.16,M1)       Символ USDFIX не поддерживает заливку SYMBOL_FILLING_IOC !
 
prostotrader:

...

E o que seu código tem a ver comENUM_SYMBOL_CALC_MODE ?

É verificada imediatamente a forma como o valor da margem é preenchido para os futuros. Mas por que diferentes modos de preenchimento são definidos para diferentes futuros no servidor de negociação é uma questão para o corretor. Tudo (para os futuros) deve ser o mesmo.
 
Karputov Vladimir:
Verifiquei imediatamente como os futuros são preenchidos para calcular o valor da garantia. Mas porque diferentes modos de preenchimento são definidos para diferentes futuros no servidor comercial é uma questão para o corretor. Tudo (para os futuros) deve ser o mesmo.
Por quê?
 
Andrey Dik:
Por quê?

Os mesmos tipos de contrato devem ter as mesmas propriedades. E aqui está a resposta sobre o porquê de alguns símbolos terem tipos de preenchimento diferentes de outros:

//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                                      Copyright 2012, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
void OnStart()
  {
   for(int i=0;i<SymbolsTotal(false);i++)
     {
      //ENUM_SYMBOL_CALC_MODE calc_mode=(ENUM_SYMBOL_CALC_MODE)SymbolInfoInteger(Symbol(),SYMBOL_TRADE_CALC_MODE);
      string name=SymbolName(i,false);
      //--- получим значение свойства, описывающего режим заполнения 
      int filling=(int)SymbolInfoInteger(name,SYMBOL_FILLING_MODE);
      if(IsFillingTypeAllowed(name,SYMBOL_FILLING_FOK) && IsFillingTypeAllowed(name,SYMBOL_FILLING_IOC) && 
         IsFillingTypeAllowed(name,NULL))
        {
         //---

        }
      else
        {
         //Print(name,": ",
         //      ", filling: ",filling,
         //      ", SYMBOL_FILLING_FOK: ",IsFillingTypeAllowed(name,SYMBOL_FILLING_FOK),
         //      ", SYMBOL_FILLING_IOC: ",IsFillingTypeAllowed(name,SYMBOL_FILLING_IOC),
         //      ", Идентификатор отсутствует: ",IsFillingTypeAllowed(name,NULL));
         SymbolSelect(name,true);
        }
     }
  }
//+------------------------------------------------------------------+ 
//| проверяет разрешенность указанного режима заполнения             | 
//+------------------------------------------------------------------+ 
bool IsFillingTypeAllowed(string symbol,int fill_type)
  {
//--- получим значение свойства, описывающего режим заполнения 
   int filling=(int)SymbolInfoInteger(symbol,SYMBOL_FILLING_MODE);
//--- вернем true, если режим fill_type разрешен 
   return((filling&fill_type)==fill_type);
  }
//+------------------------------------------------------------------+

Uma lista é gerada na janela do Market Watch com símbolos "quebrados". Acontece que todos esses "símbolos quebrados" têm o comércio desativado.

Arquivos anexados:
Test_ru.mq5  4 kb
 

Olá,

Tenho uma pergunta sobre o dispositivo terminal.

Por exemplo, se você enviar um pedido com o comando OrderSend(...), obtenha uma resposta verdadeira e um bilhete,

e então chamar o comando OrderSelect(ticket), ele retornará falso em resposta

(caso em que a ordem aparecerá então, exatamente entre as ordens ativas).

Minha pergunta é: eu tinha uma ordem ativa. Recebi uma resposta falsa com o comando OrderSelect(ticket),

Então executei o comando HistoryOrderSelect(ticket), e novamente recebi uma resposta falsa (ou seja, a ordem não conseguiu aparecer no histórico).

 
Sergey Kudryavtsev:

Olá,

Tenho uma pergunta sobre o dispositivo terminal.

Por exemplo, se você enviar um pedido com o comando OrderSend(...), obtenha uma resposta verdadeira e um bilhete,

e depois chamar o comando OrderSelect(ticket), ele retornará falso em resposta

(caso em que a ordem aparecerá então, exatamente entre as ordens ativas).

Minha pergunta é: eu tinha uma ordem ativa. Recebi uma resposta falsa com o comando OrderSelect(ticket),

Então executei o comando HistoryOrderSelect(ticket), e novamente recebi uma resposta falsa (ou seja, a ordem não conseguiu aparecer no histórico).

https://www.mql5.com/ru/forum/93098
"Плавающая" ошибка PositionSelect()
"Плавающая" ошибка PositionSelect()
  • comentários: 1
  • www.mql5.com
Форум трейдеров MQL5.community