Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 1132
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
Yardımın bir yerinde, geliştiriciler hiçbir siparişin garanti edilmediğini bildirdi.
Bilete göre, her zaman bir düzen vardır. Daha sonraki bir siparişin bileti asla önceki bir siparişten daha az olmayacaktır ( açılış saatine göre).
Ve kapatılmamış siparişler arasında arama yaparsanız, o zaman basitçe sırayla - 0 seri numarasıyla - en eski sipariş ve OrdersTotal()-1 numarasıyla en son sipariş (yine açılış saatine göre) dikkate alınmadan olacaktır. tür.
Kapalı siparişlerin geçmişinde, evet, ayrıca terminal penceresindeki geçmiş sekmesinde sıralamaya da bağlıdır.
Aramak zorunda kaldım. MQL5 yardımında bulamadım , MQL4 için OrderSelect yardımında buldum:
"SELECT_BY_POS parametresini kullanarak sırayla emir seçerken , bilgi işlem sunucusundan geldiği sıraya göre verilir. Alınan emir listesinin sıralanması garanti edilmez."
Aslında kullandığım listelerin bilet numarasına göre sıralanıp sıralanmadığını sistematik olarak kontrol ederim. Onun yokluğu vakası yoktu. Ancak sertifikayla da tartışamazsınız, tartışma yok. Hiçbir şekilde hayır...
Aramak zorunda kaldım. MQL5 yardımında bulamadım , MQL4 için OrderSelect yardımında buldum:
"SELECT_BY_POS parametresini kullanarak sırayla emir seçerken , bilgi işlem sunucusundan geldiği sıraya göre verilir. Alınan emir listesinin sıralanması garanti edilmez."
Aslında kullandığım listelerin bilet numarasına göre sıralanıp sıralanmadığını sistematik olarak kontrol ederim. Onun yokluğunun hiçbir örneği yoktu. Ancak sertifikayla da tartışamazsınız, tartışma yok. Hiçbir şekilde hayır...
"hiçbiri" ne anlama geliyor? Bilete göre sırala - her zaman bir düzen olacak ve belgelerde herhangi bir çelişki yok, bilete göre değil, seri numarasına göre sıralama hakkında yazıyor, bunlar farklı şeyler.
Bu kodu çalıştırın ve dergiyi okuyun
void OnTick ()
{
//--
if (flag)
{
for ( int i= 0 ; i< OrdersTotal (); i++)
{
if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ))
{
Print (i, " = " , OrderOpenTime ());
}
}
flag= false ;
}
//-
}
Ayrıca başka bir sorunla karşılaştım! Kesinlikle yargılama, 2-3 hafta dil çalışıyorum, belki sadece aptalım!
Danışmanın görevi, hesaptaki serbest marj belirli bir değer kattıysa, tüccarı her 4 saatte bir posta yoluyla bilgilendirmektir.
Mesajın konusuna brokerın ve işlem gören çiftin adını yazmanız ve mesajın gövdesine "Tehlike! Düşüş izin verilen değeri aştı. Gerekli önlemleri alın" yazmanız gerekir.
Derleyici yemin ediyor, İngilizce ile arkadaş değilim ve hatanın ne olduğunu anlayamıyorum!
double Sag;
void OnTick ()
{
Sag = NormalizeDouble ( 100 - 100 *( AccountInfoDouble ( ACCOUNT_FREEMARGIN )/ AccountInfoDouble ( ACCOUNT_BALANCE )), 1 ); //находим процент просадки и округляем до 1 знака
if (Sag > MessageMail && iVolume ( NULL , PERIOD_H4 , 0 )< 3 ) //если просадка больше заданного и начата новая свеча на 4ч таймфрейме
{
Alert ( Symbol (), ": Просадка = " , Sag, " % " , " > " , MessageMail, " % " ); //вывести предупреждение в терминале
//Сюда нужно вставить команду SendMail для отправки сообщения, а что и как не понятно
// пробовал bool SendMail( AccountInfoString(ACCOUNT_COMPANY)|Symbol, "Опасность! Просадка привысила допустимое значение. Примите необходимые меры")
//что то не выходит
}
}
Not: Belki genel olarak böyle bir görev için daha basit bir çözüm vardır, ancak şimdiye kadar sadece bu şekilde görüyorum)
Ayrıca başka bir sorunla karşılaştım! Kesinlikle yargılama, 2-3 hafta dil çalışıyorum, belki sadece aptalım!
Danışmanın görevi, hesaptaki serbest marj belirli bir değer kattıysa, tüccarı her 4 saatte bir posta yoluyla bilgilendirmektir.
Mesajın konusuna brokerın ve işlem gören çiftin adını yazmanız ve mesajın gövdesine "Tehlike! Düşüş izin verilen değeri aştı. Gerekli önlemleri alın" yazmanız gerekir.
Derleyici yemin ediyor, İngilizce ile arkadaş değilim ve hatanın ne olduğunu anlayamıyorum!
double Sag;
void OnTick ()
{
Sag = NormalizeDouble ( 100 - 100 *( AccountInfoDouble ( ACCOUNT_FREEMARGIN )/ AccountInfoDouble ( ACCOUNT_BALANCE )), 1 ); //находим процент просадки и округляем до 1 знака
if (Sag > MessageMail && iVolume ( NULL , PERIOD_H4 , 0 )< 3 ) //если просадка больше заданного и начата новая свеча на 4ч таймфрейме
{
Alert ( Symbol (), ": Просадка = " , Sag, " % " , " > " , MessageMail, " % " ); //вывести предупреждение в терминале
//Сюда нужно вставить команду SendMail для отправки сообщения, а что и как не понятно
// пробовал bool SendMail( AccountInfoString(ACCOUNT_COMPANY)|Symbol, "Опасность! Просадка привысила допустимое значение. Примите необходимые меры")
//что то не выходит
}
}
Not: Belki genel olarak böyle bir görev için daha basit bir çözüm vardır, ancak şimdiye kadar sadece bu şekilde görüyorum)
Günah yoktur, yemin ettiği şeydir.
Hangi derleyici hataları
prıvet .podskajite pojalusta pochemu na demo schete ne mogu otkrıt zdelkı