"Yeni Başlayanlar için MQL5’te Uzman Danışman Yazmak İçin Adım Adım Açıklamalı Kılavuz" makalesi için tartışma - sayfa 10

[Silindi]  
pisenysh:

derlerken bir hata veriyor

'OrderSend'in dönüş değeri kontrol edilmelidir my_first_ea.mq5 211 10

Yanlış olan ne olabilir?

Bu kesin bir hata mı?
 
pisenysh:

derlerken bir hata veriyor

'OrderSend'in dönüş değeri kontrol edilmelidir my_first_ea.mq5 211 10

ne yanlış olabilir?

Derleyici, işlem fonksiyonunun yürütülmesinin sonucunun işlenmesi gerektiğini söylüyor.
 

Merhaba! Size bir soru sorabilir miyim? Uzman Danışman saniyelere kadar doğrulukla ticaret yapıyor mu? Yani, sadece belirli bir saat ve dakikada değil, aynı zamanda belirli bir saniyede de işlem açıp kapatmam gerekirse?

 
Grenjohn:

Merhaba! Size bir soru sorabilir miyim? Uzman Danışman saniyelere kadar doğrulukla ticaret yapıyor mu? Yani, işlemleri sadece belirli bir saat ve dakikada değil, aynı zamanda belirli bir saniyede açıp kapatmam gerekirse?

Bir dakika yüz saniyeden oluşur - hangisini istiyorsunuz?
 
server:
Bir dakika yüz saniyeden oluşur - hangisini istersiniz?
Bu yıllıklarda var ;)
 

Anlamıyorum!? Bir dakika 60 saniyeden oluşur. Uzman Danışmanı örneğin 12: 30'da bir pozisyon açacak şekilde programlıyorum ve 45 saniyede tetiklemesine ihtiyacım var. 12: 30'u ayarladığımda her şey çalışıyor, anlaşma açılıyor, ancak saniye eklemeye çalıştığımda çalışmıyor !!!?

 

İşte kodun kendisi:

extern int tp = 1000;

extern int sl = 1000;
extern double Lots = 0.01;
int bilet;
int start()
{
if(OrdersTotal( )==0 && Hour ( )==23 && Minute ( )==02 && Seconds ( )==30)
{

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,0,Bid-sl*Point,Bid+tp*Point,"",123,0,Red);
}
if (OrdersTotal( )==1 && Hour( )==23 && Minute( )==03 && Seconds ( )==30))
{
OrderSelect(ticket ,SELECT_BY_TICKET,MODE_TRADES);
OrderClose(bilet,Lotlar,Teklif,20,Yeşil);
}
}
 
Grenjohn:

İşte kodun kendisi:

extern int tp = 1000;

extern int sl = 1000;
extern double Lots = 0.01;
int bilet;
int start()
{
if(OrdersTotal( )==0 && Hour ( )==23 && Minute ( )==02 && Seconds ( )==30)
{

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,0,Bid-sl*Point,Bid+tp*Point,"",123,0,Red);
}
if (OrdersTotal( )==1 && Hour( )==23 && Minute( )==03 && Seconds ( )==30))
{
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES);
OrderClose(bilet,Lotlar,Teklif,20,Yeşil);
}
}
Gy. Seconds() >= 30 kontrolünü ayarlayın, çünkü bir saniye hızla geçebilir ve bu süre içinde tek bir tik bile gelmeyebilir. Not: Kodun kod stili (SRC düğmesi) ile stilize edilmesi arzu edilir.
 
Evet şimdi çalışıyor, çok teşekkür ederim! Asıl sorun saniyenin hızıydı, tikin içinden geçecek zamanı yoktu.
 

Bana daha fazlasını söyleyebilir misiniz lütfen! Uzman Danışmanlarda pozisyonları, normal bir zamanlayıcı gibi, tiklerden bağımsız olarak saniye cinsinden açıkça açmak ve kapatmak mümkün müdür? Yani, saat 12:52:25 ise, pozisyon açılacak ve kapanışta olduğu gibi yeni bir tik beklemeyecek mi?