MQL4'te programlama üzerine çevrimiçi kitabın beta sürümü - Sergey Kovalev (SK.) - sayfa 8

 
Climber :
Burada sorun ne? Neden hatalar hakkında çığlık atıyor?

Derleyici bir hata verdi: Başlatma işlevi bulunamadı ve çalıştırılamaz, bu da şu anlama gelir: start() işlevi bulunamadı ve yürütülemez.

Bu oldukça doğal. Program herhangi bir özel fonksiyon içermiyorsa, MT istemci terminalinde başlatılamaz.

 
Burada bir hata ile "GetExtremumZZBar" İşlevine başvurulmuyor ve exp dosyasından kaldırılacak (peki, bu anlaşılabilir, işlev hiçbir yerde kullanılmaz). Eklediğim koda bir yorum yazdım, ardından hatalar kayboldu.

 //+------------------------------------------------------------------+
//|                                                         1111.mq4 |
//|                      Copyright © 2008, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright " Copyright © 2008, MetaQuotes Software Corp. "
#property link      " http://www.metaquotes.net "
 
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init ()
  {
//----
   
//----
   return ( 0 ) ;
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit ()
  {
//----
   
//----
   return ( 0 ) ;
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start ()
  {
//----
}    // Добавил вот эту скобку, точнее переместил с конца, в результате 1 ошибка
int GetExtremumZZBar ( string sym = "" , int tf = 0 , int ne = 0 , int dp = 12 , int dv = 5 , int bc = 3 ) {
  if ( sym == "" ) sym = Symbol () ;
  double zz ;
  int    i , k = iBars ( sym , tf ) , ke = 0 ;
 
  for ( i = 1 ; i < k ; i ++ ) {
    zz = iCustom ( sym , tf , " ZigZag " , dp , dv , bc , 0 , i ) ;
    if ( zz != 0 ) {
      ke ++;
      if ( ke > ne ) return ( i ) ;
    }
  }
  Print ( " GetExtremumZZBar(): Экстремум ЗигЗага номер " , ne , " не найден " ) ;
  return ( 0 ) ;
}   
//----
   
//+------------------------------------------------------------------+
Bu mesajı yazarken, bir nevi sorunumu anladım. İşlev , başlatma işlevinin gövdesinde olmamalıdır. Başlangıcın gövdesi yalnızca bu işleve yapılan bir çağrıyı içermelidir. Doğru şekilde?
 
Climber :
 
Bu mesajı yazarken, bir nevi sorunumu anladım. İşlev, başlatma işlevinin gövdesinde olmamalıdır. Başlangıcın gövdesi yalnızca bu işleve yapılan bir çağrıyı içermelidir. Doğru şekilde?

Evet
 
Climber :
Bu mesajı yazarken, bir nevi sorunumu anladım. İşlev, başlatma işlevinin gövdesinde olmamalıdır. Başlangıcın gövdesi yalnızca bu işleve yapılan bir çağrıyı içermelidir. Doğru şekilde?

Doğru şekilde. Başka bir işlevin gövdesi içinde hiçbir işlev bildirilemez.
 
Climber :
Bu mesajı yazarken, bir nevi sorunumu anladım. İşlev, başlatma işlevinin gövdesinde olmamalıdır. Başlangıcın gövdesi yalnızca bu işleve yapılan bir çağrıyı içermelidir. Doğru şekilde?
Evet. Buraya bakın: MQL4 Program Yapısında MQL4 Eğitim Programı .
 
yeni bir soru var
Çok para birimli bir Uzman Danışmanın kullanılan tüm enstrümanların tablolarını açması gerekli mi?
Böylece grafiğine Expert Advisor'ın eklendiği bir enstrümana tik geldiğinde diğer enstrümanlar için aynı işlem kriterleri kontrol edilir. Bu durumda günlük açılan sipariş sayısını artırmak için çoklu para birimi kullanmak istiyorum. Çok fazla sipariş olmayacak, çalışma saatlik grafiklerde gerçekleştirilir. Manuel olarak, günde bir cihaz için ikiden fazla sipariş alınmadı.

Ve beni korkutan bir sonraki görev, çok para birimli bir ticaret platformu için bir sipariş muhasebesi bloğu yazmak. İyi haber şu ki, bekleyen siparişler EA'da kullanılmamaktadır (bu, muhasebe bloğunu kısaltacak olsa da :)). Bana bu konuda, özellikle çok para birimli muhasebeyle ilgili neler okuyabileceğinizi söylemeyin.
 
Climber :
yeni bir soru var
Çoklu para birimi Uzman Danışmanının kullanılan tüm enstrümanların tablolarını açması gerekli mi?

Numara. Ancak kullanılan tüm semboller Piyasa İzleme penceresinde.

 

Lütfen söyle bana: Danışmanı nasıl durdurabilirim ? Durdurma kaybı tetiklendiğinde çalışmayı durdurmasını istiyorum. Önerebilecek biri varsa, yazın - mininp@list.ru. Şimdiden teşekkürler!

 
Mister_X :

Lütfen söyle bana: Danışmanı nasıl durdurabilirim? Stoploss tetiklendiğinde çalışmayı durdurmasını istiyorum. Önerebilecek biri varsa, yazın - mininp@list.ru. Şimdiden teşekkürler!


Durmamak daha kolay olabilir, ancak durdurmalı bir emrin olup olmadığını kontrol edin ve varsa hiçbir şey yapmayın.
 
Taki, SK tarafından hazırlanan karmaşık sipariş muhasebesi hakkında harika bir makale buldu 'Büyük bir programda sipariş muhasebesi'
Şu anda manuel olarak bir demo hesabı üzerinde çalışıyorum. Ve finansal göstergeler açısından, sonuç, karlılığı ile beni biraz korkutuyor. Yaklaşık bir aydır en son sistem üzerinde manuel olarak çalışıyor.

1000 depozito ve 1:100 kaldıraçla başladım. Parti büyüklüğü her zaman en az 100$'dır. 3-4 döviz çifti üzerinde çalışıyorum. Böylece, ilk iki haftada depozitoyu ikiye katlamayı başardık, yani. depozito = 2000$ oldu. Şimdi yaklaşık 3000 var.

Bu süre zarfında maksimum kâr, bir enstrüman için 118 puandı (doğal olarak, bir siparişten). Ortalama olarak, siparişleri 40-50 puan karla kapatıyorum. Böyle bir sipariş, toplamda yaklaşık 10 puanlık bir kayıpla duraklarla kapatılan birkaç siparişle sonuçlanır. Genel olarak, en kötü senaryoda, çeşitli enstrümanlar için günde toplam 100 puan vardır. Ve bu çok değil, mevduatta ayda 2 kat küçük bir artış değil. Ve yeniden yatırımı hesaba katarak hesaplarsanız, 10 aylık çalışmadan sonra depozito 1 milyon 24 bin ABD başkanı olmalıdır.

Her şey yoluna girecek, sevinmeliyiz, ama sonra makul bir soru ortaya çıkıyor: Ne tür bir DC, 10 ayda 1.000 dolardan bu kadar yüzsüzce gevşemesine izin verecek ???? Belirsiz şüpheler işkence etmeye başlar, bu kadar basit olamaz !!!!!!

Tabii ki, demo için bir ay ve hatta kısa bir süre, belki şimdi sadece şans, ancak 5 gösterge üzerinde çalışırken şans. Bu nedenle, daha fazla ticaret yapabilmem için bir danışman yazmaya çalışıyorum, aksi takdirde yeterince uyuyamıyorum.

Dürüst olmak gerekirse, tüm bu olayı düşündüm, bu bir cazibe değil mi???