FORTS, bir MT5 tüccarı arıyor

 

Tünaydın!

Açıcıda DEĞİL MT5 robotu ile FORTS üzerinde işlem yapan bir kişi arıyorum.

Cevap vermeniz gereken büyük bir istek, çünkü karar vermeniz gerekiyor

herkes için ciddi bir sorun.

https://www.mql5.com/ru/forum/38456

ФОРТС. Вопросы по исполнению
ФОРТС. Вопросы по исполнению
  • www.mql5.com
С большими проблемами удалось это сделать (начальник отдела по работе с профессиональными клиентами ДЦ Открытие Евгений Сергеевич,. - - Категория: автоматические торговые системы
 
Otkryvashka'da herkes satış yapıyor mu?
 
Михаил :
Otkryvashka'da herkes satış yapıyor mu?
Belki başka bir seçenek - hiç ticaret yapmayın.
 
BCS'de bir hesabım var ama henüz orada robot ticareti yapmadım. Yürütme süresini ölçmek için sınırları spam yapmak için bir yayıcı çalıştırabilirim (neye ihtiyacınız olduğunu doğru anlarsam).
 
Adept :
BCS'de bir hesabım var ama henüz orada robot ticareti yapmadım. Yürütme süresini ölçmek için sınırları spam yapmak için bir yayıcı çalıştırabilirim (neye ihtiyacınız olduğunu doğru anlarsam).

Tünaydın!

Tabii ki doğru anladın.

Bekleyen emirleri vermeniz ve silmeniz yeterlidir, ancak yalnızca uzun bir süre için (tercihen tüm gün boyunca) ve tek bir enstrüman için çok arzu edilir.

Ardından günlük dosyasını buraya ekleyin.

Şimdiden çok teşekkür ederim!

Ücretsiz olarak 2000 işlem yapabileceğinizi unutmayın.

P/S Hatırladığım kadarıyla, yayıcı piyasaya çok yakın siparişler veriyor.

Çalışmamaları için MAX ve MIN fiyatlarında sipariş vermeniz gerekir.

Eğer böyle bir danışmanınız yoksa hızlı bir şekilde yazacağım.

 

Sabah erkenden karaladım, kontrol etmedim (önce demoda kontrol etsen iyi olur)

 //+------------------------------------------------------------------+
//|                                                     BKS_Test.mq5 |
//|                                          Copyright 2015, Mikalas |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, Mikalas"
#property link        "https://www.mql5.com"
#property version    "1.00"
//
double sell_price;
double buy_price;
ulong buy_ticket;
ulong sell_ticket;

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit ()
{
  sell_price = 0 ;
  buy_price = 0 ;
  buy_ticket = 0 ;
  sell_ticket = 0 ;
//---
   if ( ! GlobalVariableCheck ( "trans_count" ) )
  {
     datetime a_time = GlobalVariableSet ( "trans_count" , 0 );
    
     if ( ulong ( a_time ) == 0 )
    {
       MessageBox ( "Глобальная переменная терминала 'Счётчик транзакций' не создана!" , "Ошибка" , MB_OK | MB_ICONHAND );
       return ( INIT_FAILED );
    }
  }
//---  
   if ( ! MarketBookAdd ( _Symbol ) )
  {
     MessageBox ( "Не добавлен стакан по символу " + _Symbol ,   "Ошибка" , MB_OK | MB_ICONHAND );
     return ( INIT_FAILED );
  }
   return ( INIT_SUCCEEDED );
}
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
{
   MarketBookRelease ( _Symbol );   
}
//+------------------------------------------------------------------+
//| Expert Set transaction count function                            |
//+------------------------------------------------------------------+
void SetTransCount( const bool up_down )
{
   double tr_count;
   uint i = 0 ;
   do
  {
    i++;
     if ( GlobalVariableGet ( "trans_count" , tr_count ) )
    {
       if ( up_down )
      {
         if ( GlobalVariableSetOnCondition ( "trans_count" , tr_count + 1 , tr_count ) )
        {
          i = 100 ;
        }
      }
       else
      {
         if ( GlobalVariableSetOnCondition ( "trans_count" , tr_count - 1 , tr_count ) )
        {
          i = 100 ;
        }
      }
    }
  }  
   while ( i < 100 );
}
//+------------------------------------------------------------------+
//| Remove order function                                            |
//+------------------------------------------------------------------+
void RemoveOrder( ulong &ticket )
{
   MqlTradeRequest request = { 0 };
   MqlTradeResult   result  = { 0 };
            
  request.action = TRADE_ACTION_REMOVE ;
  request.order = ticket;
          
   if ( OrderSend ( request, result ) )
  {
     if ( result.retcode == TRADE_RETCODE_PLACED )
    { 
      ticket = 0 ;
      SetTransCount( true );
    }
  }
   else
  {
     Print ( "Ордер не удалён. Билет = " , ticket );
  }  
}
//+------------------------------------------------------------------+
//| Set order function                                               |
//+------------------------------------------------------------------+
void SetOrder( ulong &ticket, const double price, const bool buy_sell )
{
  ticket = 0 ;
   MqlTradeRequest request = { 0 };
   MqlTradeResult   result  = { 0 };
    
//--- Fill structure
  request.action = TRADE_ACTION_PENDING ;
  request.magic  = 987654321 ;
  request.symbol = _Symbol ;
  request.volume = 1 ;
  request.price  = price;
    
   if ( buy_sell )
  {
    request.type = ORDER_TYPE_BUY_LIMIT ;
  }
   else
  {
    request.type = ORDER_TYPE_SELL_LIMIT ;
  } 
  request.comment = "Отложенный ордер..." ;      
  request.type_filling = ORDER_FILLING_RETURN ;
  request.type_time = ORDER_TIME_DAY ;
  
//--- Send order
   if ( OrderSend ( request, result ) )
  {
     if ( result.retcode == TRADE_RETCODE_PLACED ) 
    {
      ticket = result.order;
      SetTransCount( true );
    }
  }
   else
  {
     Print ( "Ордер не установлен! " , _Symbol , ", Цена = " , price, "; Код возврата = " , result.retcode );
  }  
}
//+------------------------------------------------------------------+
// Expert Check orders timer function                                |
//+------------------------------------------------------------------+
bool CheckOrdersTimer( const uint start_value, const uint per_value )
{
   uint end_value = GetTickCount ();
  
   if ( end_value < start_value )
  {
     if ( ( start_value - end_value ) >= per_value ) return ( true );
  } 
   else
  {
     if ( ( end_value - start_value ) >= per_value ) return ( true );
  }
   return ( false );
}
//+------------------------------------------------------------------+
//| BookEvent function                                               |
//+------------------------------------------------------------------+
void OnBookEvent ( const string &symbol)
{
   if ( symbol == _Symbol )
  {
     double trc_value = GlobalVariableGet ( "trans_count" );
//---
     if ( long ( trc_value ) < 2000 )
    {
       uint st_val = GetTickCount ();
       int tick_cnt = 1 ;
      sell_price = SymbolInfoDouble ( _Symbol , SYMBOL_SESSION_PRICE_LIMIT_MAX );
      buy_price = SymbolInfoDouble ( _Symbol , SYMBOL_SESSION_PRICE_LIMIT_MIN );
//---
       while ( !CheckOrdersTimer( st_val, 2000 ) )   //Используем вместо sleep 2 сек
      {
        tick_cnt--;
        tick_cnt++;
      }
//---           
       if ( ( sell_ticket > 0 ) && ( OrderSelect ( sell_ticket ) ) )
      {
        RemoveOrder( sell_ticket );
      }
       else
      {
        SetOrder( sell_ticket, sell_price, false );
      }
//---      
       if ( ( buy_ticket > 0 ) && ( OrderSelect ( buy_ticket ) ) )
      {
        RemoveOrder( buy_ticket );
      }
       else
      {
        SetOrder( buy_ticket, buy_price, true );
      }        
    }
     else
    {
       if ( ( sell_ticket > 0 ) && ( OrderSelect ( sell_ticket ) ) )
      {
        RemoveOrder( sell_ticket );
      }
       if ( ( buy_ticket > 0 ) && ( OrderSelect ( buy_ticket ) ) )
      {
        RemoveOrder( buy_ticket );
      }  
       ExpertRemove ();
    }  
  } 
}
 
Михаил :

Sabah erkenden karaladım, kontrol etmedim (önce demoda kontrol etsen iyi olur)

Pekala, yarın gün ortasından itibaren terminalde olacağım ve dosyayı akşam ekleyeceğim.
 
Adept :
Pekala, yarın gün ortasından itibaren terminalde olacağım ve dosyayı akşam ekleyeceğim.

Şu anda demo Açıcıları kontrol ettim - doğru çalışıyor!

EA'yı biraz ayarladı (eke bakın)

Dosyalar:
BKS_Test.mq5  7 kb
 
Михаил :

Şu anda Açıcı demosunu kontrol ettim - doğru çalışıyor!

EA'yı biraz ayarladı (eke bakın)

Demo hangi BCS cihazında test edilmelidir?

Bir gerçek var - dep ile dolu değil. nereye koyacağımı şaşırdım...

Kaleler - BCS'den erişim gerçek hayatta açıktır.

forex-bcs.ru'da MT 5'in bir demosu var.

Araçlar var:


 
Roman Shiredchenko :

Demo hangi BCS cihazında test edilmelidir?

Bir gerçek var - dep ile dolu değil. nereye koyacağımı şaşırdım...

Kaleler - BCS'den erişim gerçek hayatta açıktır.

forex-bcs.ru'da MT 5'in bir demosu var.

Araçlar var:

Tünaydın!

Herhangi bir FORTS aracında (örn.) Si-9.15

 
Михаил :

Tünaydın!

Herhangi bir FORTS aracında (örn.) Si-9.15

Ri U5 Eylül'e uygun mu?

Zamanında izlendi. Açılıştan, BCS'den saati yener ... İşlem süresinden bahsediyorum ...

Kamp her zaman açıktır...

Bir ön gönderiye bir resim yükledim.

Neden: