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

 

bir çubuğu veya mumu kapatarak bir sipariş nasıl kapatılır

 int start()
  {
       if ((Time[ 0 ] == prevtime) && openbarspriceonly) {
       return ( 0 );
      }
   
       if (! IsTradeAllowed()) {
       Comment ( "Trades disallow" );
       return ( 0 );
      }
   
      prevtime = Time[ 0 ];

     if (CountTrades() == 0 )
    {
        open = iOpen( Symbol (), PERIOD_D1 , 0 );
        close = iClose( Symbol (), PERIOD_D1 , 1 );

     if (DayOfWeek()== 1 && Ask >= open)
     { 
        ticket = OrderSend ( Symbol (), OP_BUY, lots, Ask, Slippage, 0 , 0 , NULL , Magic, 0 , Blue);
         if (ticket> 0 )
        {
           Print ( "Ордер ошибка в Лонг: " , GetLastError ());
        }
         else 
           Print ( "Ордер открыт успешно" );
         if ( OrderSelect ( ticket, SELECT_BY_POS))
        {
           if (OrderClose(ticket, lots, close,Slippage, 0 ))
           return ( 0 );
        }
     }
     if (DayOfWeek()== 5 && Bid <= open)
     {
        ticket = OrderSend ( Symbol (), OP_SELL, lots, Bid, Slippage, 0 , 0 , NULL , Magic, 0 , Red);
         if (ticket> 0 )
        {
           Print ( "Ордер ошибка в Шорт " , GetLastError ());
        }
         else 
           Print ( "Ордер открыт успешно" );
         if ( OrderSelect ( ticket, SELECT_BY_POS))
        {
           if (OrderClose(ticket, lots, close,Slippage, 0 ))
           return ( 0 );
        }

     }
    }
     return ( 0 );
  }
 
ikatsko :

Strateji test cihazında, MarketInfo(Symbol(),MODE_TICKVALUE) = 0 (!) komutu bu, örneğin enstrümanın EURUSD ve bakiye para biriminin RUR olduğu durumlarda ve diğer kombinasyonlarda olur. Bakiye para biriminin, döviz çiftindeki ikinci para biriminin adıyla eşleşmesi gerektiğini anladım. Aksi halde komut SIFIR değerini verir (strateji test cihazında) Sonuç olarak istenilen kombinasyonlarda test yapmak imkansızdır. Bu sorun nasıl çözülür?

Vurgulanan yanlış! Hesaplamam EURUSD, GBPUSD vb. ile euro cinsinden yapılır. Sadece açıldığında ilk veri gelene kadar 0 verebilir, bu yüzden TICKVALUE ile hesaplama yapmadan önce eğer != 0;

Ve test cihazında MarketInfo() çalışmayabilir, bu yüzden bir tick öğesinin yaklaşık fiyatını bildiğimden, onu IsTesting() || koşuluna koydum. Optimizasyon() || IsVisualMode().

" Bir kenenin yaklaşık fiyatını bilmek "? Karar şu şekilde verildi: yaklaşık tick fiyatı = 10*CurrencyPair Rate (USDCurrencyBalance). Giriş parametrelerinde ayarlanır. Elbette CurrencyPair Rate (USDCurrencyBalance) terminalde otomatik olarak alınabilseydi iyi olurdu. Yani, bakiye para birimini (AccountInfoString(ACCOUNT_CURRENCY)) bilmek, örneğin RUR, bir sembol adı dizesi oluşturur, örneğin USDRUR. Bakalım terminalde böyle bir sembol var mı? Belki benzer bir tane vardır, örneğin, USDRUR_c ? Mevcut Döviz Çiftinin Kursunu işe alın.

 
artmedia70 :
Peki ya Vista? Fare, fare zaten ölüyor. yakında söner ;)
Faresiz bir dizüstü bilgisayarım var, fareden büyük bir bilgisayarla eskisi gibi değil, işaret parmağım ağrıyor!
 
ikatsko :

Strateji test cihazında, MarketInfo(Symbol(),MODE_TICKVALUE) = 0 (!) komutu bu, örneğin enstrümanın EURUSD ve bakiye para biriminin RUR olduğu durumlarda ve diğer kombinasyonlarda olur. Bakiye para biriminin, döviz çiftindeki ikinci para biriminin adıyla eşleşmesi gerektiğini anladım. Aksi halde komut SIFIR değerini verir (strateji test cihazında) Sonuç olarak istenilen kombinasyonlarda test yapmak imkansızdır. Bu sorun nasıl çözülür?

Vurgulanan yanlış! Hesaplamam EURUSD, GBPUSD vb. ile euro cinsinden yapılır. Sadece açıldığında ilk veri gelene kadar 0 verebilir, bu yüzden TICKVALUE ile hesaplama yapmadan önce eğer != 0;

Ve test cihazında MarketInfo() çalışmayabilir, bu yüzden bir tick öğesinin yaklaşık fiyatını bildiğimden, onu IsTesting() || koşuluna koydum. Optimizasyon() || IsVisualMode().

" Bir kenenin yaklaşık fiyatını bilmek "? Karar şu şekilde verildi: yaklaşık tick fiyatı = 10*CurrencyPair Rate (USDCurrencyBalance). Giriş parametrelerinde ayarlanır. Elbette CurrencyPair Rate (USDCurrencyBalance) terminalde otomatik olarak alınabilseydi iyi olurdu. Yani, bakiye para birimini (AccountInfoString(ACCOUNT_CURRENCY)) bilmek, örneğin RUR, bir sembol adı dizesi oluşturur, örneğin USDRUR. Bakalım terminalde böyle bir sembol var mı? Belki benzer bir tane vardır, örneğin, USDRUR_c ? Mevcut Döviz Çiftinin Kursunu işe alın.

Benim için bu gerekli değil, çünkü. test sırasında, kene fiyatı, yayılma ve çok daha fazlası gibi değişmez. Bu nedenle, herhangi bir enstrümanın grafiğinde her zaman MarketInfo(Symbol(),MODE_TICKVALUE) bulunur, kullandığım herhangi bir grafik göstergesi aracılığıyla bir yorum olarak görüntülenir ve testten önce değerini EA koduna her koyduğumda.
 
borilunad :
Faresiz bir dizüstü bilgisayarım var, fareden büyük bir bilgisayarla eskisi gibi değil, işaret parmağım ağrıyor!

Yani dokunmatik yüzey bozuk. Ayrıca düğmeleri vardır.

Veya parmaklar aynı değil ... :) Ama burada ortaya çıkan “sıçrama” işletim sisteminin nedeninin bir sonucu gibi görünmüyor

 
artmedia70 :

Yani dokunmatik yüzey bozuk. Düğmeleri de vardır.

Veya parmaklar aynı değil ... :) Ama burada ortaya çıkan “sıçrama” işletim sisteminin nedeninin bir sonucu gibi görünmüyor

Dokunmatik yüzey açısından çok güçlü değilim, "sıçrama"... Dokunmatik yüzey araba düştüğünde olmasına rağmen mi?! Ama beni tehdit etmiyor, el arabam yok ve buna ihtiyacım yok. Güzel şehirde dolaşmak benim için bir zevk ve gerektiğinde, iyi yollar ve trafik sıkışıklığı olmayan çok uygun toplu taşıma! :)
 
borilunad :
Dokunmatik yüzey açısından çok güçlü değilim, "sıçrama"... Dokunmatik yüzey araba düştüğünde olmasına rağmen mi?! Ama beni tehdit etmiyor, el arabam yok ve ona ihtiyacım yok. Güzel şehirde dolaşmak benim için bir zevk ve gerektiğinde, iyi yollar ve trafik sıkışıklığı olmayan çok uygun toplu taşıma! :)

Google'da yasak mı?

Dokunmatik yüzey ( İngilizce)   dokunmatik yüzey - dokunmatik yüzey), dokunmatik yüzey - işaret giriş cihazı , buluş otomasyon ve bilgisayar teknolojisi ile ilgilidir ve bir bilgisayara, örneğin sembolik, ayrıca elemanların konumunun koordinatları hakkında bilgileri okumak ve girmek için kullanılabilir ve dokunmatik panelin yüzeyinde manyetik malzemeden yapılmış parçalar. Dokunmatik panel bir PCB paketi içerir. Her baskılı devre kartının katmanlarında, matrisin sıraları ve sütunları boyunca seri zincirler halinde bağlanmış düz spiral endüktif-kapasitif elemanlar bulunur. Tüm baskılı devre kartlarının matrisleri birbiriyle hizalanmıştır. Baskılı devre kartlarının bitişik yüzeyleri arasına bir yalıtım tabakası yerleştirilir. i-devre kartının satırlarının (sütunlarının) çıkışları, (i + 1)-th baskılı devre kartının satırlarının (sütunlarının) girişlerine ve matrisin satır ve sütunlarının girişlerine bağlanır. baskılı devre kartı paketindeki ilkler, çıktıları matrisin satır ve sütunlarının çıkışları olan dokunmatik panelin girişleridir, sonuncusu PCB paketindeki. Diğer işaretleme aygıtları gibi, dokunmatik yüzey tipik olarak bir parmağı aygıtın yüzeyinde hareket ettirerek " işaretçiyi " kontrol etmek için kullanılır. Dokunmatik yüzeyler çeşitli boyutlarda gelir, ancak genellikle alanları 50 cm²'yi geçmez. Yürütme şekli genellikle bir dikdörtgendir, ancak daire şeklinde modeller vardır.

 

Çocuklar bana bugün ortaya çıkan bir aksaklıktan dolayı söyle.

EA, Cuma günü piyasa kapanmadan 15 dakika önce alım satımı durdurma yeteneğine sahiptir.

Yeni bir gün göründüğünde, EA Cuma olup olmadığını kontrol eder, ardından bugün StringToTime("23:59")-15*60'da alım satımı durdururuz.

 datetime FinishInFriday;
void OnTick ()   {
   datetime cur=TimeCurrent();
   if (PrevDay!=Day()) {                               // при наступлении нового дня
      PrevDay =Day();
      
       if (TimeDayOfWeek(cur)== 5 ) {                     // если сегодня пятница
         FinishInFriday= StringToTime ( "23:59" )- 15 * 60 ;     // время окончания торговли
         Print ( "Finish In Friday = " ,FinishInFriday);   
       }
   }
   if (TimeDayOfWeek(cur)== 5 )
       if (cur>FinishInFriday) 
         return ;
}

Strateji test cihazında bu işlev doğru çalışıyor, ancak gerçek hayatta tamamen farklı bir resim görüyorum - danışman Cuma geldiğinde ilk tik ile ticareti durduruyor.

İşte uzmanların dergisinden baskılar:

Komisyoncu #1, demo:

0 05:59:47.731 Ölçekleyici GBPAUDpt,M1: Cuma Bitiş = 2014.10. 23 23:44:00

Broker №2, gerçek:

0 03:00:11.999 Ölçekleyici EURUSD,M1: Cuma Bitiş = 2014.10. 23 23:44:00

Yani, ilk tikte bugünün günlük çubuğu (24 Ekim Cuma) göründüğünde, EA

"23:59" dizesini bugünün gününü atamak yerine dünle zamana dönüştürür.

Ancak EA Cuma günü gün ortasında yeniden başlatılırsa, işin tamamlanma zamanını doğru bir şekilde belirleyecektir.

 
tuner :

Çocuklar bana bugün ortaya çıkan bir aksaklıktan dolayı söyle.

EA, Cuma günü piyasa kapanmadan 15 dakika önce alım satımı durdurma yeteneğine sahiptir.

Yeni bir gün göründüğünde, EA Cuma olup olmadığını kontrol eder, ardından bugün StringToTime("23:59")-15*60'da alım satımı durdururuz.

Strateji test cihazında bu işlev doğru çalışıyor, ancak gerçek hayatta tamamen farklı bir resim görüyorum - danışman Cuma geldiğinde ilk tik ile ticareti durduruyor.

İşte uzmanların dergisinden baskılar:

Komisyoncu #1, demo:

0 05:59:47.731 Ölçekleyici GBPAUDpt,M1: Cuma Bitiş = 2014.10. 23 23:44:00

Broker №2, gerçek:

0 03:00:11.999 Ölçekleyici EURUSD,M1: Cuma Bitiş = 2014.10. 23 23:44:00

Yani, ilk tikte bugünün günlük çubuğu (24 Ekim Cuma) göründüğünde, EA

"23:59" dizesini bugünün gününü atamak yerine dünle zamana dönüştürür.

Ancak EA Cuma günü gün ortasında yeniden başlatılırsa, işin tamamlanma zamanını doğru bir şekilde belirleyecektir.

Ve dikkatlice bakın.

Dünle bugün aynı değilse...

Bu bloğa günde yalnızca bir kez gireceksiniz.

Test cihazında doğru çalışacağından şüphe duyduğum bir şey.

MqlDateTime ve TimeToStruct belgelerine bakın

Basit bir yapı ve bu tür tarih ve saat dönüşümleriyle çalışmaktan çok daha uygun.

 
Vinin :

Google'da yasak mı?

Dokunmatik yüzey ( İngilizce)   dokunmatik yüzey - dokunmatik yüzey), dokunmatik yüzey - işaret giriş cihazı , buluş otomasyon ve bilgisayar teknolojisi ile ilgilidir ve bir bilgisayara, örneğin sembolik, ayrıca elemanların konumunun koordinatları hakkında bilgileri okumak ve girmek için kullanılabilir ve dokunmatik panelin yüzeyinde manyetik malzemeden yapılmış parçalar. Dokunmatik panel bir PCB paketi içerir. Her baskılı devre kartının katmanlarında, matrisin sıraları ve sütunları boyunca seri zincirler halinde bağlanmış düz spiral endüktif-kapasitif elemanlar bulunur. Tüm baskılı devre kartlarının matrisleri birbiriyle hizalanmıştır. Baskılı devre kartlarının bitişik yüzeyleri arasına bir yalıtım tabakası yerleştirilir. i-devre kartının sıralarının (sütunlarının) çıkışları, (i+1)-th baskılı devre kartının satırlarının (sütunlarının) girişlerine ve matrisin satır ve sütunlarının girişlerine bağlanır. baskılı devre kartı paketindeki ilkler, çıktıları matrisin satır ve sütunlarının çıkışları olan dokunmatik panelin girişleridir, sonuncusu PCB paketindeki. Diğer işaretleme aygıtları gibi, dokunmatik yüzey tipik olarak bir parmağı aygıtın yüzeyinde hareket ettirerek " işaretçiyi " kontrol etmek için kullanılır. Dokunmatik yüzeyler çeşitli boyutlarda gelir, ancak genellikle alanları 50 cm²'yi geçmez. Yürütme şekli genellikle bir dikdörtgendir, ancak daire şeklinde modeller vardır.

Vista'daki gibi ama beni hileleriyle hayal kırıklığına uğratan yeni 8-ke'mdeki dikdörtgen olan, sakince çalışmak imkansız, bir anda her şey bir yerlere uçup gidiyor, muhtemelen cep telefonlarından modayı aldılar, tüm dünyanın yaşadığını düşünüyorlar. sadece eğlence için! Bilgilendirici mesaj için teşekkürler (şaka yapmıyor musunuz?)!