MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 583

 

Merhaba, lütfen çözmeme yardım et. Ticaret robotu, danışman, Uzman çalışmıyor. mümkün olan her şeyi indirdim, her şeyin nasıl çalıştığını kontrol etmek istedim. Sonuç gülümser ve robot ticaret yapmaz. Depozitonun küçük olduğunu düşündüm, ancak demo hesabı aynı. şimdiden teşekkürler

 
Lilia.solomko :

Merhaba, anlamama yardım et. Ticaret robotu, danışman, Uzman çalışmıyor. mümkün olan her şeyi indirdim, her şeyin nasıl çalıştığını kontrol etmek istedim. Sonuç gülümser ve robot ticaret yapmaz. Depozitonun küçük olduğunu düşündüm, ancak demo hesabı aynı. şimdiden teşekkürler

Robotun ticaret yapmadığını nasıl belirlediniz? Bir anlaşma açmak için ticaret stratejisini karşılayan tüm koşulların karşılandığından emin oldunuz mu? Ya da sadece bir robot koyun, ama hemen bir anlaşma açmadı mı?

 
Lilia.solomko :

Merhaba, anlamama yardım et. Ticaret robotu, danışman, Uzman çalışmıyor. mümkün olan her şeyi indirdim, her şeyin nasıl çalıştığını kontrol etmek istedim. Sonuç gülümser ve robot ticaret yapmaz. Depozitonun küçük olduğunu düşündüm, ancak demo hesabı aynı. şimdiden teşekkürler

Bu iki sekmede ne yazıyor?


 
Lütfen bir fonksiyon yazmama yardım edin: daha büyük bir partiden daha küçük olana emirleri kapatın (string Symbol , int type, bool hand order, int Magic)
Yani manuel siparişlerin dikkate alınıp alınmadığı, sihirli sayı gibi bir sembol seçimi.
 
Tigerfreerun :
Lütfen bir fonksiyon yazmama yardım edin: daha büyük bir partiden daha küçük olana emirleri kapatın (string Symbol, int type, bool hand order, int Magic)
Yani manuel siparişlerin dikkate alınıp alınmadığı, sihirli sayı gibi bir sembol seçimi.

hazır var.

 //+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 11.12.2008                                                     |
//|  Описание : Закрытие позиций в порядке сортировки по размерам лотов.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента        (    ""       - любой символ,      |
//|                                             NULL      - текущий символ)    |
//|    op - операция                        (    -1       - любая позиция)     |
//|    mn - MagicNumber                     (    -1       - любой магик)       |
//|    sd - Направление сортировки лотов    (MODE_ASCEND  - возрастание,       |
//|                                          MODE_DESCEND - убывание)          |
//+----------------------------------------------------------------------------+
void ClosePosBySortLots( string sy= "" , int op=- 1 , int mn=- 1 , int sd= MODE_DESCEND ) {
   double a[][ 2 ];                   // Массив лотов и тикетов
   int     i, k= OrdersTotal ();       // Счётчик и количество ордеров
   int     p= 0 ;                     // Количество позиций

   if (sy== "0" ) sy= Symbol ();
   for (i= 0 ; i<k; i++) {
     if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )) {
       if (( OrderSymbol ()==sy || sy== "" ) && (op< 0 || OrderType ()==op)) {
         if ( OrderType ()== OP_BUY || OrderType ()== OP_SELL ) {
           if (mn< 0 || OrderMagicNumber ()==mn) {
            p++;
             ArrayResize (a, p);
            a[p- 1 ][ 0 ]= OrderLots ();
            a[p- 1 ][ 1 ]= OrderTicket ();
          }
        }
      }
    }
  }

   // вдруг позиций нету, тогда и закрывать нечего
   if (p> 0 ) {
     ArraySort (a, WHOLE_ARRAY , 0 , sd);
     for (i= 0 ; i<p; i++) {
       if ( OrderSelect (a[i][ 1 ], SELECT_BY_TICKET )) {
         // проверим незакрытость на всякий случай,
         // может какая-то позиция уже закрылась по стопу/тейку
         if ( OrderCloseTime ()== 0 ) ClosePosBySelect();
      }
    }
  }
}
 
Alekseu Fedotov :

hazır var.

Kullanmaya çalıştım, nedense çalışmıyor.
Kapatmanın kendisi bu fonksiyonda, görebildiğim kadarıyla başka bir fonksiyona referans var mı?
 
Tigerfreerun :
Kullanmaya çalıştım, nedense çalışmıyor.
Kapatmanın kendisi bu fonksiyonda, görebildiğim kadarıyla başka bir fonksiyona referans var mı?

Evet, tam teşekküllü bir ClosePosBySelect() işleviyle kapanış var ve sadece durumu ve sonuçları kontrol etmeden bir ticaret talebi göndermekle kalmıyor.

Sitede arama yapmak size Kimov'un ClosePosBySelect() işlevine bir bağlantı verecektir.

 
Tigerfreerun :
Kullanmaya çalıştım, nedense çalışmıyor.
Kapatmanın kendisi bu fonksiyonda, görebildiğim kadarıyla başka bir fonksiyona referans var mı?

Bu fonksiyonun başlığında bir site adresi var, gidin tüm kütüphaneleri indirin,

bir patlama ile çalışın.

 

Yatay çizgiler oluşturuyorum. Gösterge, çizgileri koordinatlara göre doğru bir şekilde yerleştirir, ancak bir noktada, birbiri üzerine bindirilmiş farklı uzunluklarda birçok bölümden oluşan, keyfi bir fiyata yeni bir çubuğa bir çizgi yerleştirilir. "Yabancılar" kurmanın fiyatı hiçbir koşula uymuyor. Nereden geliyorlar ve nasıl önlenebilirler?

 if (Line)
  {
   n_++;
   Setline(n_, Time [b_u_pbu], High [b_u_pbu], Time [b_u_pbu1], High [b_u_pbu], clrLime );
  }
//
void Setline( int sh, datetime tm, double pr, datetime tm1, double pr1, color clr)
  {
   ObjectCreate ( "-" +sh, OBJ_TREND , 0 ,tm,pr,tm1,pr1,clr);
   ObjectSet ( "-" +sh, 7 , STYLE_SOLID );
   ObjectSet ( "-" +sh, 10 , false );
   ObjectSet ( "-" +sh, 6 ,clr);
   ObjectSet ( "-" +sh, 8 , 2 );
  }
 
bij :

Yatay çizgiler oluşturuyorum. Gösterge, çizgileri koordinatlara göre doğru bir şekilde yerleştirir, ancak bir noktada, birbiri üzerine bindirilmiş farklı uzunluklarda birçok bölümden oluşan, keyfi bir fiyata yeni bir çubuğa bir çizgi yerleştirilir. "Yabancılar" kurmanın fiyatı hiçbir koşula uymuyor. Nereden geliyorlar ve nasıl önlenebilirler?

Satır adları değişir ve bu nedenle birçok satır.

Bu gibi durumlarda, satır adına çubuğun açılış saatini eklemek en iyisidir.