[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 274

 
Vinin :

Tüm mantığın yeniden yapılması gerekiyor. Oldukça kafa karıştırıcı bir şekilde yapıldı. Ve muhtemelen bir başlangıç için nesneleri terk etmeye ve gösterge arabelleklerini çizmeye değer

Geçmişe (yani sıfır çubuğunun sağına) ilerlemem gerekiyor, ancak arabellekler aracılığıyla bunu nasıl yapacağımı anlamadım. Neden kafa karıştırıyor?.. Ben zaten böyle yazmaya alışık olsam da başkalarının okuması daha zor olabilir :)

PapaYozh :

İşte bana ne diyor:

2011.10.18 22:28:19 TEST__ EURGBP,H1: y=1 Zaman[y]=2011.08.04 08:00
2011.10.18 22:28:17 TEST__ EURGBP,H1: y=1 Zaman[y]=2011.08.03 08:00
2011.10.18 22:28:15 TEST__ EURGBP,H1: y=1 Zaman[y]=2011.08.02 08:00
2011.10.18 22:28:13 TEST__ EURGBP,H1: y=15 Zaman[y]=2011.08.01 08:00

kod:

Onlar. her şey yolunda gibi.

Hindiyi fırlattınız mı, MT'yi onunla kapattınız mı, sonra açtınız ve her şey yolunda mı gitti?

 

danışmanı düzeltmeye yardım et



avatar
5

Pliz, danışmanı düzeltmeye yardımcı olur. Bekleyen emri açar. 2 yeni sinyal girildikten sonra çalışmayan bekleyen bir emri silmem gerekiyor, vb.

örnek: 1 sinyal - bekleyen bir emir verilir

2-sinyal-sipariş de verilir

3-Sipariş verilir ve çalışmazsa 1 sipariş silinir.

EA 15. yarıda daha iyi çalışıyor.

Nasıl geliştirileceğine dair daha fazla fikir varsa, görmekten memnun olurum?

Danışmanı ekliyorum !!!!

Dosyalar:
main_1.ex4  7 kb
 
Solree :

Geçmişe (yani sıfır çubuğunun sağına) ilerlemem gerekiyor, ancak arabellekler aracılığıyla bunu nasıl yapacağımı anlamadım.

Hindiyi fırlattınız mı, MT'yi onunla kapattınız mı, sonra açtınız ve her şey yolunda mı gitti?


Bana "kapalı/açıldı"nın ne anlama geldiğini söyleyebilir misiniz?

MT'den "Dosya"->"Çıkış" üzerinden mi yoksa [X] tuşuna basarak mı çıktınız?

Eğer öyleyse, MT başlatıldığı anda geçmişin hiçbir parçası yoktur ve gösterge tamamlanmamış bir geçmiş üzerinde çalışır. Ve geçmiş yüklendiğinde, gösterge döngüsünü tamamlamış ve bir sonraki günü beklemektedir.

 
PapaYozh :

Neden gerekir? Open[i-2]'de neye sahip olduğunuzu nasıl bilebiliriz?

Muhtemelen kaçırdın. Lütfen tekrar bakın - alıntının üst kısmında istediğiniz şey belirtilmiş . Tekrar tekrar edeceğim:

i = 2, Açık[i-2] = 1.5715
14:21:15 2011.01.12 18:08 Cum Chekulaeva1 GBPUSD,M1: Düşük[i] = 1.5713, Düşük[i-1] = 1.5714
14:21:15 2011.01.12 18:08 Cum Chekulaeva1 GBPUSD,M1: Düşük[i+1] = 1.5714, Düşük[i-2] = 1.5715
14:21:15 2011.01.12 18:08 Cum Chekulaeva1 GBPUSD,M1: Açık[i-2] -(Düşük[i]-1*PointX) = 0.0004

14:21:15 2011.01.12 18:08 Cum Chekulaeva1 GBPUSD,M1: 1*PuanX = 0.0001

15-(13-1) 3 olmalı ve test cihazında 4 çıkıyor. Sorun ne?

 
PapaYozh :


Bana "kapalı/açıldı"nın ne anlama geldiğini söyleyebilir misiniz?

MT'den "Dosya"->"Çıkış" üzerinden mi yoksa [X] tuşuna basarak mı çıktınız?

Eğer öyleyse, MT başlatıldığı anda geçmişin hiçbir parçası yoktur ve gösterge tamamlanmamış bir geçmiş üzerinde çalışır. Ve geçmiş yüklendiğinde, gösterge döngüsünü tamamlamış ve bir sonraki günü beklemektedir.

Ooooooo! Bu soruna daha yakın. Onu bekletmek nasıl? Başlangıçta 1 tik için dondurmaya çalıştığımı hatırlıyorum ama ne yazık ki işe yaramadı. Başlangıçta sadece birkaç saniye duraklayın? Şimdi Sleep yapmaya çalışıyorum, bu işlevi tamamen görmezden geliyor ...
 
globad :
Merhaba! Arkadaşlar lütfen yardım edin! Eylemleri bir hesaptan veya terminalden diğerine tekrarlayan bir danışmana ihtiyacınız var. Bunları bir yerde duymuştum. Ayrıca, eylemleri sadece tekrarlamakla kalmayıp, tersini de yapması gerekir. Yani ilk hesaptan alım yapılırsa ikinci hesapta satış yapılması gerekir. Kısacası farklı hesaplarda loki yapmak. İki hesapla bir taşıma ticaretini keskinleştirmeye çalışıyorum. Belki hazır veya benzeri çalışan bir şey vardır. Şimdiden teşekkür ederim.
Buna anlaşma çoğaltıcı denir. Göreviniz için bir programcıdan sipariş vermek, bir yerden satın almaktan daha iyidir. Yaklaşık 2 yıl önce bir programcıya sordum - bir arama motoruna bakın -----------, hemen onun sitesine gideceksiniz. Burada ayrıca çoğaltıcı oluşturma deneyimi olan bir programcı da bulabilirsiniz .
 
Tünaydın.
Lütfen söyleyin, danışmanım aynı anda iki emir açar: ikisi birden alır veya ikisi birden satar. Biri sabit kar al, diğeri takip ediyor.
Bazen ikinci siparişin açılma zamanı olmaz.
Bu sorun nasıl çözülür?
İkinci bir terminal açmak sorunu çözecek ve her terminalde bir sipariş açacak mı?
Veya ikinci bir hesap açıp bir hesapta bir sipariş, ikincisini diğerinde mi açıyorsunuz?
 

Lütfen bana söyleyin ( veya daha önce bir yerde tartışılmışsa bağlantı verebilirsiniz) farklı göstergelerin iki satırının bir pencerede nasıl görüntüleneceğini

zaman dilimleri. Örneğin:

/-------------------------------------------------------------------+  
   switch ( Period ())   
        { 
         case      1 : PeriodSlow= PERIOD_M5 ; break ; //            для -Таймфрейма М1
         case      5 : PeriodSlow= PERIOD_M15 ; break ; //                -Таймфрейма М5
         case      15 : PeriodSlow= PERIOD_H1 ; break ; //                -Таймфрейма М15 т.е. след. период Н1
         case      30 : PeriodSlow= PERIOD_H1 ; break ; //                -Таймфрейма М30
         case      60 : PeriodSlow= PERIOD_H4 ; break ; //                -Таймфрейма H1
         case    240 : PeriodSlow= PERIOD_D1 ; break ; //                -Таймфрейма H4
         case    1440 : PeriodSlow= PERIOD_W1 ; break ; //                -Таймфрейма D1
         case 10080 : PeriodSlow= PERIOD_MN1 ; break ; //                -Таймфрейма W1
         case 43200 : PeriodSlow= PERIOD_W1 ; break ; //                -Таймфрейма МN
        }                                    
//-------------------------------------------------------------------+ 
   PeriodFast = 0 ; 
   return ( 0 );
  }
//+------------------------------------------------------------------+
int start()
  {
   double MaSlow,MaFast; // SlowMa-MA большего периода, FastMa-MA текущего периода
   int limit, CountedBars= IndicatorCounted ();
   
   if (CountedBars> 0 ) CountedBars--;
   limit= Bars -CountedBars;
   if (limit>History) limit=History;
   
     for ( int i= 0 ; i<limit; i++)
     {
      MaSlow= iMA ( NULL ,PeriodSlow,MAPeriod, 0 , MODE_SMA , PRICE_HIGH ,i);      
      MaFast= iMA ( NULL ,PeriodFast,MAPeriod, 0 , MODE_SMA , PRICE_HIGH ,i); 
      LineSlow[i]=MaSlow;      
      LineFast[i]=MaFast; 
     } 
//---- done
     return ( 0 );
  }
//+------------------------------------------------------------------+

Bu durumda bir süre sonra güncelleme yapılırken çizgilerin göreli konumu değişir.

 

Print'te istek hakkında bir mesaj nasıl yazdırılır? Günlük mesajlarına örnek:

2011.10.19 13:04:11 '183927376': 0.01 EURGBP satın alma emri 0.8768 sl'de açılıyor: 0.0000 tp: 0.8822 başarısız oldu [Ticaret zaman aşımı]

2011.10.19 13:00:52 '183927376': işlemde istek

3.5 dakika içinde sunucuyla bağlantı olmadığı ortaya çıktı.

Tüm hata mesajları EA'mda görüntüleniyor. Ancak bu, danışmanın tepkisi olmadan kalıyor, ancak iletişim eksikliği zamanını saniyeler içinde düzeltmek istiyorum.

 
Stells :
Tünaydın.
Lütfen söyleyin, danışmanım aynı anda iki emir açar: ikisi birden alır veya ikisi birden satar. Biri sabit kar al, diğeri takip ediyor.
Bazen ikinci siparişin açılma zamanı olmaz.
Bu sorun nasıl çözülür?
İkinci bir terminal açmak sorunu çözecek ve her terminalde bir sipariş açacak mı?
Veya ikinci bir hesap açıp bir hesapta bir sipariş, ikincisini diğerinde mi açıyorsunuz?
Hala aynı anda değil, sırayla açılıyorlar. Neden önce "açacak vaktim yok"? Sipariş açılacak, ancak hepsi komisyoncu tarafından sipariş işleme hızına bağlı. Bazen birkaç dakika sürebilir, bir önceki gönderime bakın. 3.5 dakika boyunca komisyoncu ile bağlantı yoktu ve kimse bunun ne zaman olacağını tahmin edemez - sipariş sırasını verirken veya kurulumdan sonra.
Neden: