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

 
Vitaly Muzichenko :

Kodu yapıştırmak için düğmeyi kullanın!

Teşekkür ederim)) Şimdi öğreneceğim)) Derlerken nerede hata verdiğini belirttim
 double Price;                                                               // Цена выбранного ордера
   double Mas[];                                                                 //массив для упорядочивания всех ордеров
   for ( int i= 0 ; i< OrdersTotal (); i++)                                           // Цикл перебора ордер
   {
     if ( OrderSelect (i, SELECT_BY_POS ))                                           // Если есть следующий
     {
      Price= OrderOpenPrice ();                                                     //Заполняем массив ценами
      Mas[i] = Price;
     }
   }
  
           ArraySort (Mas, WHOLE_ARRAY , 0 , MODE_ASCEND );                           // Теперь цены открытия упорядочены по убыванию
          
         int Blizko1= ArrayBsearch (Mas, Bid , WHOLE_ARRAY , 0 , MODE_ASCEND );           //Определен индекс ближайшего меньшего по значению елемента к текущей цене
         double PriceBlizko1=Mas[Blizko1];
     
     }  
       if (PriceBlizko1- Ask >= 30 * Point )                           //Если верхний ордер дальше чем 30 пунктов !!!! 'PriceBlizko1' - undeclared identifier!!!!!

       { OrderSend ( Symbol (), OP_BUY ,LtsB, Ask , 2 , 0 , Bid + 30 * Point );       //Открываем ордер Бай
               Alert ( GetLastError ());                                     //Сообщение об ошибке
Garip çünkü PriceBlizko1 yukarıdaki satırda anlatılıyor
 

Ne, hiç kimse ClusterDelta'dan gösterge kullanmıyor mu?

 
vikzip :
Teşekkür ederim)) Şimdi öğreneceğim)) Derlerken nerede hata verdiğini belirttim
Garip çünkü PriceBlizko1 yukarıdaki satırda anlatılıyor

Yukarıdaki satırda açıklanmıştır. Sadece yerel (mevcut) olana değil, tüm bloklara açık olması için global düzeyde tanımlanması gerekir.

 
voron_026 :

Ne, hiç kimse ClusterDelta'dan gösterge kullanmıyor mu?

Nesneleri okuyun ve onlardan veri alın: ObjectGetDouble

Документация по MQL5: Графические объекты / ObjectGetDouble
Документация по MQL5: Графические объекты / ObjectGetDouble
  • www.mql5.com
2. Возвращает true или false в зависимости от успешности выполнения функции.  В случае успеха значение свойства помещается в приемную переменную, передаваемую по ссылке последним параметром. [in]  Модификатор указанного свойства. Для первого варианта по умолчанию значение модификатора равно 0. Большинство свойств не требуют модификатора...
 
Vitaly Muzichenko :

Yukarıdaki satırda açıklanmıştır. Sadece yerel (mevcut) değil, tüm bloklar için kullanılabilir olması için global düzeyde tanımlanmalıdır.


Teşekkür ederim)

 

Danışman yazmayı bitirmiş görünüyor, ancak bir hata çıkıyor

')' - tüm kontrol yolları bir değer döndürmez

Ne ile bağlanabilir. Dönüşü koymaya çalıştım, hatada değişiyor

'dönüş' - işlev bir değer döndürmelidir


başlatılmamış değişken 'Ticket' olası kullanımı
başlatılmamış değişken 'LtsB' olası kullanımı
başlatılmamış değişken 'LtsS' olası kullanımı
'dönüş' - işlev bir değer döndürmelidir
1 hata(lar), 3 uyarı(lar)

Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Для разработки торговых систем в платформу встроен собственный язык программирования MetaQuotes Language 5 (MQL5), среда разработки MetaEditor и инструменты тестирования стратегий. Любую информацию о разработке торговых стратегий на языке MQL5 можно найти на официальном сайте MQL5.community. На этом же сайте в разделе Code Base могут быть...
 
vikzip :

Danışman yazmayı bitirmiş görünüyor, ancak bir hata çıkıyor

')' - tüm kontrol yolları bir değer döndürmez

Ne ile bağlanabilir. Dönüşü koymaya çalıştım, hatada değişiyor

'dönüş' - işlev bir değer döndürmelidir


Belki böyle bir dönüşe ihtiyacımız var (0);

 
Vitaly Muzichenko :

Belki böyle bir dönüşe ihtiyacımız var (0);


AAAAA HURRAY!!!! Teşekkür ederim!!

 
vikzip :

AAAAA HURRAY!!!! Teşekkür ederim!!

Peki ya "teşekkür ederim"? Fonksiyon bir değer döndürmelidir. Ve her zaman sıfır döndürürsünüz. Amaçlandığı gibi bir şey döndürmezse, türü void olmalıdır.

 
Artyom Trishkin :

mql4, mql5'te, bir dizi her zaman bir işleve yalnızca başvuru yoluyla iletilir (& == ve işareti)

İlk olarak - işlevin biçimsel parametrelerinde - bir ve işareti vardır ve bu, dizinin kendisinin işleve değil, ona bir başvuru iletildiği anlamına gelir. Ve sonra - işlevin içinde - zaten bağlantıyla çalışıyorsunuz, bu da onu tekrar belirtmeniz gerekmediği anlamına geliyor.

Eh, yaklaşık işareti (~) sınıf yıkıcısının adından önce yazılır - yapıcı ve yıkıcı, sınıfın kendisiyle aynı ada sahiptir, ancak yıkıcıda ~ vardır.

Burada, bağlantıların ne zaman kullanılacağı ve işaretçilerin ne zaman kullanılacağı hakkında bir makale bulunmaktadır.

Bununla birlikte, yine de temel bilgileri okumanız gerekir.

Teşekkür ederim!