Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 298

 
pako :

tamponu böyle yokla

Hangi arabellek numarasını ayarlarsanız ayarlayın, yine de yalnızca son hesaplanan ekstremumu (
 
mavar :

Bollinger'ı grafikte tam olarak koddaki parametrelerde nasıl görebilirim? göstergenin gerekli parametrelerinin yapılandırıldığı yerde.


Bollinger'ı başlatmış gibi görünüyor, ancak bazı yanlış değerler okuyor.

Sonuçta, yüksek veya düşük, katlanarak vb. bir grafik oluşturabilirsiniz. Danışmanı görsel olarak kontrol etmek için kodda nasıl düzenlenir ve aynı anda grafikte nasıl görülür?

Metatrader5'te, bir danışman başlattığınızda, strateji test cihazında, kullandığınız göstergeler kendileri tarafından çizilir.
 
LBatters :
Metatrader5'te, bir danışman başlattığınızda, strateji test cihazında, kullandığınız göstergeler kendileri tarafından çizilir.

Ve ben çizmiyorum! Neyi yanlış yapıyorum?

İşte kodum:


//+------------------------------------------------------------------+
//|                                                         test.mq5 |
//|                                                           Andrey |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Andrey"
#property link      "http://www.mql5.com"
#property version   "1.00"

int BolBandsHandle;                // хэндл индикатора Bolinger Bands
double BBUp[],BBLow[],BBMidle[];   // динамические массивы для хранения численных значений Bollinger Bands
//--- входные параметры
input int bands_period= 20;        // Период Bollinger Bands
input int dema_period= 20;         // Период DEMA
input int bands_shift = 0;         // Смещение относительно графика
input double deviation= 2;         // Стандартное отклонение
int demaHandle;                    // хэндл индикатора DEMA

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   printf("test string");
   
     //---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   printf("test string3");
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---

//Переменная типа MqlTick позволяет за один вызов функции SymbolInfoTick() получить значения time, Ask, Bid, Last и Volume.
      MqlTick last_tick;
      //---
      if(SymbolInfoTick(Symbol(),last_tick))
        {
         Print(last_tick.time,": Bid = ",last_tick.bid,
               " Ask = ",last_tick.ask,"  Volume = ",last_tick.volume, "  LastPrice = ",last_tick.last );
        }
      else Print("SymbolInfoTick() failed, error = ",GetLastError());
      //---
      
        //---Читаем свечку
   MqlRates rates[];
   ArraySetAsSeries(rates,true);
   int copied=CopyRates(Symbol(),0,0,1,rates);
   if(copied>0)
     {
      //Print("Скопировано баров: "+copied);
      string format="open = %G, high = %G, low = %G, close = %G, volume = %d";
      string out;
      int size=fmin(copied,10);
      for(int i=0;i<size;i++)
        {
         //out=i+":"+TimeToString(rates[i].time);
         out=out+" "+StringFormat(format,
                                  rates[i].open,
                                  rates[i].high,
                                  rates[i].low,
                                  rates[i].close,
                                  rates[i].tick_volume);
         Print(out);
         Print(rates[i].open - rates[i].close );
        }
     }
   else Print("Не удалось получить исторические данные по символу ",Symbol());

//---=======-----\_____BOLLINGER____/--------========--//
//--- получить хэндл индикатора Bollinger Bands и DEMA
   BolBandsHandle=iBands(NULL,PERIOD_M30,bands_period,bands_shift,deviation,PRICE_CLOSE);
   demaHandle=iDEMA(NULL,PERIOD_D1,dema_period,0,PRICE_CLOSE);
   
//--- копируем новые значения индикаторов используя хэндлы
   if(CopyBuffer(BolBandsHandle,0,0,3,BBMidle)<0 || CopyBuffer(BolBandsHandle,1,0,3,BBUp)<0
      || CopyBuffer(BolBandsHandle,2,0,3,BBLow)<0)
     {
      Alert("Ошибка копирования буферов индикатора Bollinger Bands - номер ошибки:",GetLastError(),"!!");
      return;
     }
//********** это цикл надо добавить в код советника, выводит значения при наступлении нового бара
   for(int nbar=0; nbar < 1; nbar++)
     Print("nbar=", nbar, "  BBLow[nbar]=", DoubleToString(BBLow[nbar], _Digits), "  BBMidle[nbar]", DoubleToString(BBMidle[nbar], _Digits),
                    "  BBUp[nbar]=", DoubleToString(BBUp[nbar], _Digits));

  }
//+------------------------------------------------------------------+
//| BookEvent function                                               |
//+------------------------------------------------------------------+
void OnBookEvent(const string &symbol)
  {
//---
   printf("test string 1 ");
 
   
  }
//+------------------------------------------------------------------+


 
C-4 :
MetaQuotes'un ev sahipliği yaptığı son şampiyonluk 2012'deydi. Şimdi böyle şampiyonalar düzenlenmiyor. Ancak birçok broker hala şampiyonluklarını elinde tutuyor. Onlara katılabilirsiniz.
İşte iyi bir platform, ben de oraya katılıyorum. Yarışmaların çoğunda danışmanlar yasaktır, ancak danışmanlar ve hatta ödüllü ücretsiz olanlar da vardır. _http://contestsarena.com/xm/ru#/login/
 
LBatters :
Hangi arabellek numarasını ayarlarsanız ayarlayın, yine de yalnızca son hesaplanan ekstremumu (
yani orada yazıyor, son uç
 

EA başlangıçta bollinger çizgileri nasıl çizilir?

Benim için (yukarıdaki kod) topun bazı değerlerini gösteriyor, ancak parametreleri görsel olarak gözlemlemeniz gerekiyor.

 

Yardım!!!

İndirilen ve kurulan metatrader 4 build 711

InstaForex-Demo.com'da demo hesabı

Terminal veya web sitesi aracılığıyla ücretsiz sinyallere abone olamıyorum

terminaldeki "Topluluk" sekmesi hem şifreyi hem de oturum açmayı girdi

denge gösterileri

bir bağlantı var

terminalde:

2014.10.15 23:35:16.541 Sanal Barındırma: 'www.mql5.com' sunucusuna bağlanılamadı (www.mql5.com:443 başarısız oldu)


2014.10.15 23:08:20.101 MQL5.community: yetkilendirme başarısız oldu

2014.10.15 23:08:01.847 Sinyal: '61447950': sinyal listesi alınamadı, bağlantı hatası
2014.10.15 23:03:19.887 MQL5.community: yetkilendirme başarısız oldu
2014.10.15 23:03:01.696 Sinyal: '61447950': sinyal listesi alınamadı, bağlantı hatası

Lütfen çözmeme yardım et...

 
xscanerx :

H2014.10.15 23:08:20.101 MQL5.community: yetkilendirme başarısız oldu

Bu, yanlış bir parola olduğunu gösterir. Olası hatalar - bir boşluk ekleyin; "_" işaretini fark etmeyin; girerken kafa karıştıran durum.
 
Danışmanı zaten açık bir pozisyonda lotu artırmaya nasıl zorlayacağımı söyleyebilir misiniz? MQL5. Şimdiden teşekkürler.
 
ArkFatalist :
Danışmanı zaten açık bir pozisyonda lotu artırmaya nasıl zorlayacağımı söyleyebilir misiniz? MQL5. Şimdiden teşekkürler.
Artışa eşit lot büyüklüğü ve halihazırda açılmış pozisyonla örtüşen yön ile ek bir pozisyon açın. MT5'in kendisi her iki pozu da tek bir toplu pozda birleştirecektir.
Neden: