Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Dediğiniz gibi derleyici yemin ediyor bu seçeneğe getirdim.
Ticket= OrderSend ( NULL , OP_BUY ,Lot, Ask ,slippage, 0 , 0 , NULL ,magic, 0 ,Blue);
if (!Ticket> 0 ) Print ( GetLastError ());
else
{
if ( OrderSelect (Ticket, SELECT_BY_TICKET , MODE_TRADES )== true )
if (( OrderMagicNumber ()==magic) && ( OrderSymbol ()== Symbol ()))
{
TP= NormalizeDouble ( Bid +TakeProfit* Point , Digits );
bool modify= OrderModify ( OrderTicket (), OrderOpenPrice (),TP, 0 , 0 );
return ;
}
}
Çalışmıyor.
Dediğiniz gibi derleyici yemin ediyor bu seçeneğe getirdim.
Ticket= OrderSend ( NULL , OP_BUY ,Lot, Ask ,slippage, 0 , 0 , NULL ,magic, 0 ,Blue);
if (!Ticket> 0 ) Print ( GetLastError ());
else
{
if ( OrderSelect (Ticket, SELECT_BY_TICKET , MODE_TRADES )== true )
if (( OrderMagicNumber ()==magic) && ( OrderSymbol ()== Symbol ()))
{
TP= NormalizeDouble ( Bid +TakeProfit* Point , Digits );
bool modify= OrderModify ( OrderTicket (), OrderOpenPrice (),TP, 0 , 0 );
return ;
}
}
Çalışmıyor.
Şimdi kodunuza bir göz atalım:
if ( ! Ticket > 0 ) Print ( GetLastError ()) --- bilet bir tamsayıdır, "2354865" gibi bir şeydir. Şimdi soru şudur: bir tamsayı ( ! 2354865 ) olamaz mı Bir tamsayı "> 0"dan büyük veya "< 0"dan küçük olabilir. Bu bool değeri yanlış/doğru olabilir ( ! )
Daha sonra, işte bu yapı: if ( OrderSelect ( Ticket , SELECT_BY_TICKET , MODE_TRADES )== true ) --- parametreleri bilete göre yineler ve belirli bir bilete bakıyorsanız, ikisini de kontrol etmenin bir anlamı yoktur. onun büyüsü veya sembolü, yani bu açıkça gereksiz: if (( OrderMagicNumber ()==magic) && ( OrderSymbol ()== Symbol ()))
Ve son şey: matematiksel problemlerin sırasını açıkça belirtmek için bu tür yapıları parantez içinde almak daha iyidir: NormalizeDouble ( Bid + ( TakeProfit* Point ) , Digits );
Ve son olarak: matematiksel problemlerin sırasını açıkça belirtmek için bu tür yapıları parantez içinde almak daha iyidir: NormalizeDouble ( Bid + ( TakeProfit* Point ) , Digits );Hayır, parantez olmadan da mümkündür. Bu, miktarın çarpılması gerektiğinde, parantezler gereklidir.
D1 periyodu ile 0 bar'lık açılma zamanının değerini alabilir + saniye sayısını ekleyebilir,
durumda, ilk satırdaki alınan zamanla şimdiki zamanı karşılaştırın
bekleyen bir siparişe, siparişin ömrü boyunca birkaç saniye koyabilirsiniz.
Kod konusunda yardım edin, danışman tüm çubuklardan geçer, son 200 çubuktan nasıl geçilir! teşekkürler
for (i= 1 ; i<k; i++)
Sağlayıcı_Sinyal
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
Yeni Başlayanlardan Sorular
Sağlayıcı_Sinyal , 2016.11.09 18:38
EA'daki tüm siparişler Cuma akşamı nasıl kapatılır? Hafta sonu gitmemek için.
DayOfWeek() işlevini buldum.
deneme yazabilirsin
{
//
}
ama zamanında yazmak için ne çek. Örneğin, 22:00 ne olurdu?
Sağlayıcı_Sinyal
if ( Hour ()==St_Hour)
Kod konusunda yardım edin, danışman tüm çubuklardan geçer, son 200 çubuktan nasıl geçilir! teşekkürler
for (i= 1 ; i<k; i++)
Merhaba, yardım edin.
Üç çubukta arabellek doldurulmazsa, arabelleği doldururum.
int BarCount=3;
BER=true;
for(int il=1;il<=BarCount;il++)
{
if(BufferPointUp[il]!= EMPTY_VALUE){BER=false;break;}
}
if(BER) BufferPointUp[i]=high[i];
Tüm çubuklarda ayrım gözetmeksizin doldurulmuş.
Ama yaparsam sorun olmaz
Bu kontrol bir döngüde nasıl yapılır?
if ( Hour ()==St_Hour)