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

 

Birisi bana mevcut (vurgulanan) grafik penceresinin sembolünü açık olanlardan nasıl bulacağımı söyleyebilir mi, komut dosyasının/danışmanın eklendiği pencereden değil, tam olarak terminalde şu anda aktif olandan (odakta söyledikleri gibi) )

 
harbor :

Birisi bana mevcut (vurgulanan) grafik penceresinin sembolünü açık olanlardan nasıl bulacağımı söyleyebilir mi, komut dosyasının/danışmanın eklendiği pencereden değil, tam olarak terminalde şu anda aktif olandan (odakta söyledikleri gibi) )

Arsa pencerelerinin Z-dizisinin en üstündeki pencereyi ele alın. Ardından başlığı ondan alın ve ayrıştırın.
 
Zhunko :
Arsa pencerelerinin Z-dizisinin en üstündeki pencereyi ele alın. Ardından başlığı ondan alın ve ayrıştırın.


Eh, mql4'te tutamaçlı tek bir işlev var gibi görünüyor   Pencere tutacağı

ama bir dll yapıyorum, bir şekilde winapi üzerinden yapmak mümkün mü? tanıtıcı tarafından GetWindowText gibi bir işlev var

tanımlayıcı nasıl alınır?

 
harbor :


Eh, mql4'te tutamaçlı tek bir işlev var gibi görünüyor   Pencere tutacağı

ama bir dll yapıyorum, bir şekilde winapi üzerinden yapmak mümkün mü? tanıtıcı tarafından GetWindowText gibi bir işlev var

tanımlayıcı nasıl alınır?

Bu nedenle, Z-sırasının en üstündeki pencere tanıtıcısını almanız gereken DLL içindedir. Bir MDI istemcisi var. Grafik pencerelerinin ebeveynidir. Orada ve bu tanımlayıcıyı alın.
 
Söyle canım, 2 işlem farklı olursa, örneğin EURJPY ve USDJPY eşit lotlarda (ve eşit değilse) ne olacak? Herhangi biri gelebilir mi (bir hesaplama seçeneğine ihtiyacınız var)
 
YOUNGA :
Söyle canım, 2 işlem farklı olursa, örneğin EURJPY ve USDJPY eşit lotlarda (ve eşit değilse) ne olacak? Herhangi biri gelebilir mi (bir hesaplama seçeneğine ihtiyacınız var)
Neyin hesaplanması?
 
YOUNGA :
Söyle canım, 2 işlem farklı olursa, örneğin EURJPY ve USDJPY eşit lotlarda (ve eşit değilse) ne olacak? Herhangi biri gelebilir mi (bir hesaplama seçeneğine ihtiyacınız var)

Burada EUR ve USD temel para birimidir , lot içinde hesaplanır. Onlar. ilk çift için 1 lot 100.000 EUR, ikincisi için - 100.000 USD, her iki durumda da yen karşılığında alınır/satılır.
 


Şimdi açıklayacağım, her bir EURJPY ve USDJPY çifti için bir lot açarsanız, o zaman çok fazla EURUSD almanız gerekir, ardından eurodollar fiyatındaki 1 puanlık değişiklik için sentetik "eurodollar" a bir şey olması gerekir ( EURJPY / USDJPY ) korelasyonlu oldukları için

 

Aşağıdaki fikri kodlamaya çalışıyorum.

Saat 01.00.00 ise. veya 03.00.00.

Siparişi aç

Zamanın geri kalanında, bir sipariş açın .

SORUN Program derleniyor, 01.00.00'da bir alış işlemi açıyor, ancak || sembolünü okumuyor. ve arkasından ne gelir.

if(Hour( )==01 && Dakika( )==00 && Saniye()==00 ||Saat( )==03 && Dakika( )==00 && Saniye()==00 )

Onlar. 03.00.00'da test eden kişi satın almak için değil, satmak için bir anlaşma açar.

Diğer tüm işlemler koda uygun olarak açılır.

   if (Hour( )== 01 && Minute( )== 00 && Seconds()== 00 ||Hour( )== 03 && Minute( )== 00 && Seconds()== 00 )
 
    
   {  
       if (Bid==Price  )
     
   int Ticket= OrderSend ( Symbol (),OP_BUY, 0.1 ,Ask, 3 ,SL,TP );
  }
   else
  {
  SL= NormalizeDouble (Price+ 3000 * Point , Digits );         
  TP= NormalizeDouble (Price- 100 * Point , Digits );
  Ticket= OrderSend ( Symbol (),OP_SELL, 0.1 ,Bid, 3 ,SL,TP );
 }
 }
 }

Делал два заголовка if ...... вообще не открывает сделки

 if (Hour( )== 01 && Minute( )== 00 && Seconds()== 00 )
   if (Hour( )== 03 && Minute( )== 00 && Seconds()== 00 )
    
   {  
       if (Bid==Price  )
     
   int Ticket= OrderSend ( Symbol (),OP_BUY, 0.1 ,Ask, 3 ,SL,TP );
  }
   else
  {
  SL= NormalizeDouble (Price+ 3000 * Point , Digits );         
  TP= NormalizeDouble (Price- 100 * Point , Digits );
  Ticket= OrderSend ( Symbol (),OP_SELL, 0.1 ,Bid, 3 ,SL,TP );
 }
 }
 }
Подскажите - как сделать так что бы в 03.00.00. открывалась сделка на покупку? Спасибо
 
solnce600 :

SORUN Program derleniyor, 01.00.00'da bir alış işlemi açıyor, ancak || sembolünü okumuyor. ve arkasından ne gelir.

if(Hour( )==01 && Dakika( )==00 && Saniye()==00 ||Saat( )==03 && Dakika( )==00 && Saniye()==00 )

Onlar. 03.00.00'da test eden kişi satın almak için değil, satmak için bir anlaşma açar.

Diğer tüm işlemler koda uygun olarak açılır.


Pekala, yeni başlayanlar için, gerektiğinde parantez takmaya alışın. Bunun gibi bir şey:

 if ((Hour( )== 01 && Minute( )== 00 && Seconds()== 00 ) || (Hour( )== 03 && Minute( )== 00 && Seconds()== 00 ))
Genel olarak, sabit bir değil, bir zaman aralığınız olmalıdır. değerler. Mantığınız hiç doğru değil. 1 saat VEYA 3 saat değil, 1 saatten 3 saate!!!
Neden: