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

 
Анатолий Железняк # :

O zaman soru şudur: son kullanma tarihi kimdir? bu senin arkadaşın mı? Tanıtmak.

Ben sordum: kullanıcı düzeyinde.!!!

Bu kullanıcı düzeyindeydi.

sona erme - bekleyen sipariş sona erme süresi.

ama sana yakışmıyor.

"Danışmanın gözetiminden" bir emri geri çekmek imkansızdır çünkü vesayet sihire göre gider ama değiştirilemez.

Danışmanı farklı bir sipariş kontrolü ile yeniden yazmak gerekiyor...

 
MakarFX # :

Bu kullanıcı düzeyindeydi.

sona erme - bekleyen sipariş sona erme süresi.

ama sana yakışmıyor.

"Danışmanın gözetiminden" bir emri geri çekmek imkansızdır çünkü vesayet sihire göre gider ama değiştirilemez.

Danışmanı farklı bir sipariş kontrolü ile yeniden yazmak gerekiyor...

Uzun yaşamak.

 
MakarFX # :

Bu kullanıcı düzeyindeydi.

sona erme - bekleyen sipariş sona erme süresi.

ama sana yakışmıyor.

"Danışmanın gözetiminden" bir emri geri çekmek mümkün değildir; vesayet sihire göre gider ama değiştirilemez.

Danışmanı farklı bir sipariş kontrolü ile yeniden yazmak gerekiyor...

Makar kendini yırtma

 
Анатолий Железняк # :

Aman Tanrım! Ben sordum: kullanıcı düzeyinde ve sen bana tüm danışmanı kürek çekmemi teklif ediyorsun ve bir akıl hocası tonuyla "Ne tür var?" Diye soruyorsun. Oraya girmek istemiyorum. Oyun oynamayı severim, oyuncakların içini anlamayı değil.

Magic 0 değilse, pozisyonu kapatın ve tekrar girin.

 
MakarFX # :

Bu kullanıcı düzeyindeydi.

sona erme - bekleyen sipariş sona erme süresi.

ama sana yakışmıyor.

"Danışmanın gözetiminden" bir emri geri çekmek imkansızdır çünkü vesayet sihire göre gider ama değiştirilemez.

Danışmanı farklı bir sipariş kontrolü ile yeniden yazmak gerekiyor...

aynı sihirbazla bile kontrolden çıkabilirsiniz soru nasıl bir düzen gerekli, hangisini beğenirseniz listeye göre tanımlanırsa çalışmaz o zaman yapabilirsiniz

 
for (int i=0;i<OrdersTotal()-2;i++) последних 2 видеть не будет даже с тем же магиком только что ему нужно до путя так и не понятно 
 
Aleksandr Egorov # :
Kodda düzeltmeler olmadan kullanıcı olarak buna ihtiyacı var
 
Oraya metin yazmak için " giriş alanı " grafik nesnesinin aktif hale geleceği bir kısayol tuşunu bağlamanın bir yolu var mı? Örneğin, gelecekteki bir ticaret için parti büyüklüğü.
 
MakarFX # :
Kodda düzeltmeler olmadan kullanıcı olarak buna ihtiyacı var

o zaman her şey gerçekten kötü))

 

Merhaba. Lütfen bana söyle. MT5

Yapıyorum: zamanlayıcıya göre ekran görüntülerini alan ve bunları klasörlere ayıran bir gösterge (nokta sembolü).

tasarlanan algoritma: başlatma sırasında bir ekran görüntüsü alınır. Dosya işlemleri zaman aldığı için zamanlayıcı önce alınan ekran görüntüsünü hareket ettirir ve yenisi yapılır.

Başlatma sırasında zamanlayıcı tarafından yapılan ekran başarıyla taşınır.

Sorunlar:
1 Klasörde zamanlayıcı tarafından yapılan ilk ekran hemen görüntülenmez. YALNIZCA terminal kapatıldığında veya gösterge yeniden başlatıldığında görüntülenir.
İlki hariç 2 ekran görüntüsü hareket etmiyor, 5019 hatası (dosya yok), klasörde görüntülenmelerine rağmen (zamanlayıcı tarafından yapılan ilki hariç).


 #property strict
#property indicator_chart_window
#property indicator_plots 0

enum ENUM_FULL_MANUAL { full, //весь график
            manual, //указанный
            };
input int timer= 5 ; //время на шаг в секундах
input ENUM_FULL_MANUAL skr_mode=full; //размер скриншота   
input int width = 640 ; // ширина 
input int height = 320 ; // высота 
input string format = ".png" ;

ENUM_ALIGN_MODE align_mode= ALIGN_RIGHT ; // тип выравнивания

string name_folder, name_file;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
{
Print ( "OnInit()" );

ScreenShot();
         
name_folder= Symbol ()+ "  " +StringPeriod();
FolderCreate (name_folder);


EventSetTimer (timer);


return ( INIT_SUCCEEDED );
}
//===================================================================
void OnDeinit ( const int reason)
{
EventKillTimer ();
Move() ; 
}
//+------------------------------------------------------------------+
//| 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[])
{
//---

//--- return value of prev_calculated for next call
return (rates_total);
}
//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer ()
{
   Print ( "OnTimer() " );
   Move() ; 
   ScreenShot();
} //+------------------------------------------------------------------+
bool Move(){
   string src_path; 
   string dst_path; 
   StringConcatenate (src_path, "" , "//" ,name_file); 
   StringConcatenate (dst_path,name_folder, "//" ,name_file); 
   ResetLastError ();
   if ( FileMove (src_path, 0 ,dst_path, 0 )){
       Print ( "FileMove OK " );
       return true ;
   }   
   else {
       string err_text= "FileMove ERR: " +( string ) GetLastError ();
       if ( GetLastError ()== 5019 ) err_text+=( "  5019 name_file " +name_file);
       Print (err_text);
   }  
   return false ;
}

bool ScreenShot(){   
   name_file= TimeToString ( TimeLocal (), TIME_DATE | TIME_SECONDS )+format;
   StringReplace (name_file, ":" , "-" );
   if (skr_mode==full){
       if ( ChartScreenShot ( 0 , name_file, ( int ) ChartGetInteger ( 0 , CHART_WIDTH_IN_PIXELS , 0 )
      , ( int ) ChartGetInteger ( 0 , CHART_HEIGHT_IN_PIXELS , 0 ), ALIGN_RIGHT )){
         Print ( "screen name_file " , name_file);
         return true ;
      }
       else {
         Print ( "screen ERR: " , GetLastError ());
      }   
   }   
   if (skr_mode==manual){
       if ( ChartScreenShot ( 0 , name_file, width, height, align_mode)){
         return true ;
      }
   }      
   return false ;  
}
string StringPeriod(){
   if ( Period ()== 1 ) return "M1" ;
   if ( Period ()== 2 ) return "M2" ;
   if ( Period ()== 3 ) return "M3" ;
   if ( Period ()== 4 ) return "M4" ;
   if ( Period ()== 5 ) return "M5" ;
   if ( Period ()== 6 ) return "M6" ;
   if ( Period ()== 10 ) return "M10" ;
   if ( Period ()== 12 ) return "M12" ;
   if ( Period ()== 15 ) return "M15" ;
   if ( Period ()== 20 ) return "M20" ;
   if ( Period ()== 30 ) return "M30" ;
   if ( Period ()== 16385 ) return "H1" ;
   if ( Period ()== 16386 ) return "H2" ;
   if ( Period ()== 16387 ) return "H3" ;
   if ( Period ()== 16388 ) return "H4" ;
   if ( Period ()== 16390 ) return "H6" ;
   if ( Period ()== 16392 ) return "H8" ;
   if ( Period ()== 16396 ) return "H12" ;
   if ( Period ()== 16408 ) return "Daily" ;
   if ( Period ()== 32769 ) return "Weekly" ;
   if ( Period ()== 49153 ) return "Monthly" ;
   return "ERROR" ;
}