Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 621

 
YuraZ :



Teşekkürler!!!!!!!!!!!!

Bunu küstahlık olarak görmüyorsanız ..... :)) Test Cihazını nasıl doğru başlatacağımı söyleyin. Denediğim için olmuyor.

#import   "shell32.dll"
     int ShellExecuteA( int hwnd, string Operation, string File, string Parameters, string Directory, int ShowCmd); 
#import

int Start;

int start()
   {
    //---------------------------------- Запустим Тестер -------------------------
    //Start   = ShellExecuteA(0, "Open", "terminal.exe", FileOptim, PuthTester_h, 3);
    //Start   = ShellExecuteA(0, "Open", "terminal.exe", "optimise.ini", "D:\Alpari_Terminal_Tester\tester", 3);

     return ( 0 );
   }
 
Leo59 :

Teşekkürler!!!!!!!!!!!!

Bunu küstahlık olarak görmüyorsanız ..... :)) Test Cihazını nasıl doğru başlatacağımı söyleyin. Denediğim için olmuyor.

Kendi kendine optimizasyon yapmaya karar verdi! ? kull... bu harika bir konu

1'i sevmemin 2 yolu var

1) aynı terminalde EA'nın kendisinden optimizasyonu çalıştırın

2) ayrı bir terminal veya terminaller kurun - bunları başlatın ve bittiğinde optimizasyon sonuçlarını okuyun


2. yöntemi deniyorsunuz - daha hantal


başlamak, değiştirmek

 ShellExecuteA  на ShellExecuteW
 
YuraZ :

Kendi kendine optimizasyon yapmaya karar verdi! ? kull... bu harika bir konu

1'i sevmemin 2 yolu var

1) aynı terminalde EA'nın kendisinden optimizasyonu çalıştırın

2) ayrı bir terminal veya terminaller kurun - bunları başlatın ve bittiğinde optimizasyon sonuçlarını okuyun


2. yöntemi deniyorsunuz - daha hantal


başlamak, değiştirmek



Teşekkürler!!!!!!!!
Haklısın :)) Nihayetinde - kendi kendini iyileştirme.


1) aynı terminalde EA'nın kendisinden optimizasyonu çalıştırın

Mevcut sanal ticaretin sonuçlarına dayanarak yapıyorum

2) ayrı bir terminal veya terminaller kurun - bunları başlatın ve bittiğinde optimizasyon sonuçlarını okuyun

Sonbaharda, XEON'un otomatik optimizasyonunu araştırdım. TestCommander ticari bir "kara kutu" dur. Seçenek 1'de çalışmayan işlevselliği bir şekilde uygulamak için kendim yapmaya karar verdim.

 
pu6ka :

Bu göstergeyi yeni çubukların görünümüyle M1'e atın, soldaki timsah çizgilerinin "üzerine yazılır". Bu gerekli mi?



Sorunu çözdüm.

 #property copyright "forexman77@list.ru"
#property link       "forexman77@list.ru"
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
//--- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
extern int p  = 10 ;
double val_plus[];
double val_minus[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle( 0 , DRAW_LINE );
   SetIndexBuffer ( 0 ,ExtMapBuffer1);
   SetIndexStyle( 1 , DRAW_LINE );
   SetIndexBuffer ( 1 ,ExtMapBuffer2);
   IndicatorDigits( Digits + 1 );
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
     int counted_bars=IndicatorCounted(),                      
    limit;
     double
    indicator_plus,indicator_minus;
   if (counted_bars> 0 )
      counted_bars--;
   limit= Bars -counted_bars;
   for ( int i= 0 ;i<limit;i++)
   { 
     indicator_plus= 0 ;
     indicator_minus= 0 ;
     ArrayInitialize (val_plus, 0 );
     ArrayInitialize (val_minus, 0 );
   for ( int k=p;k>= 0 ;k--)
     {
     ArrayResize (val_plus,p);
     ArrayResize (val_minus,p);
     if ( iMA ( NULL , PERIOD_CURRENT , 21 , 0 , MODE_EMA , PRICE_CLOSE ,i+k)> iMA ( NULL , PERIOD_CURRENT , 21 , 0 , MODE_EMA , PRICE_CLOSE ,i+k+ 1 ))val_plus[k]= 1 ;
     if ( iMA ( NULL , PERIOD_CURRENT , 21 , 0 , MODE_EMA , PRICE_CLOSE ,i+k+ 1 )> iMA ( NULL , PERIOD_CURRENT , 21 , 0 , MODE_EMA , PRICE_CLOSE ,i+k))val_minus[k]= 1 ;

     if (val_plus[k] > 0 ){indicator_plus=indicator_plus+val_plus[k];}
     if (val_minus[k] > 0 ){indicator_minus=indicator_minus+val_minus[k];}
     }
          ExtMapBuffer1[i]=indicator_plus;
          ExtMapBuffer2[i]=indicator_minus;
   }

   return ( 0 );
  }
 
Bir dosyayı bir konumdan diğerine kopyalayan basit bir komut dosyası kodu yazabilir mi?

Veya hangisi Tester'ı başka bir terminalde başlatacak?

İşte, hala yapamam. peki sen?

 
Leo59 :
Bir dosyayı bir konumdan diğerine kopyalayan basit bir komut dosyası kodu yazabilir mi?

Veya hangisi Tester'ı başka bir terminalde başlatacak?

İşte, hala yapamam. peki sen?


Ve yapamam çünkü ihtiyacım yok! Mantığımı değiştirmemek için ihtiyacım olanı yapmayı öğreniyorum!

Üstelik bunu kendisi yaptı, bir şeyi düzeltmeniz gerekiyorsa sorun değil!

Temel bilgilerden "materyal" öğrenin, öğrenemeyeceğiniz ipuçları-hediyelerle ve nihayetinde boşuna daha fazla zaman harcayın!

İyi şanlar! :)

 
borilunad :


Ve yapamam çünkü ihtiyacım yok! İhtiyacım olanı, mantığımı değiştirmemek için kendim yapmayı öğreniyorum!

Üstelik bunu kendisi yaptı, bir şeyi düzeltmeniz gerekiyorsa sorun değil!

Temel bilgilerden "materyal" öğrenin, öğrenemeyeceğiniz ipuçları-hediyelerle ve nihayetinde boşuna daha fazla zaman harcayın!

İyi şanlar! :)

Haklısın, "başkasının ekmeğine ağzını açma."

Muhteşem Barselona şehri! Yeşil biçilmiş çimenler arasına döşenen tramvay rayları tek başına bir değerdir! Ancak şimdi, oradaki, İspanya'daki kadınlar, bizim St. Petersburg'daki kadınlar gibi değil, kısa yüzlü ve şişman kıçlı.
:)) Akşamdan kalmışlıktan ne tür bir saçmalık yazılmaz. Bu kendimle ilgili.

Her şey bir "paket" içinde ve sizin için de başarı, diğer herkes gibi!

 
Leo59 :

Haklısın, "başkasının ekmeğine ağzını açma."

Muhteşem Barselona şehri! Yeşil biçilmiş çimenler arasına döşenen tramvay rayları tek başına bir değerdir! Ancak şimdi, oradaki, İspanya'daki kadınlar, bizim St. Petersburg'daki kadınlar gibi değil, kısa yüzlü ve şişman kıçlı.
:)) Akşamdan kalmışlıktan ne tür bir saçmalık yazılmaz. Bu kendimle ilgili.

Her şey bir "paket" içinde ve sizin için de başarı, diğer herkes gibi!


Bir "somun"dan bahsetmiyorum, daha verimli bir çalışma yönteminden bahsediyorum, böylece "boşa geçen yıllar için dayanılmaz derecede acı verici olmasın"!

Ancak, her birine kendi! :(

 
artmedia70 :

Belki şöyle deneyin:

İletilen değişkenlere bir sembol ve sihir eklendi. Onları kontrol etmiyorsun.




Teşekkür ederim! Pazartesi deneyeceğim. Ancak soru hala benim için net değil. Herhangi bir siparişi kapatmak istersem, neden bir hata var? Bu arada, eski test cihazında aynı kodu denemeniz gerekecek. Yeni test cihazının ayrıntılı olarak birçok değişikliği var. Sonucun ne olacağından her zaman emin değilim.
 
001 :


Teşekkür ederim! Pazartesi deneyeceğim. Ancak soru hala benim için net değil. Herhangi bir siparişi kapatmak istersem, neden bir hata var? Bu arada, eski test cihazında aynı kodu denemeniz gerekecek. Yeni test cihazının ayrıntılı olarak birçok değişikliği var. Sonucun ne olacağından her zaman emin değilim.

Hiçbir şey hatırlamıyorum... Tüm Satışları kapatmanız gerekiyorsa, işlevden geri dönmeniz gerekmez. Orada uyandım. Tümünü kapatmak için böyle:

 //+------------------------------------------------------------------+
void CheckForLongetivityClose_Sell( int symbol, int magic) {
   if (DayOfWeek()== 0 || DayOfWeek()== 6 ) return ;
   for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--) {
       if ( OrderSelect (i,SELECT_BY_POS)) {
         if (OrderMagicNumber()!=magic) continue ;
         if (OrderSymbol()!=symbol)     continue ;
         if (OrderType()!=OP_SELL)       continue ;
         datetime openTime_S= OrderOpenTime();
         int timeDistance_S = TimeCurrent ()-openTime_S;
         if (timeDistance_S> 60 *BarrierMinute_S) {
            bool res = OrderClose(OrderTicket(),OrderLots(),Ask, 3 , clrRed );
            }
         }
      }
}
//+------------------------------------------------------------------+

Genel olarak, elbette, bu satır yerine

 bool res = OrderClose(OrderTicket(),OrderLots(),Ask, 3 , clrRed );

sunucu dönüş kodlarının işlenmesine sahip olan pozisyonları kapatmak için normal işlevi çağırmanız gerekir.