FORTS Lütfen yardım edin - sayfa 5

 

Biri yalan söylüyor ya da Mikhail teknik desteğin itirazlarını kabul etmiyor ya da teknik destek sorunu kabul etmek istemiyor.

Mikalas   2015.03.26 00:44     RU

Servicedex yine hatayı yeniden oluşturamıyor!


alexvd   2015.03.26 15:16  

İlk mesajdaki kod da yanlış.

 
MigVRN :

Barış içinde yaşayalım :)

Sadece bir kerede değil - ve başarılı yüklemede.

Kodunuzda, OnInit işlevinin işe yaramaz olduğu veya geliştiricilerin hile yaptığı açıktır.

 
Mikalas :

Evet, ama ya gerçekten veri yoksa?

Sonra ne? Döngü? kaç iterasyonla?

Belirli bir tarif yok...

Göstergeleri hiç sevmiyorum… Sırf bu yüzden:

Göstergelerle aynı iş parçacığında, belirli bir sembol kene işleme ve geçmiş senkronizasyonu üzerinde diğer eylemler de sırayla gerçekleştirilir. Bu, göstergede sonsuz bir eylem gerçekleştirilirse , sembolündeki diğer tüm olayların asla yürütülmeyeceği anlamına gelir.

Onlar yüzünden sohbet ve diğer her şey yavaşlayabilir. Bu nedenle, onları komşu sohbetlerden alıntı talebi olmadan ve özel etkinlikler sağlayıcısı olarak kullanıyorum. Genel olarak, yalnızca OnCalculate () işlevine gelenlerle çalışıyorum.

Serj Che :

Kodunuzda, OnInit işlevinin işe yaramaz olduğu veya geliştiricilerin hile yaptığı açıktır.

Bu sizin kodunuz - İçine yalnızca alexvd'nin bahsettiği şeyi ekledim. OnInit işlevinin yararsız olduğu sonucunun neden ondan çıktığını anlamadım.

 
alexvd :
Sadece, içindeki kodunuzda, ResetLastError ()'dan hemen sonra is_failed global değişkenindeki hatayı sıfırlamanız gerekir. Aksi takdirde, bir hata yakaladığımızda bununla ilgili bir mesaj alırız.

Bingo! Neredeyse tahmin ettin)) Söylemelerine şaşmamalı - güven, ama doğrula. Son metin aşağıdadır.

 #property copyright "Copyright 2014, MetaQuotes Software Corp."
#property link        "http://www.mql5.com"
#property version    "1.00"
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_plots    1
//
bool is_failed = false ;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
  {
//--- indicator buffers mapping
   SymbolSelect ( "MIX-6.15" , true );
   SymbolSelect ( "RTS-6.15" , true );
   SymbolSelect ( "Si-6.15" , true );
//---  
   ResetLastError ();
//---  
   int total_bars = Bars ( "MIX-6.15" , PERIOD_M1 );
   if ( total_bars > 0 )
  {
    total_bars = Bars ( "RTS-6.15" , PERIOD_M1 );
     if ( total_bars > 0 )
    {
      total_bars = Bars ( "Si-6.15" , PERIOD_M1 );
      {
         if ( total_bars > 0 )
        {
           is_failed = false ;
           Print ( "Init OK." );
        }
         else
        {
          is_failed = true ;
           Print ( "Get Bars failed Si-6.15 Last error = " , string ( GetLastError () ) );
        }
      }
    }
     else
    {
      is_failed = true ;
       Print ( "Get Bars failed RTS-6.15 Last error = " , string ( GetLastError () ) );
    }
  }
   else
  {
    is_failed = true ;
     Print ( "Get Bars failed MIX-6.15 Last error = " , string ( GetLastError () ) );
  } 
//---
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
   ResetLastError ();
//---  
 int total_bars = Bars ( "MIX-6.15" , PERIOD_M1 );
   if ( total_bars > 0 )
  {
    total_bars = Bars ( "RTS-6.15" , PERIOD_M1 );
     if ( total_bars > 0 )
    {
      total_bars = Bars ( "Si-6.15" , PERIOD_M1 );
      {
         if ( total_bars > 0 )
        {
           Print ( "Init OK." );
          is_failed = false ;
        }
         else
        {
          is_failed = true ;
           Print ( "Get Bars failed Si-6.15 Last error = " , string ( GetLastError () ) );
        }
      }
    }
     else
    {
      is_failed = true ;
       Print ( "Get Bars failed RTS-6.15 Last error = " , string ( GetLastError () ) );
    }
  }
   else
  {
    is_failed = true ;
     Print ( "Get Bars failed MIX-6.15 Last error = " , string ( GetLastError () ) );
  } 
//---
   if ( is_failed )
   {
     Print ( "Sorry! Get Bars failed." );
   }
   else Print ( "Bingo! We done." );
//--- return value of prev_calculated for next call
   return (rates_total);
  }
 
MigVRN :

Belirli bir tarif yok...

Göstergeleri hiç sevmiyorum… Sırf bu yüzden:

Göstergelerle aynı iş parçacığında, belirli bir sembol kene işleme ve geçmiş senkronizasyonu üzerinde diğer eylemler de sırayla gerçekleştirilir. Bu, göstergede sonsuz bir eylem gerçekleştirilirse , sembolündeki diğer tüm olayların asla yürütülmeyeceği anlamına gelir.

Onlar yüzünden sohbet ve diğer her şey yavaşlayabilir. Bu nedenle, onları komşu sohbetlerden alıntı talebi olmadan ve özel etkinlikler sağlayıcısı olarak kullanıyorum. Genel olarak, yalnızca OnCalculate () işlevine gelenlerle çalışıyorum.

Bu sizin kodunuz - İçine yalnızca alexvd'nin bahsettiği şeyi ekledim. OnInit işlevinin değersiz olduğu sonucunun neden ondan çıktığını anlamadım.

Kodum nedir? Herhangi bir kod yazmadım.

Göstergeler nedeniyle, diğer her şey yavaşlamayacak. İşin aslı, MT5'te her şey senkronize değil, göstergeler kendi iş parçacığında, danışmanlar kendi işlerinde çalışıyor. Camın kendisi.

Ben de göstergeleri sevmiyorum ama bazen onları kullanmam gerekiyor.

 
Dima_S :

Bingo! Neredeyse tahmin ettin)) Söylemelerine şaşmamalı - güven, ama doğrula. Son metin aşağıdadır.

OnInit'te olanı OnCalculate'de neden tekrarlıyorsunuz? Bu bir tür büyü mü?
 
Serj_Che :

Kodum nedir? Herhangi bir kod yazmadım.

OOO... üzgünüm. Dima_S ile karıştırıldı .

Serj Che :

Göstergeler nedeniyle, diğer her şey yavaşlamayacak. İşin aslı, MT5'te her şey senkronize değil, göstergeler kendi iş parçacığında, danışmanlar kendi işlerinde çalışıyor. Camın kendisi.

Ben de göstergeleri sevmiyorum ama bazen onları kullanmam gerekiyor.

Göstergeler daha sonra kendi başlıklarında çalışır... sadece sohbet aynı başlıkta çalışır. Ve türkiye'de bir şeyler ters giderse ( OnCalculate() içindeki sonsuz döngü), o zaman kendi iş parçacığında da çalışan EA, bu sohbetten hiçbir şey görmeyecektir...

 
MigVRN :

OOO... üzgünüm. Dima_S ile karıştırıldı .

Göstergeler daha sonra kendi başlıklarında çalışır... sadece sohbet aynı başlıkta çalışır. Ve türkiye'de bir şeyler ters giderse ( OnCalculate() içindeki sonsuz döngü), o zaman kendi iş parçacığında da çalışan EA, bu sohbetten hiçbir şey görmeyecektir...

Bundan şüpheliyim, hatta bunun böyle olmadığına inanma eğilimindeyim, danışman kendi kendine çalışmalı. Spesifik olarak, böyle bir sorun yoktu, ancak istenirse böyle bir aşırılık kontrol edilebilir.

 
Serj_Che :

Bundan şüpheliyim, hatta bunun böyle olmadığına inanma eğilimindeyim, danışman kendi kendine çalışmalı. Spesifik olarak, böyle bir sorun yoktu, ancak istenirse böyle bir aşırılık kontrol edilebilir.

Bir doğrulama kodu atacağım. 2-3 saat arası. Ancak sohbetteki 1 gösterge "yavaşladığında", diğerlerinin de yavaşladığı gerçeği - bu, bir kereden fazla karşılaştığım bir gerçektir.
 
MigVRN :
Bir doğrulama kodu atacağım. 2-3 saat arası. Ancak sohbetteki 1 gösterge "yavaşladığında", diğerlerinin de yavaşladığı gerçeği - bu, bir kereden fazla karşılaştığım bir gerçektir.

Tamam, ilginç!

Göstergeler kendi işlerinde, Uzman Danışmanlar kendi işlerinde çalışır. Tabii tek çekirdekli bir taş değilse.