FORTS. Yürütme soruları - sayfa 75

 
prostotrader :

Buy-stop borsada gösterilmez, ancak MT5 sunucusunda "görevdedir", bu nedenle,

camda güçlü bir hareket varsa, kayma olabilir.

sadece limit emirler belirtilen fiyattan mı gerçekleştirilir?
 
Евгений :
sadece limit emirler belirtilen fiyattan mı gerçekleştirilir?

Evet, siparişte belirtilenden daha kötü olmayan bir fiyata, zamanında gelmezse, o zaman

hiçbir şey satın alınmaz (satılmaz).

Aynı zamanda sipariş doldurma yöntemi kullanılmalıdır IOC (ne kadar zaman alacağı)

request.type_filling= ORDER_FILLING_IOC ;
 
prostotrader :

Evet, siparişte belirtilenden daha kötü olmayan bir fiyata, zamanında gelmezse, o zaman

hiçbir şey satın alınmaz (satılmaz).

Aynı zamanda sipariş doldurma yöntemi kullanılmalıdır IOC (ne kadar zaman alacağı)

Bu yaklaşım yanlıştır, çünkü farklı karakterler farklı dolgu tiplerine sahip olabilir.

 //+------------------------------------------------------------------+
//|                                                         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);
  }
//+------------------------------------------------------------------+
Dosyalar:
Test_ru.mq5  4 kb
 
Karputov Vladimir :

Bu yaklaşım yanlıştır, çünkü farklı karakterler farklı dolgu tiplerine sahip olabilir.

Ne olmuş?

Son derece sıvı sembollerde FOK hiç çalışmayacaktır (sadece zamanında olmayacaktır).

Peki ENUM_SYMBOL_CALC_MODE kodunuzla ne alakası var?

 

Sadece kontrol etmeniz gerekiyor:

 //+------------------------------------------------------------------+
//|                                                         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 );
  }

Sonuç:

 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 :

...

Peki ENUM_SYMBOL_CALC_MODE kodunuzla ne alakası var?

Bu, vadeli işlemler için teminat miktarını hesaplama yönteminin nasıl doldurulduğunu hemen kontrol etti. Ancak, ticaret sunucusunda farklı vadeli işlemler için neden farklı doldurma modları ayarlandığı komisyoncu için bir sorudur. Her şey (gelecek için) aynı olmalıdır.
 
Karputov Vladimir :
Bu, vadeli işlemler için teminat miktarını hesaplama yönteminin nasıl doldurulduğunu hemen kontrol etti. Ancak, ticaret sunucusunda farklı vadeli işlemler için neden farklı doldurma modları ayarlandığı komisyoncu için bir sorudur. Her şey (gelecek için) aynı olmalıdır.
Niye ya?
 
Andrey Dik :
Niye ya?

Aynı tür sözleşmeler aynı özelliklere sahip olmalıdır. İşte bazı karakterlerin neden farklı dolgu tiplerine sahip olduğunun cevabı:

 //+------------------------------------------------------------------+
//|                                                         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);
  }
//+------------------------------------------------------------------+

"Piyasa İzleme" penceresinde "kırık" sembollerle bir liste oluşturulur. Aslında, tüm bu "kırık semboller" için ticaretin devre dışı bırakıldığı ortaya çıkıyor.

Dosyalar:
Test_ru.mq5  4 kb
 

Merhaba,

Terminal cihazı hakkında bir sorum var.

Örneğin, OrderSend(...) komutu ile bir emir gönderirseniz, yanıtta ve bir bilette true olsun,

ve ardından OrderSelect(ticket) komutunu çağırın, yanıtta yanlış alabilirsiniz

(bu durumda, sipariş daha sonra aktif siparişler arasında görünecektir).

Soru şu: Aktif bir siparişim vardı. Yanlış yanıtta OrderSelect (bilet) komutuyla alındı,

sonra HistoryOrderSelect (ticket) komutunu çalıştırdım, sonra tekrar false alabilir miyim (yani, siparişin tarihte olması için zamanı yoktu).

 
Sergey Kudryavtsev :

Merhaba,

Terminal cihazı hakkında bir sorum var.

Örneğin, OrderSend(...) komutu ile bir emir gönderirseniz, yanıtta ve bir bilette true olsun,

ve ardından OrderSelect(ticket) komutunu çağırın, yanıtta yanlış alabilirsiniz

(bu durumda, sipariş daha sonra aktif siparişler arasında görünecektir).

Soru şu: Aktif bir siparişim vardı. Yanlış yanıtta OrderSelect (bilet) komutuyla alındı,

sonra HistoryOrderSelect(ticket) komutunu çalıştırdım, sonra tekrar false alabilir miyim (yani, siparişin tarihte olması için zamanı yoktu).

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